diff options
author | Michael Kolb <kolby@google.com> | 2011-04-29 13:53:10 -0700 |
---|---|---|
committer | Michael Kolb <kolby@google.com> | 2011-04-29 13:53:10 -0700 |
commit | 5a4372f4638f9a1fc5c052d85977fbcc0c4d8c55 (patch) | |
tree | efd0998d1ac1a298a5a71fcc7ad5326abfc08592 /src/com | |
parent | 71d7153c881a22ceb70e215357c2e342b9a9b91c (diff) | |
download | packages_apps_Browser-5a4372f4638f9a1fc5c052d85977fbcc0c4d8c55.zip packages_apps_Browser-5a4372f4638f9a1fc5c052d85977fbcc0c4d8c55.tar.gz packages_apps_Browser-5a4372f4638f9a1fc5c052d85977fbcc0c4d8c55.tar.bz2 |
fix phone titlebar
Change-Id: I76908b1cf4eb61f64c3531c75e589f1b80bdaaba
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/browser/BaseUi.java | 24 | ||||
-rw-r--r-- | src/com/android/browser/NavScreen.java | 7 | ||||
-rw-r--r-- | src/com/android/browser/TitleBarBase.java | 18 | ||||
-rw-r--r-- | src/com/android/browser/TitleBarPhone.java | 2 |
4 files changed, 28 insertions, 23 deletions
diff --git a/src/com/android/browser/BaseUi.java b/src/com/android/browser/BaseUi.java index e2e313e..20195ad 100644 --- a/src/com/android/browser/BaseUi.java +++ b/src/com/android/browser/BaseUi.java @@ -26,7 +26,11 @@ import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.BitmapFactory; +import android.graphics.Color; +import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; +import android.graphics.drawable.LayerDrawable; +import android.graphics.drawable.PaintDrawable; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; @@ -74,6 +78,7 @@ public abstract class BaseUi implements UI, WebViewFactory { private Drawable mSecLockIcon; private Drawable mMixLockIcon; + protected Drawable mGenericFavicon; private FrameLayout mBrowserFrameLayout; protected FrameLayout mContentView; @@ -88,6 +93,7 @@ public abstract class BaseUi implements UI, WebViewFactory { private Toast mStopToast; + // the default <video> poster private Bitmap mDefaultVideoPoster; // the video progress view @@ -117,6 +123,8 @@ public abstract class BaseUi implements UI, WebViewFactory { .findViewById(R.id.fullscreen_custom_content); frameLayout.addView(mBrowserFrameLayout, COVER_SCREEN_PARAMS); setFullscreen(BrowserSettings.getInstance().useFullscreen()); + mGenericFavicon = res.getDrawable( + R.drawable.app_web_browser_sm); } @Override @@ -795,4 +803,20 @@ public abstract class BaseUi implements UI, WebViewFactory { } } + protected Drawable getFaviconDrawable(Bitmap icon) { + Drawable[] array = new Drawable[3]; + array[0] = new PaintDrawable(Color.BLACK); + PaintDrawable p = new PaintDrawable(Color.WHITE); + array[1] = p; + if (icon == null) { + array[2] = mGenericFavicon; + } else { + array[2] = new BitmapDrawable(icon); + } + LayerDrawable d = new LayerDrawable(array); + d.setLayerInset(1, 1, 1, 1, 1); + d.setLayerInset(2, 2, 2, 2, 2); + return d; + } + } diff --git a/src/com/android/browser/NavScreen.java b/src/com/android/browser/NavScreen.java index c61c39f..e636b2b 100644 --- a/src/com/android/browser/NavScreen.java +++ b/src/com/android/browser/NavScreen.java @@ -297,13 +297,12 @@ public class NavScreen extends LinearLayout implements OnClickListener { } else { content = (ImageView) convertView.findViewById(R.id.content); } + View tbar = convertView.findViewById(R.id.titlebar); TextView title = (TextView) convertView.findViewById(R.id.title); ImageView icon = (ImageView) convertView.findViewById(R.id.favicon); ImageButton close = (ImageButton) convertView.findViewById(R.id.closetab); final Tab tab = getItem(position); - if (tab.getFavicon() != null) { - icon.setImageBitmap(tab.getFavicon()); - } + icon.setImageDrawable(mUi.getFaviconDrawable(tab.getFavicon())); title.setText(tab.getUrl()); Bitmap screen = tab.getScreenshot(); content.setImageBitmap(screen); @@ -313,7 +312,7 @@ public class NavScreen extends LinearLayout implements OnClickListener { onCloseTab(tab); } }); - title.setOnClickListener(new OnClickListener() { + tbar.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { close(false); diff --git a/src/com/android/browser/TitleBarBase.java b/src/com/android/browser/TitleBarBase.java index 284fe12..7897b65 100644 --- a/src/com/android/browser/TitleBarBase.java +++ b/src/com/android/browser/TitleBarBase.java @@ -73,7 +73,6 @@ public class TitleBarBase extends RelativeLayout protected ImageView mFavicon; protected ImageView mLockIcon; - protected Drawable mGenericFavicon; protected UiController mUiController; protected BaseUi mBaseUi; protected FrameLayout mParent; @@ -106,8 +105,6 @@ public class TitleBarBase extends RelativeLayout mUiController = controller; mBaseUi = ui; mParent = parent; - mGenericFavicon = context.getResources().getDrawable( - R.drawable.app_web_browser_sm); } protected void initLayout(Context context, int layoutId) { @@ -311,20 +308,7 @@ public class TitleBarBase extends RelativeLayout } /* package */ void setFavicon(Bitmap icon) { - assert mFavicon != null; - Drawable[] array = new Drawable[3]; - array[0] = new PaintDrawable(Color.BLACK); - PaintDrawable p = new PaintDrawable(Color.WHITE); - array[1] = p; - if (icon == null) { - array[2] = mGenericFavicon; - } else { - array[2] = new BitmapDrawable(icon); - } - LayerDrawable d = new LayerDrawable(array); - d.setLayerInset(1, 1, 1, 1, 1); - d.setLayerInset(2, 2, 2, 2, 2); - mFavicon.setImageDrawable(d); + mFavicon.setImageDrawable(mBaseUi.getFaviconDrawable(icon)); } public int getEmbeddedHeight() { diff --git a/src/com/android/browser/TitleBarPhone.java b/src/com/android/browser/TitleBarPhone.java index 0eb2d1a..9242f99 100644 --- a/src/com/android/browser/TitleBarPhone.java +++ b/src/com/android/browser/TitleBarPhone.java @@ -86,12 +86,10 @@ public class TitleBarPhone extends TitleBarBase implements OnFocusChangeListener super.setFocusState(focus); if (focus) { mHasLockIcon = (mLockIcon.getVisibility() == View.VISIBLE); - mFavicon.setVisibility(View.GONE); mLockIcon.setVisibility(View.GONE); mStopButton.setVisibility(View.GONE); mVoiceButton.setVisibility(View.VISIBLE); } else { - mFavicon.setVisibility(View.VISIBLE); mLockIcon.setVisibility(mHasLockIcon ? View.VISIBLE : View.GONE); if (mInLoad) { mStopButton.setVisibility(View.VISIBLE); |