summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/AllAppsTabbed.java
diff options
context:
space:
mode:
authorWinson Chung <winsonc@google.com>2010-08-09 13:37:56 -0700
committerWinson Chung <winsonc@google.com>2010-08-16 15:50:40 -0700
commit321e9ee68848d9e782fd557f69cc070308ffbc9c (patch)
tree0b3d38f48a16e16147b18da62e1f6d32bd3089c6 /src/com/android/launcher2/AllAppsTabbed.java
parentf0d03e4e7fd8640b6b50e163c4f555d03b874ca6 (diff)
downloadandroid_packages_apps_Trebuchet-321e9ee68848d9e782fd557f69cc070308ffbc9c.tar.gz
android_packages_apps_Trebuchet-321e9ee68848d9e782fd557f69cc070308ffbc9c.tar.bz2
android_packages_apps_Trebuchet-321e9ee68848d9e782fd557f69cc070308ffbc9c.zip
Creating generic Workspace/CellLayout for paged views in Launcher.
Adding SimpleWorkspace, SimpleCellLayout and an AllApps implementation of the SimpleWorkspace. Making SimpleWorkspace support content with smaller dimensions than the workspace dimensions itself. Temporary change to AllApps tabs styling until we get new assets for tabs in general. Change-Id: Ibe3c56603223853d232816b6695e4ddd757857ba
Diffstat (limited to 'src/com/android/launcher2/AllAppsTabbed.java')
-rw-r--r--src/com/android/launcher2/AllAppsTabbed.java68
1 files changed, 45 insertions, 23 deletions
diff --git a/src/com/android/launcher2/AllAppsTabbed.java b/src/com/android/launcher2/AllAppsTabbed.java
index 7dbb1a5fa..0470cee3e 100644
--- a/src/com/android/launcher2/AllAppsTabbed.java
+++ b/src/com/android/launcher2/AllAppsTabbed.java
@@ -16,16 +16,20 @@
package com.android.launcher2;
-import com.android.launcher.R;
+import java.util.ArrayList;
import android.content.Context;
import android.content.res.Resources;
+import android.graphics.Color;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
+import android.widget.RelativeLayout;
import android.widget.TabHost;
+import android.widget.TabWidget;
+import android.widget.TextView;
-import java.util.ArrayList;
+import com.android.launcher.R;
/**
* Implements a tabbed version of AllApps2D.
@@ -39,7 +43,7 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
private static final String TAG_GAMES = "GAMES";
private static final String TAG_DOWNLOADED = "DOWNLOADED";
- private AllApps2D mAllApps2D;
+ private AllAppsPagedView mAllApps;
private Context mContext;
public AllAppsTabbed(Context context, AttributeSet attrs) {
@@ -49,18 +53,20 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
@Override
protected void onFinishInflate() {
+ // setup the tab host
+ setup();
+
try {
- mAllApps2D = (AllApps2D)findViewById(R.id.all_apps_2d);
- if (mAllApps2D == null) throw new Resources.NotFoundException();
+ mAllApps = (AllAppsPagedView) findViewById(R.id.all_apps_paged_view);
+ if (mAllApps == null) throw new Resources.NotFoundException();
} catch (Resources.NotFoundException e) {
Log.e(TAG, "Can't find necessary layout elements for AllAppsTabbed");
}
- setup();
- // This lets us share the same view between all tabs
+ // share the same AllApps workspace across all the tabs
TabContentFactory contentFactory = new TabContentFactory() {
public View createTabContent(String tag) {
- return mAllApps2D;
+ return mAllApps;
}
};
@@ -76,51 +82,67 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
label = mContext.getString(R.string.all_apps_tab_downloaded);
addTab(newTabSpec(TAG_DOWNLOADED).setIndicator(label).setContent(contentFactory));
+ // TEMP: just styling the tab widget to be a bit nicer until we get the actual
+ // new assets
+ TabWidget tabWidget = getTabWidget();
+ for (int i = 0; i < tabWidget.getChildCount(); ++i) {
+ RelativeLayout tab = (RelativeLayout) tabWidget.getChildTabViewAt(i);
+ TextView text = (TextView) tab.getChildAt(1);
+ text.setTextSize(20.0f);
+ text.setPadding(20, 0, 20, 0);
+ text.setShadowLayer(1.0f, 0.0f, 1.0f, Color.BLACK);
+ tab.setBackgroundDrawable(null);
+ }
+
setOnTabChangedListener(new OnTabChangeListener() {
public void onTabChanged(String tabId) {
String tag = getCurrentTabTag();
if (tag == TAG_ALL) {
- mAllApps2D.filterApps(AllApps2D.AppType.ALL);
+ mAllApps.setAppFilter(AllAppsPagedView.ALL_APPS_FLAG);
} else if (tag == TAG_APPS) {
- mAllApps2D.filterApps(AllApps2D.AppType.APP);
+ mAllApps.setAppFilter(ApplicationInfo.APP_FLAG);
} else if (tag == TAG_GAMES) {
- mAllApps2D.filterApps(AllApps2D.AppType.GAME);
+ mAllApps.setAppFilter(ApplicationInfo.GAME_FLAG);
} else if (tag == TAG_DOWNLOADED) {
- mAllApps2D.filterApps(AllApps2D.AppType.DOWNLOADED);
+ mAllApps.setAppFilter(ApplicationInfo.DOWNLOADED_FLAG);
}
}
});
setCurrentTab(0);
+
+ // It needs to be INVISIBLE so that it will be measured in the layout.
+ // Otherwise the animations is messed up when we show it for the first time.
+ setVisibility(INVISIBLE);
}
@Override
public void setLauncher(Launcher launcher) {
- mAllApps2D.setLauncher(launcher);
+ mAllApps.setLauncher(launcher);
}
@Override
public void setDragController(DragController dragger) {
- mAllApps2D.setDragController(dragger);
+ mAllApps.setDragController(dragger);
}
@Override
public void zoom(float zoom, boolean animate) {
// NOTE: animate parameter is ignored for the TabHost itself
setVisibility((zoom == 0.0f) ? View.GONE : View.VISIBLE);
- mAllApps2D.zoom(zoom, animate);
+ mAllApps.zoom(zoom, animate);
}
@Override
public void setVisibility(int visibility) {
super.setVisibility(visibility);
float zoom = visibility == View.VISIBLE ? 1.0f : 0.0f;
- mAllApps2D.zoom(zoom, false);
+ mAllApps.zoom(zoom, false);
}
@Override
public boolean isVisible() {
- return mAllApps2D.isVisible();
+ return mAllApps.isVisible();
}
@Override
@@ -130,31 +152,31 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
@Override
public void setApps(ArrayList<ApplicationInfo> list) {
- mAllApps2D.setApps(list);
+ mAllApps.setApps(list);
}
@Override
public void addApps(ArrayList<ApplicationInfo> list) {
- mAllApps2D.addApps(list);
+ mAllApps.addApps(list);
}
@Override
public void removeApps(ArrayList<ApplicationInfo> list) {
- mAllApps2D.removeApps(list);
+ mAllApps.removeApps(list);
}
@Override
public void updateApps(ArrayList<ApplicationInfo> list) {
- mAllApps2D.updateApps(list);
+ mAllApps.updateApps(list);
}
@Override
public void dumpState() {
- mAllApps2D.dumpState();
+ mAllApps.dumpState();
}
@Override
public void surrender() {
- mAllApps2D.surrender();
+ mAllApps.surrender();
}
}