summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/layout-xlarge-land/all_apps_tabbed.xml1
-rw-r--r--res/layout-xlarge-land/customization_drawer.xml2
-rw-r--r--res/layout-xlarge-land/launcher.xml (renamed from res/layout-xlarge/launcher.xml)0
-rw-r--r--res/layout-xlarge-port/all_apps_tabbed.xml5
-rw-r--r--res/layout-xlarge-port/customization_drawer.xml6
-rw-r--r--res/layout-xlarge-port/launcher.xml155
-rw-r--r--res/values/strings.xml2
-rw-r--r--src/com/android/launcher2/AllAppsTabbed.java3
-rw-r--r--src/com/android/launcher2/Launcher.java3
-rw-r--r--src/com/android/launcher2/PagedView.java12
-rw-r--r--src/com/android/launcher2/Workspace.java6
11 files changed, 184 insertions, 11 deletions
diff --git a/res/layout-xlarge-land/all_apps_tabbed.xml b/res/layout-xlarge-land/all_apps_tabbed.xml
index 4f573f8a8..3a07b9543 100644
--- a/res/layout-xlarge-land/all_apps_tabbed.xml
+++ b/res/layout-xlarge-land/all_apps_tabbed.xml
@@ -16,7 +16,6 @@
<com.android.launcher2.AllAppsTabbed
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
- android:background="#30000000"
android:paddingTop="?android:attr/actionBarSize">
<LinearLayout
android:orientation="vertical"
diff --git a/res/layout-xlarge-land/customization_drawer.xml b/res/layout-xlarge-land/customization_drawer.xml
index 7ad913236..8c60e68ba 100644
--- a/res/layout-xlarge-land/customization_drawer.xml
+++ b/res/layout-xlarge-land/customization_drawer.xml
@@ -23,6 +23,6 @@
launcher:cellCountX="7"
launcher:cellCountY="4"
launcher:pageLayoutPaddingTop="10dp"
- launcher:pageLayoutPaddingBottom="15dp"
+ launcher:pageLayoutPaddingBottom="25dp"
launcher:pageLayoutPaddingLeft="20dp"
launcher:pageLayoutPaddingRight="20dp" /> \ No newline at end of file
diff --git a/res/layout-xlarge/launcher.xml b/res/layout-xlarge-land/launcher.xml
index 65f29df00..65f29df00 100644
--- a/res/layout-xlarge/launcher.xml
+++ b/res/layout-xlarge-land/launcher.xml
diff --git a/res/layout-xlarge-port/all_apps_tabbed.xml b/res/layout-xlarge-port/all_apps_tabbed.xml
index 2ff044792..6675adc55 100644
--- a/res/layout-xlarge-port/all_apps_tabbed.xml
+++ b/res/layout-xlarge-port/all_apps_tabbed.xml
@@ -16,7 +16,6 @@
<com.android.launcher2.AllAppsTabbed
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
- android:background="#30000000"
android:paddingTop="?android:attr/actionBarSize">
<LinearLayout
android:orientation="vertical"
@@ -37,8 +36,8 @@
android:id="@+id/all_apps_paged_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- launcher:cellCountX="7"
- launcher:cellCountY="4"
+ launcher:cellCountX="5"
+ launcher:cellCountY="7"
launcher:pageLayoutPaddingTop="10dp"
launcher:pageLayoutPaddingBottom="10dp"
launcher:pageLayoutPaddingLeft="0dp"
diff --git a/res/layout-xlarge-port/customization_drawer.xml b/res/layout-xlarge-port/customization_drawer.xml
index db264b228..20c207f42 100644
--- a/res/layout-xlarge-port/customization_drawer.xml
+++ b/res/layout-xlarge-port/customization_drawer.xml
@@ -20,9 +20,9 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
launcher:widgetCellCountX="12"
- launcher:cellCountX="7"
+ launcher:cellCountX="5"
launcher:cellCountY="4"
- launcher:pageLayoutPaddingTop="10dp"
- launcher:pageLayoutPaddingBottom="15dp"
+ launcher:pageLayoutPaddingTop="15dp"
+ launcher:pageLayoutPaddingBottom="25dp"
launcher:pageLayoutPaddingLeft="0dp"
launcher:pageLayoutPaddingRight="0dp" /> \ No newline at end of file
diff --git a/res/layout-xlarge-port/launcher.xml b/res/layout-xlarge-port/launcher.xml
new file mode 100644
index 000000000..a418b36aa
--- /dev/null
+++ b/res/layout-xlarge-port/launcher.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2010 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.
+-->
+
+<com.android.launcher2.DragLayer
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
+
+ android:id="@+id/drag_layer"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <include
+ layout="@layout/all_apps_tabbed"
+ android:id="@+id/all_apps_view"
+ android:layout_width="match_parent"
+ android:layout_height="1000dip"
+ android:layout_gravity="top"/>
+
+ <!-- The workspace contains 5 screens of cells -->
+ <com.android.launcher2.Workspace
+ android:id="@+id/workspace"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:paddingTop="?android:attr/actionBarSize"
+ launcher:defaultScreen="2"
+ launcher:cellCountX="8"
+ launcher:cellCountY="7"
+ launcher:pageSpacing="64dip">
+
+ <include android:id="@+id/cell1" layout="@layout/workspace_screen" />
+ <include android:id="@+id/cell2" layout="@layout/workspace_screen" />
+ <include android:id="@+id/cell3" layout="@layout/workspace_screen" />
+ <include android:id="@+id/cell4" layout="@layout/workspace_screen" />
+ <include android:id="@+id/cell5" layout="@layout/workspace_screen" />
+ </com.android.launcher2.Workspace>
+
+ <RelativeLayout
+ android:id="@+id/all_apps_button_cluster"
+ android:layout_width="fill_parent"
+ android:layout_height="?android:attr/actionBarSize"
+ android:layout_gravity="top">
+
+ <ImageView
+ android:id="@+id/search_button"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_gravity="left"
+ android:layout_marginLeft="@dimen/toolbar_button_spacing"
+
+ android:onClick="onClickSearchButton"
+ android:focusable="true"
+ android:clickable="true"/>
+
+ <ImageView
+ android:id="@+id/configure_button"
+ android:src="@drawable/configure_button"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_alignParentRight="true"
+ android:layout_marginLeft="@dimen/toolbar_button_spacing"
+ android:layout_marginRight="@dimen/toolbar_button_spacing"
+
+ android:onClick="onClickConfigureButton"
+ android:focusable="true"
+ android:clickable="true" />
+
+ <TextView
+ android:id="@+id/all_apps_button"
+ android:text="@string/all_apps_button_label"
+ android:background="@drawable/all_apps_button"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_toLeftOf="@id/configure_button"
+ android:layout_marginLeft="@dimen/toolbar_button_spacing"
+ android:layout_marginRight="@dimen/toolbar_button_spacing"
+ android:textSize="18dip"
+
+ android:onClick="onClickAllAppsButton"
+ android:focusable="true"
+ android:clickable="true" />
+
+ <!-- The button to bring up the installed app market.
+ The icon for this button will be dynamically set. -->
+ <ImageView
+ android:id="@+id/market_button"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_alignLeft="@id/all_apps_button"
+
+ android:onClick="onClickAppMarketButton"
+ android:focusable="false"
+ android:clickable="false"
+ android:visibility="gone"/>
+
+ <com.android.launcher2.DeleteZone
+ android:id="@+id/delete_zone"
+ android:src="@drawable/delete_zone_selector"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_alignLeft="@id/all_apps_button"
+
+ android:visibility="gone"
+ launcher:direction="horizontal" />
+
+ <com.android.launcher2.ApplicationInfoDropTarget
+ android:id="@+id/info_button"
+ android:src="@drawable/info_button"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_alignLeft="@id/configure_button"
+
+ android:visibility="gone"
+ android:focusable="true"
+ android:clickable="true" />
+
+ </RelativeLayout>
+
+ <TabHost
+ android:id="@android:id/tabhost"
+ android:layout_width="match_parent"
+ android:layout_height="550dip"
+ android:layout_gravity="bottom">
+ <LinearLayout
+ android:orientation="vertical"
+ android:background="#40000000"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+ <TabWidget
+ android:id="@android:id/tabs"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center_horizontal"
+ android:tabStripEnabled="false"
+ android:paddingBottom="10dp" />
+ <FrameLayout
+ android:id="@android:id/tabcontent"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+ </FrameLayout>
+ </LinearLayout>
+ </TabHost>
+</com.android.launcher2.DragLayer>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index bcb7e9a6e..4f74b5985 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -69,7 +69,7 @@
<!-- Customization Drawer -->
<!-- The format string for the dimensions of a widget in the drawer -->
- <string name="widget_dims_format">%1$d x %2$d</string>
+ <string name="widget_dims_format" translatable="false">%1$d x %2$d</string>
<!-- Folders -->
<skip />
diff --git a/src/com/android/launcher2/AllAppsTabbed.java b/src/com/android/launcher2/AllAppsTabbed.java
index 368306f50..aff8ddd20 100644
--- a/src/com/android/launcher2/AllAppsTabbed.java
+++ b/src/com/android/launcher2/AllAppsTabbed.java
@@ -127,6 +127,9 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
}
});
+ // TEMP: Working around a bug in tab host where the current tab does not initially have a
+ // highlight on it by selecting something else, then selecting the actual tab we want..
+ setCurrentTab(1);
setCurrentTab(0);
// It needs to be INVISIBLE so that it will be measured in the layout.
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 989ee2517..d7c2f5bb5 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -350,6 +350,9 @@ public final class Launcher extends Activity
}
});
+ // TEMP: Working around a bug in tab host where the current tab does not initially have
+ // a highlight on it by selecting something else, then selecting the actual tab we want..
+ mHomeCustomizationDrawer.setCurrentTab(1);
mHomeCustomizationDrawer.setCurrentTab(0);
}
setupViews();
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 83320533f..97bbbdff4 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -406,6 +406,14 @@ public abstract class PagedView extends ViewGroup {
int halfChildWidth = (childWidth / 2);
int childCenter = getChildOffset(i) + halfChildWidth;
+ // On the first layout, we may not have a width nor a proper offset, so for now
+ // we should just assume full page width (and calculate the offset according to
+ // that).
+ if (childWidth <= 0) {
+ childWidth = getMeasuredWidth();
+ childCenter = (i * childWidth) + (childWidth / 2);
+ }
+
int d = halfChildWidth;
int distanceFromScreenCenter = childCenter - screenCenter;
if (distanceFromScreenCenter > 0) {
@@ -419,6 +427,9 @@ public abstract class PagedView extends ViewGroup {
}
d += mPageSpacing;
+ // Preventing potential divide-by-zero
+ d = Math.max(1, d);
+
float dimAlpha = (float) (Math.abs(distanceFromScreenCenter)) / d;
dimAlpha = Math.max(0.0f, Math.min(1.0f, (dimAlpha * dimAlpha)));
float alpha = 1.0f - dimAlpha;
@@ -1237,6 +1248,7 @@ public abstract class PagedView extends ViewGroup {
// Load any pages that are necessary for the current window of views
loadAssociatedPages(mCurrentPage);
mDirtyPageAlpha = true;
+ updateAdjacentPagesAlpha();
requestLayout();
}
}
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index ac5c1b9d2..0d070488e 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -717,8 +717,10 @@ public class Workspace extends SmoothPagedView
finalAlpha = 0.0f;
extraShrinkFactor = 0.1f;
} else if (shrinkPosition == ShrinkPosition.SHRINK_TO_MIDDLE) {
- newY = screenHeight / 2 - scaledPageHeight / 2;
- finalAlpha = 1.0f;
+ newY = screenHeight / 2 - scaledPageHeight / 2;
+ finalAlpha = 1.0f;
+ } else if (shrinkPosition == ShrinkPosition.SHRINK_TO_TOP) {
+ newY = screenHeight / 10;
}
// We animate all the screens to the centered position in workspace