summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/AllAppsTabbed.java
diff options
context:
space:
mode:
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();
}
}