Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3100)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java

Issue 968453002: Stop infobar autohiding when Touch Exploration enabled (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nit Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/infobar/InfoBarContainer.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java b/chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java
index 0471c1c01c42ac764ef7218c853b33b87676c084..e390e2094c35fb7bfc4ae7ad2e12e5d95acb4b28 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/banners/SwipableOverlayView.java
@@ -250,10 +250,17 @@ public abstract class SwipableOverlayView extends ScrollView {
protected void onAttachedToWindow() {
super.onAttachedToWindow();
if (!mDoStayInvisible) {
- ObjectAnimator.ofFloat(this, "alpha", 0.f, 1.f).setDuration(REATTACH_FADE_IN_MS)
+ ObjectAnimator.ofFloat(this, View.ALPHA, 0.f, 1.f).setDuration(REATTACH_FADE_IN_MS)
.start();
setVisibility(VISIBLE);
}
+ if (!isAllowedToAutoHide()) setTranslationY(0.0f);
+ }
+
+ @Override
+ public void onWindowFocusChanged(boolean hasWindowFocus) {
+ super.onWindowFocusChanged(hasWindowFocus);
+ if (!isAllowedToAutoHide()) setTranslationY(0.0f);
}
/**
@@ -406,7 +413,7 @@ public abstract class SwipableOverlayView extends ScrollView {
return new GestureStateListener() {
@Override
public void onFlingStartGesture(int vx, int vy, int scrollOffsetY, int scrollExtentY) {
- if (!cancelCurrentAnimation()) return;
+ if (!isAllowedToAutoHide() || !cancelCurrentAnimation()) return;
beginGesture(scrollOffsetY, scrollExtentY);
mGestureState = GESTURE_FLINGING;
}
@@ -442,7 +449,7 @@ public abstract class SwipableOverlayView extends ScrollView {
@Override
public void onScrollStarted(int scrollOffsetY, int scrollExtentY) {
- if (!cancelCurrentAnimation()) return;
+ if (!isAllowedToAutoHide() || !cancelCurrentAnimation()) return;
beginGesture(scrollOffsetY, scrollExtentY);
mGestureState = GESTURE_SCROLLING;
}
@@ -693,6 +700,13 @@ public abstract class SwipableOverlayView extends ScrollView {
}
/**
+ * @return Whether the SwipableOverlayView is allowed to hide itself on scroll.
+ */
+ protected boolean isAllowedToAutoHide() {
+ return true;
+ }
+
+ /**
* Override gatherTransparentRegion to make this view's layout a placeholder for its
* animations. This is only called during layout, so it doesn't really make sense to apply
* post-layout properties like it does by default. Together with setWillNotDraw(false),
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/infobar/InfoBarContainer.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698