diff options
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/webkit/ViewManager.java | 18 | ||||
| -rw-r--r-- | core/java/android/webkit/WebView.java | 10 |
2 files changed, 19 insertions, 9 deletions
diff --git a/core/java/android/webkit/ViewManager.java b/core/java/android/webkit/ViewManager.java index 63f40338f4bb..6a838c3b3a9b 100644 --- a/core/java/android/webkit/ViewManager.java +++ b/core/java/android/webkit/ViewManager.java @@ -50,7 +50,7 @@ class ViewManager { } setBounds(x, y, width, height); final AbsoluteLayout.LayoutParams lp = - new AbsoluteLayout.LayoutParams(ctvX(width), ctvX(height), + new AbsoluteLayout.LayoutParams(ctvD(width), ctvD(height), ctvX(x), ctvY(y)); mWebView.mPrivateHandler.post(new Runnable() { public void run() { @@ -98,9 +98,17 @@ class ViewManager { } /** + * Shorthand for calling mWebView.contentToViewDimension. Used when + * obtaining a view dimension from a content dimension, whether it be in x + * or y. + */ + private int ctvD(int val) { + return mWebView.contentToViewDimension(val); + } + + /** * Shorthand for calling mWebView.contentToViewX. Used when obtaining a - * view x coordinate from a content x coordinate, or when getting a - * view dimension from a content dimension, whether it be in x or y. + * view x coordinate from a content x coordinate. */ private int ctvX(int val) { return mWebView.contentToViewX(val); @@ -119,8 +127,8 @@ class ViewManager { View view = v.mView; AbsoluteLayout.LayoutParams lp = (AbsoluteLayout.LayoutParams) view.getLayoutParams(); - lp.width = ctvX(v.width); - lp.height = ctvX(v.height); + lp.width = ctvD(v.width); + lp.height = ctvD(v.height); lp.x = ctvX(v.x); lp.y = ctvY(v.y); view.setLayoutParams(lp); diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java index 8d21b3327576..09bc4e38b592 100644 --- a/core/java/android/webkit/WebView.java +++ b/core/java/android/webkit/WebView.java @@ -1776,13 +1776,15 @@ public class WebView extends AbsoluteLayout * the WebView normally without translating to account for the title bar. * @hide */ - public void addTitleBar(View v) { - if (null == v) { + public void setEmbeddedTitleBar(View v) { + if (mTitleBar == v) return; + if (mTitleBar != null) { removeView(mTitleBar); - } else { + } + if (null != v) { addView(v, new AbsoluteLayout.LayoutParams( ViewGroup.LayoutParams.FILL_PARENT, - ViewGroup.LayoutParams.WRAP_CONTENT, mScrollX, 0)); + ViewGroup.LayoutParams.WRAP_CONTENT, 0, 0)); } mTitleBar = v; } |
