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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java

Issue 2878403002: Support setting mouse cursor icon in Android N. (Closed)
Patch Set: Support setting mouse cursor icon in Android N Created 3 years, 5 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
Index: chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java b/chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java
index d4c3d6fbc30821989e553b2ff6db1812620240dd..18014fa600d81d889835892d618d0af56e3be833 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/snackbar/SnackbarView.java
@@ -12,9 +12,11 @@ import android.app.Activity;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
+import android.os.Build;
import android.support.annotation.Nullable;
import android.view.Gravity;
import android.view.LayoutInflater;
+import android.view.PointerIcon;
import android.view.SurfaceView;
import android.view.View;
import android.view.View.OnClickListener;
@@ -93,6 +95,9 @@ class SnackbarView {
mActionButtonView.setOnClickListener(listener);
mProfileImageView = (ImageView) mView.findViewById(R.id.snackbar_profile_image);
+ setPointerIcon(mMessageView, PointerIcon.TYPE_TEXT);
+ setPointerIcon(mActionButtonView, PointerIcon.TYPE_HAND);
+
updateInternal(snackbar, false);
}
@@ -142,20 +147,16 @@ class SnackbarView {
// Only update if the visible frame has changed, otherwise there will be a layout loop.
if (!mCurrentVisibleRect.equals(mPreviousVisibleRect)) {
mPreviousVisibleRect.set(mCurrentVisibleRect);
-
- int keyboardHeight = mParent.getHeight() - mCurrentVisibleRect.bottom
- + mCurrentVisibleRect.top;
- FrameLayout.LayoutParams lp = getLayoutParams();
Ted C 2017/07/18 16:41:18 this change will prevent snackbars from appearing
jaebaek 2017/07/19 01:18:53 Yes, it is intentional. When we set the height of
- lp.bottomMargin = keyboardHeight;
if (mIsTablet) {
+ FrameLayout.LayoutParams lp = getLayoutParams();
int margin = mParent.getResources()
.getDimensionPixelSize(R.dimen.snackbar_margin_tablet);
int width = mParent.getResources()
.getDimensionPixelSize(R.dimen.snackbar_width_tablet);
lp.width = Math.min(width, mParent.getWidth() - 2 * margin);
lp.gravity = Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM;
+ mView.setLayoutParams(lp);
}
- mView.setLayoutParams(lp);
}
}
@@ -286,4 +287,11 @@ class SnackbarView {
view.setText(text);
}
}
+
+ private static void setPointerIcon(View view, int type) {
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
+ PointerIcon icon = PointerIcon.getSystemIcon(view.getContext(), type);
+ view.setPointerIcon(icon);
+ }
+ }
}

Powered by Google App Engine
This is Rietveld 408576698