summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser/NavigationBarTablet.java
diff options
context:
space:
mode:
authorPankaj Garg <pgarg@codeaurora.org>2015-07-07 17:29:03 -0700
committerjrizzoli <joey@cyanogenmoditalia.it>2015-08-28 13:15:45 +0200
commit66f8cef21dee091292fdf8aa346c829ff43ed26a (patch)
tree63d19529694099c2a235ccee1ecf2d3c31061448 /src/com/android/browser/NavigationBarTablet.java
parent33551ffea822cb02d1ad88f5a33e046e98eca43f (diff)
downloadandroid_packages_apps_Gello-66f8cef21dee091292fdf8aa346c829ff43ed26a.tar.gz
android_packages_apps_Gello-66f8cef21dee091292fdf8aa346c829ff43ed26a.tar.bz2
android_packages_apps_Gello-66f8cef21dee091292fdf8aa346c829ff43ed26a.zip
NavigationBar code cleanup
- Unified code for phone and tablet UI - Chagned Favicon to use Tiles - Updates to Tile class Change-Id: Iecb699a3e5eb848db149705a9142f8f199f02c04
Diffstat (limited to 'src/com/android/browser/NavigationBarTablet.java')
-rw-r--r--src/com/android/browser/NavigationBarTablet.java177
1 files changed, 8 insertions, 169 deletions
diff --git a/src/com/android/browser/NavigationBarTablet.java b/src/com/android/browser/NavigationBarTablet.java
index c6c88cd3..ce482d94 100644
--- a/src/com/android/browser/NavigationBarTablet.java
+++ b/src/com/android/browser/NavigationBarTablet.java
@@ -15,18 +15,10 @@
*/
package com.android.browser;
-import android.animation.Animator;
-import android.animation.AnimatorListenerAdapter;
-import android.animation.AnimatorSet;
-import android.animation.ObjectAnimator;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.graphics.drawable.Drawable;
-import android.os.Bundle;
-import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ImageButton;
@@ -34,33 +26,17 @@ import android.widget.ImageView;
import com.android.browser.UI.ComboViews;
import com.android.browser.UrlInputView.StateListener;
-import com.android.browser.preferences.SiteSpecificPreferencesFragment;
-
-import org.codeaurora.swe.WebRefiner;
-import org.codeaurora.swe.WebView;
-
-import java.io.ByteArrayOutputStream;
public class NavigationBarTablet extends NavigationBarBase implements StateListener {
- private Drawable mStopDrawable;
- private Drawable mReloadDrawable;
- private String mStopDescription;
- private String mRefreshDescription;
-
private View mUrlContainer;
private ImageButton mBackButton;
private ImageButton mForwardButton;
private ImageView mStar;
- private ImageView mUrlIcon;
private ImageView mSearchButton;
- private ImageView mStopButton;
private View mAllButton;
- private View mClearButton;
- private View mVoiceButton;
private View mNavButtons;
private boolean mHideNavButtons;
- private Drawable mFaviconDrawable;
public NavigationBarTablet(Context context) {
super(context);
@@ -78,41 +54,26 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
}
private void init(Context context) {
- Resources resources = context.getResources();
- mStopDrawable = resources.getDrawable(R.drawable.ic_action_stop);
- mReloadDrawable = resources.getDrawable(R.drawable.ic_action_reload);
- mStopDescription = resources.getString(R.string.accessibility_button_stop);
- mRefreshDescription = resources.getString(R.string.accessibility_button_refresh);
- mHideNavButtons = resources.getBoolean(R.bool.hide_nav_buttons);
+ mHideNavButtons = getResources().getBoolean(R.bool.hide_nav_buttons);
}
@Override
protected void onFinishInflate() {
super.onFinishInflate();
mAllButton = findViewById(R.id.all_btn);
- // TODO: Change enabled states based on whether you can go
- // back/forward. Probably should be done inside onPageStarted.
mNavButtons = findViewById(R.id.navbuttons);
mBackButton = (ImageButton) findViewById(R.id.back);
mForwardButton = (ImageButton) findViewById(R.id.forward);
- mUrlIcon = (ImageView) findViewById(R.id.url_icon);
mStar = (ImageView) findViewById(R.id.star);
- mStopButton = (ImageView) findViewById(R.id.stop);
mSearchButton = (ImageView) findViewById(R.id.search);
- mClearButton = findViewById(R.id.clear);
- mVoiceButton = findViewById(R.id.voice);
mUrlContainer = findViewById(R.id.urlbar_focused);
mBackButton.setOnClickListener(this);
mForwardButton.setOnClickListener(this);
mStar.setOnClickListener(this);
mAllButton.setOnClickListener(this);
- mStopButton.setOnClickListener(this);
mSearchButton.setOnClickListener(this);
- mClearButton.setOnClickListener(this);
- mVoiceButton.setOnClickListener(this);
mUrlInput.setContainer(mUrlContainer);
mUrlInput.setStateListener(this);
- mUrlIcon.setOnClickListener(this);
}
public void onConfigurationChanged(Configuration config) {
@@ -121,14 +82,9 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
mHideNavButtons = res.getBoolean(R.bool.hide_nav_buttons);
if (mUrlInput.hasFocus()) {
if (mHideNavButtons && (mNavButtons.getVisibility() == View.VISIBLE)) {
- int aw = mNavButtons.getMeasuredWidth();
- mNavButtons.setVisibility(View.GONE);
- mNavButtons.setAlpha(0f);
- mNavButtons.setTranslationX(-aw);
+ hideNavButtons();
} else if (!mHideNavButtons && (mNavButtons.getVisibility() == View.GONE)) {
- mNavButtons.setVisibility(View.VISIBLE);
- mNavButtons.setAlpha(1f);
- mNavButtons.setTranslationX(0);
+ showNavButtons();
}
}
}
@@ -144,7 +100,6 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
mBackButton.setEnabled(tab.canGoBack());
mForwardButton.setEnabled(tab.canGoForward());
}
- updateUrlIcon();
}
@Override
@@ -173,47 +128,11 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
mUiController.bookmarksOrHistoryPicker(ComboViews.Bookmarks);
} else if (mSearchButton == v) {
mBaseUi.editUrl(true, true);
- } else if (mStopButton == v) {
- stopOrRefresh();
- } else if (mClearButton == v) {
- clearOrClose();
- } else if (mVoiceButton == v) {
- mUiController.startVoiceRecognizer();
- } else if (mUrlIcon == v) {
- showSiteSpecificSettings();
} else {
super.onClick(v);
}
}
- private void clearOrClose() {
- if (TextUtils.isEmpty(mUrlInput.getText())) {
- // close
- mUrlInput.clearFocus();
- } else {
- // clear
- mUrlInput.setText("");
- }
- }
-
- @Override
- public void setFavicon(Bitmap icon) {
- super.setFavicon(icon);
- mFaviconDrawable = mBaseUi.getFaviconDrawable(icon);
- updateUrlIcon();
- }
-
- void updateUrlIcon() {
- if (mUrlInput.hasFocus()) {
- mUrlIcon.setImageResource(R.drawable.ic_action_search_normal);
- } else {
- if (mFaviconDrawable == null) {
- mFaviconDrawable = mBaseUi.getFaviconDrawable(null);
- }
- mUrlIcon.setImageDrawable(mFaviconDrawable);
- }
- }
-
@Override
protected void setFocusState(boolean focus) {
super.setFocusState(focus);
@@ -223,85 +142,26 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
}
mSearchButton.setVisibility(View.GONE);
mStar.setVisibility(View.GONE);
- mUrlIcon.setImageResource(R.drawable.ic_action_search_normal);
} else {
if (mHideNavButtons) {
showNavButtons();
}
showHideStar(mUiController.getCurrentTab());
mSearchButton.setVisibility(View.VISIBLE);
- updateUrlIcon();
- }
- }
-
- private void stopOrRefresh() {
- if (mUiController == null) return;
- if (mTitleBar.isInLoad()) {
- mUiController.stopLoading();
- } else {
- if (mUiController.getCurrentTopWebView() != null) {
- Tab currTab = mUiController.getTabControl().getCurrentTab();
- mUiController.getCurrentTopWebView().reload();
- }
}
}
- @Override
- public void onProgressStarted() {
- mStopButton.setImageDrawable(mStopDrawable);
- mStopButton.setContentDescription(mStopDescription);
- }
-
- @Override
- public void onProgressStopped() {
- mStopButton.setImageDrawable(mReloadDrawable);
- mStopButton.setContentDescription(mRefreshDescription);
- }
-
- private AnimatorSet mAnimation;
-
private void hideNavButtons() {
- if (mBaseUi.blockFocusAnimations()) {
- mNavButtons.setVisibility(View.GONE);
- return;
- }
- int awidth = mNavButtons.getMeasuredWidth();
- Animator anim1 = ObjectAnimator.ofFloat(mNavButtons, View.TRANSLATION_X, 0, - awidth);
- Animator anim2 = ObjectAnimator.ofInt(mUrlContainer, "left", mUrlContainer.getLeft(),
- mUrlContainer.getPaddingLeft());
- Animator anim3 = ObjectAnimator.ofFloat(mNavButtons, View.ALPHA, 1f, 0f);
- mAnimation = new AnimatorSet();
- mAnimation.playTogether(anim1, anim2, anim3);
- mAnimation.addListener(new AnimatorListenerAdapter() {
- @Override
- public void onAnimationEnd(Animator animation) {
- mNavButtons.setVisibility(View.GONE);
- mAnimation = null;
- }
- });
- mAnimation.setDuration(150);
- mAnimation.start();
+ int aw = mNavButtons.getMeasuredWidth();
+ mNavButtons.setVisibility(View.GONE);
+ mNavButtons.setAlpha(0f);
+ mNavButtons.setTranslationX(-aw);
}
private void showNavButtons() {
- if (mAnimation != null) {
- mAnimation.cancel();
- }
mNavButtons.setVisibility(View.VISIBLE);
+ mNavButtons.setAlpha(1f);
mNavButtons.setTranslationX(0);
- if (!mBaseUi.blockFocusAnimations()) {
- int awidth = mNavButtons.getMeasuredWidth();
- Animator anim1 = ObjectAnimator.ofFloat(mNavButtons,
- View.TRANSLATION_X, -awidth, 0);
- Animator anim2 = ObjectAnimator.ofInt(mUrlContainer, "left", 0,
- awidth);
- Animator anim3 = ObjectAnimator.ofFloat(mNavButtons, View.ALPHA,
- 0f, 1f);
- AnimatorSet combo = new AnimatorSet();
- combo.playTogether(anim1, anim2, anim3);
- combo.setDuration(150);
- combo.start();
- }
}
private void showHideStar(Tab tab) {
@@ -315,25 +175,4 @@ public class NavigationBarTablet extends NavigationBarBase implements StateListe
mStar.setVisibility(starVisibility);
}
}
-
- @Override
- public void onStateChanged(int state) {
- super.onStateChanged(state);
- mVoiceButton.setVisibility(View.GONE);
- switch(state) {
- case STATE_NORMAL:
- mClearButton.setVisibility(View.GONE);
- break;
- case STATE_HIGHLIGHTED:
- mClearButton.setVisibility(View.GONE);
- if ((mUiController != null) && mUiController.supportsVoice()) {
- mVoiceButton.setVisibility(View.VISIBLE);
- }
- break;
- case STATE_EDITED:
- mClearButton.setVisibility(View.VISIBLE);
- break;
- }
- }
-
}