refreshed apps/configure button, added search button

- configure button now has a pressed state (as
  do the other two)
- also added a cast to getX() from float->int
  because of changes in the view property code

Change-Id: I57dc6e44838f4f4354f8977a3b542e93384b3d7d
This commit is contained in:
Michael Jurka 2010-08-03 13:53:20 -07:00
parent 2e9934ecb0
commit 2c3af5ffb2
13 changed files with 121 additions and 27 deletions

View File

@ -0,0 +1,20 @@
<?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:drawable="@drawable/all_apps_button_normal" />
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -0,0 +1,20 @@
<?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/configure_button_pressed" />
<item android:drawable="@drawable/configure_button_normal" />
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -0,0 +1,20 @@
<?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/search_button_pressed" />
<item android:drawable="@drawable/search_button_normal" />
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -45,30 +45,38 @@
<include android:id="@+id/cell5" layout="@layout/workspace_screen" />
</com.android.launcher2.Workspace>
<ImageView
android:id="@+id/search_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/search_button"
android:onClick="onClickSearchButton"
android:focusable="true"
android:clickable="true"
android:layout_gravity="top|left"/>
<RelativeLayout
android:id="@+id/all_apps_button_cluster"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|right">
<com.android.launcher2.HandleView
style="@style/HotseatButton"
android:id="@+id/all_apps_button"
android:layout_height="@dimen/button_bar_height"
android:layout_width="@dimen/button_bar_height"
android:src="@drawable/all_apps_button"
launcher:direction="horizontal" />
<ImageView
android:id="@+id/add_button"
android:id="@+id/configure_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/all_apps_button"
android:src="@drawable/configure_button"
android:layout_centerVertical="true"
android:scaleType="center"
android:src="@drawable/add_button"
android:onClick="onClickConfigureButton"
android:focusable="true"
android:clickable="true" />
<ImageView
android:id="@+id/all_apps_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/configure_button"
android:src="@drawable/all_apps_button"
android:onClick="onClickAddButton"
android:onClick="onClickAllAppsButton"
android:focusable="true"
android:clickable="true" />
<com.android.launcher2.DeleteZone
@ -76,7 +84,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/delete_zone_padding"
android:layout_toRightOf="@id/all_apps_button"
android:layout_toRightOf="@id/configure_button"
android:scaleType="center"
android:src="@drawable/delete_zone_selector"

View File

@ -34,8 +34,8 @@ import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.Intent.ShortcutIconResource;
import android.content.IntentFilter;
import android.content.Intent.ShortcutIconResource;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
@ -68,12 +68,12 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnLongClickListener;
import android.view.ViewGroup;
import android.view.WindowManager;
import android.view.View.OnLongClickListener;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationUtils;
import android.view.animation.Animation.AnimationListener;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText;
import android.widget.ImageView;
@ -765,10 +765,13 @@ public final class Launcher extends Activity
DeleteZone deleteZone = (DeleteZone) dragLayer.findViewById(R.id.delete_zone);
mDeleteZone = deleteZone;
mHandleView = (HandleView) findViewById(R.id.all_apps_button);
View handleView = findViewById(R.id.all_apps_button);
if (handleView != null && handleView instanceof HandleView) {
// we don't use handle view in xlarge mode
mHandleView.setLauncher(this);
mHandleView.setOnClickListener(this);
mHandleView.setOnLongClickListener(this);
}
WidgetChooser widgetChooser = (WidgetChooser) findViewById(R.id.widget_chooser);
if (widgetChooser != null) {
@ -817,7 +820,7 @@ public final class Launcher extends Activity
deleteZone.setDragController(dragController);
int deleteZoneHandleId;
if (LauncherApplication.isScreenXLarge()) {
deleteZoneHandleId = R.id.add_button;
deleteZoneHandleId = R.id.configure_button;
} else {
deleteZoneHandleId = R.id.all_apps_button_cluster;
}
@ -1593,15 +1596,38 @@ public final class Launcher extends Activity
}
/**
* Event handler for the "plus" button that appears on the home screen, which
* Event handler for the search button
*
* @param v The view that was clicked.
*/
public void onClickSearchButton(View v) {
Intent i = new Intent(SearchManager.INTENT_ACTION_GLOBAL_SEARCH);
View button = findViewById(R.id.search_button);
i.setSourceBounds(
new Rect(button.getLeft(), button.getTop(), button.getRight(), button.getBottom()));
startActivity(i);
}
/**
* Event handler for the "gear" button that appears on the home screen, which
* enters home screen customization mode.
*
* @param v The view that was clicked.
*/
public void onClickAddButton(View v) {
public void onClickConfigureButton(View v) {
addItems();
}
/**
* Event handler for the "grid" button that appears on the home screen, which
* enters all apps mode.
*
* @param v The view that was clicked.
*/
public void onClickAllAppsButton(View v) {
showAllApps(true);
}
void startActivitySafely(Intent intent, Object tag) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try {

View File

@ -720,8 +720,8 @@ public class Workspace extends ViewGroup
for (int i = 0; i < screenCount; i++) {
final View child = getChildAt(i);
if (child.getVisibility() != View.GONE) {
final int childX = child.getX();
final int childY = child.getY();
final int childX = (int)child.getX();
final int childY = (int)child.getY();
child.layout(childX, childY,
childX + child.getMeasuredWidth(), childY + child.getMeasuredHeight());
}