From 4d6fe5ffdc62625726e5785edb0e01586d6072bf Mon Sep 17 00:00:00 2001 From: Mike Reed Date: Thu, 3 Sep 2009 13:29:05 -0400 Subject: [PATCH] allow subclassing for drawing vertical scrollbar, so that clients (e.g. webview) can resize/position --- core/java/android/view/View.java | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index d56922020441f..82bff4a920641 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -5409,6 +5409,18 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility scrollBar.draw(canvas); } + /** + * @hide + */ + protected void onDrawVScrollBar(Canvas canvas, ScrollBarDrawable scrollBar, + int l, int t, int r, int b) { + scrollBar.setBounds(l, t, r, b); + scrollBar.setParameters(computeVerticalScrollRange(), + computeVerticalScrollOffset(), + computeVerticalScrollExtent(), true); + scrollBar.draw(canvas); + } + /** *

Draw the vertical scrollbar if {@link #isVerticalScrollBarEnabled()} * returns true.

@@ -5441,13 +5453,11 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility // TODO: Deal with RTL languages to position scrollbar on left final int left = scrollX + width - size - (mUserPaddingRight & inside); - scrollBar.setBounds(left, scrollY + (mPaddingTop & inside), - left + size, scrollY + height - (mUserPaddingBottom & inside)); - scrollBar.setParameters( - computeVerticalScrollRange(), - computeVerticalScrollOffset(), - computeVerticalScrollExtent(), true); - scrollBar.draw(canvas); + onDrawVScrollBar(canvas, scrollBar, + left, + scrollY + (mPaddingTop & inside), + left + size, + scrollY + height - (mUserPaddingBottom & inside)); } /**