am d63458b3: Add pressed states for the all apps button and the home button.
Merge commit 'd63458b34c33c0701d8ce8920b3b77abc6ac0e0f' into eclair-mr2 * commit 'd63458b34c33c0701d8ce8920b3b77abc6ac0e0f': Add pressed states for the all apps button and the home button.
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 3.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2008 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_pressed="true" android:drawable="@drawable/all_apps_button_pressed" />
|
||||
<item android:state_focused="true" android:state_window_focused="true" android:drawable="@drawable/all_apps_button_pressed" />
|
||||
<item android:state_focused="true" android:state_window_focused="false" android:drawable="@drawable/all_apps_button_normal" />
|
||||
<item android:drawable="@drawable/all_apps_button_normal" />
|
||||
</selector>
|
||||
|
||||
+1
-1
@@ -301,7 +301,7 @@ void
|
||||
draw_home_button()
|
||||
{
|
||||
color(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
bindTexture(NAMED_PFTexLinear, 0, params->homeButtonId);
|
||||
bindTexture(NAMED_PFTexLinear, 0, state->homeButtonId);
|
||||
|
||||
float scale = 2.0f / SCREEN_WIDTH_PX;
|
||||
|
||||
|
||||
+1
-1
@@ -246,7 +246,7 @@ void
|
||||
draw_home_button()
|
||||
{
|
||||
color(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
bindTexture(NAMED_PFTexLinear, 0, params->homeButtonId);
|
||||
bindTexture(NAMED_PFTexLinear, 0, state->homeButtonId);
|
||||
|
||||
float scale = 2.0f / SCREEN_WIDTH_PX;
|
||||
|
||||
|
||||
+1
-1
@@ -233,7 +233,7 @@ void
|
||||
draw_home_button()
|
||||
{
|
||||
setColor(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
bindTexture(NAMED_PFTexLinear, 0, params->homeButtonId);
|
||||
bindTexture(NAMED_PFTexLinear, 0, state->homeButtonId);
|
||||
|
||||
float scale = 2.0f / SCREEN_WIDTH_PX;
|
||||
|
||||
|
||||
+1
-1
@@ -301,7 +301,7 @@ void
|
||||
draw_home_button()
|
||||
{
|
||||
color(1.0f, 1.0f, 1.0f, 1.0f);
|
||||
bindTexture(NAMED_PFTexLinear, 0, params->homeButtonId);
|
||||
bindTexture(NAMED_PFTexLinear, 0, state->homeButtonId);
|
||||
|
||||
float scale = 2.0f / SCREEN_WIDTH_PX;
|
||||
|
||||
|
||||
@@ -225,6 +225,8 @@ public class AllAppsView extends RSSurfaceView
|
||||
|
||||
if (y > mRollo.mTouchYBorders[mRollo.mTouchYBorders.length-1]) {
|
||||
mTouchTracking = TRACKING_HOME;
|
||||
mRollo.setHomeSelected(true);
|
||||
mRollo.mState.save();
|
||||
} else {
|
||||
mTouchTracking = TRACKING_FLING;
|
||||
|
||||
@@ -258,7 +260,8 @@ public class AllAppsView extends RSSurfaceView
|
||||
case MotionEvent.ACTION_MOVE:
|
||||
case MotionEvent.ACTION_OUTSIDE:
|
||||
if (mTouchTracking == TRACKING_HOME) {
|
||||
// TODO: highlight?
|
||||
mRollo.setHomeSelected(y > mRollo.mTouchYBorders[mRollo.mTouchYBorders.length-1]);
|
||||
mRollo.mState.save();
|
||||
} else if (mTouchTracking == TRACKING_FLING) {
|
||||
int rawX = (int)ev.getRawX();
|
||||
int rawY = (int)ev.getRawY();
|
||||
@@ -306,6 +309,8 @@ public class AllAppsView extends RSSurfaceView
|
||||
if (y > mRollo.mTouchYBorders[mRollo.mTouchYBorders.length-1]) {
|
||||
mLauncher.closeAllApps(true);
|
||||
}
|
||||
mRollo.setHomeSelected(false);
|
||||
mRollo.mState.save();
|
||||
}
|
||||
} else if (mTouchTracking == TRACKING_FLING) {
|
||||
mRollo.mState.newTouchDown = 0;
|
||||
@@ -533,7 +538,8 @@ public class AllAppsView extends RSSurfaceView
|
||||
private SimpleMesh mMesh;
|
||||
private SimpleMesh mMesh2;
|
||||
|
||||
private Allocation mHomeButton;
|
||||
private Allocation mHomeButtonNormal;
|
||||
private Allocation mHomeButtonPressed;
|
||||
|
||||
private Allocation[] mIcons;
|
||||
private int[] mIconIds;
|
||||
@@ -595,7 +601,6 @@ public class AllAppsView extends RSSurfaceView
|
||||
public int bubbleBitmapWidth;
|
||||
public int bubbleBitmapHeight;
|
||||
|
||||
public int homeButtonId;
|
||||
public int homeButtonWidth;
|
||||
public int homeButtonHeight;
|
||||
public int homeButtonTextureWidth;
|
||||
@@ -610,6 +615,7 @@ public class AllAppsView extends RSSurfaceView
|
||||
public int selectedIconIndex = -1;
|
||||
public int selectedIconTexture;
|
||||
public float zoomTarget;
|
||||
public int homeButtonId;
|
||||
|
||||
State() {
|
||||
mType = Type.createFromClass(mRS, State.class, 1, "StateClass");
|
||||
@@ -814,15 +820,19 @@ public class AllAppsView extends RSSurfaceView
|
||||
mParams.bubbleBitmapWidth = bubble.getBitmapWidth();
|
||||
mParams.bubbleBitmapHeight = bubble.getBitmapHeight();
|
||||
|
||||
mHomeButton = Allocation.createFromBitmapResource(mRS, mRes,
|
||||
R.drawable.home_button, Element.RGBA_8888(mRS), false);
|
||||
mHomeButton.uploadToTexture(0);
|
||||
mParams.homeButtonId = mHomeButton.getID();
|
||||
mHomeButtonNormal = Allocation.createFromBitmapResource(mRS, mRes,
|
||||
R.drawable.home_button_normal, Element.RGBA_8888(mRS), false);
|
||||
mHomeButtonNormal.uploadToTexture(0);
|
||||
mHomeButtonPressed = Allocation.createFromBitmapResource(mRS, mRes,
|
||||
R.drawable.home_button_pressed, Element.RGBA_8888(mRS), false);
|
||||
mHomeButtonPressed.uploadToTexture(0);
|
||||
mParams.homeButtonWidth = 76;
|
||||
mParams.homeButtonHeight = 68;
|
||||
mParams.homeButtonTextureWidth = 128;
|
||||
mParams.homeButtonTextureHeight = 128;
|
||||
|
||||
mState.homeButtonId = mHomeButtonNormal.getID();
|
||||
|
||||
mParams.save();
|
||||
mState.save();
|
||||
|
||||
@@ -1131,6 +1141,13 @@ public class AllAppsView extends RSSurfaceView
|
||||
mState.selectedIconIndex = -1;
|
||||
}
|
||||
|
||||
void setHomeSelected(boolean pressed) {
|
||||
if (pressed) {
|
||||
mState.homeButtonId = mHomeButtonPressed.getID();
|
||||
} else {
|
||||
mState.homeButtonId = mHomeButtonNormal.getID();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user