Bug 1379066 - 7. Stop button supports Private mode
Stop button is in Awesome bar to stop page loading, to let it becomes
ThemedImageButton to support Private mode.
MozReview-Commit-ID: CzbCyx1Mxc4
--- a/mobile/android/app/src/photon/res/layout/toolbar_display_layout.xml
+++ b/mobile/android/app/src/photon/res/layout/toolbar_display_layout.xml
@@ -43,18 +43,17 @@
<org.mozilla.gecko.toolbar.PageActionLayout
android:id="@+id/page_action_layout"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal"
android:visibility="gone" />
- <ImageButton
+ <org.mozilla.gecko.widget.themed.ThemedImageButton
android:id="@+id/stop"
- android:layout_width="@dimen/page_action_button_width"
- android:layout_height="match_parent"
- android:background="#00ffffff"
+ style="@style/UrlBar.ImageButton"
+ android:background="@drawable/action_bar_button"
android:contentDescription="@string/stop"
android:src="@drawable/urlbar_stop"
android:visibility="gone" />
</merge>
--- a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java
+++ b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java
@@ -14,16 +14,17 @@ import org.mozilla.gecko.AboutPages;
import org.mozilla.gecko.BrowserApp;
import org.mozilla.gecko.R;
import org.mozilla.gecko.reader.ReaderModeUtils;
import org.mozilla.gecko.SiteIdentity;
import org.mozilla.gecko.Tab;
import org.mozilla.gecko.Tabs;
import org.mozilla.gecko.animation.PropertyAnimator;
import org.mozilla.gecko.animation.ViewHelper;
+import org.mozilla.gecko.skin.SkinConfig;
import org.mozilla.gecko.toolbar.BrowserToolbarTabletBase.ForwardButtonAnimation;
import org.mozilla.gecko.Experiments;
import org.mozilla.gecko.util.HardwareUtils;
import org.mozilla.gecko.util.StringUtils;
import org.mozilla.gecko.util.ViewUtil;
import org.mozilla.gecko.widget.themed.ThemedImageButton;
import org.mozilla.gecko.widget.themed.ThemedLinearLayout;
import org.mozilla.gecko.widget.themed.ThemedTextView;
@@ -100,17 +101,16 @@ public class ToolbarDisplayLayout extend
private boolean mIsAttached;
private final ThemedTextView mTitle;
private final int mTitlePadding;
private ToolbarPrefs mPrefs;
private OnTitleChangeListener mTitleChangeListener;
private final ThemedImageButton mSiteSecurity;
-
private final ImageButton mStop;
private OnStopListener mStopListener;
private final PageActionLayout mPageActionLayout;
private final SiteIdentityPopup mSiteIdentityPopup;
private int mSecurityImageLevel;
@@ -165,16 +165,22 @@ public class ToolbarDisplayLayout extend
mStop = (ImageButton) findViewById(R.id.stop);
mPageActionLayout = (PageActionLayout) findViewById(R.id.page_action_layout);
}
@Override
public void setPrivateMode(boolean isPrivate) {
super.setPrivateMode(isPrivate);
mSiteSecurity.setPrivateMode(isPrivate);
+
+ // Bug 1375351 should change class type to ThemedImageButton to avoid casting
+ if (SkinConfig.isPhoton()) {
+ ((ThemedImageButton)mStop).setPrivateMode(isPrivate);
+ }
+
mPageActionLayout.setPrivateMode(isPrivate);
}
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
@@ -422,17 +428,17 @@ public class ToolbarDisplayLayout extend
mPageActionLayout.setVisibility(!isShowingProgress ? View.VISIBLE : View.GONE);
// We want title to fill the whole space available for it when there are icons
// being shown on the right side of the toolbar as the icons already have some
// padding in them. This is just to avoid wasting space when icons are shown.
mTitle.setPadding(0, 0, (!isShowingProgress ? mTitlePadding : 0), 0);
}
- List<View> getFocusOrder() {
+ List<? extends View> getFocusOrder() {
return Arrays.asList(mSiteSecurity, mPageActionLayout, mStop);
}
void setOnStopListener(OnStopListener listener) {
mStopListener = listener;
}
void setOnTitleChangeListener(OnTitleChangeListener listener) {