From 1202d66f78fb24850b997e37f0ce3cb3b36e4bbf Mon Sep 17 00:00:00 2001 From: Mikhail Naganov Date: Tue, 7 Aug 2012 18:26:52 +0100 Subject: Implement WebSettings.{get|set}TextSize via {get|set}TextZoom. TextSize is deprecated, so we wouldn't expect from WebViewProvider implementations to re-implement it in some other way than Android WebView does it. This also makes recently added TextSize.getValue method redundant. Change-Id: Ia9d0c743424be0727be6d5df6c7da30514d621b7 --- core/java/android/webkit/WebSettings.java | 27 +++++++++++++---------- core/java/android/webkit/WebSettingsClassic.java | 28 ------------------------ 2 files changed, 16 insertions(+), 39 deletions(-) (limited to 'core') diff --git a/core/java/android/webkit/WebSettings.java b/core/java/android/webkit/WebSettings.java index cb54600..0bad885 100644 --- a/core/java/android/webkit/WebSettings.java +++ b/core/java/android/webkit/WebSettings.java @@ -72,14 +72,6 @@ public abstract class WebSettings { TextSize(int size) { value = size; } - - /** - * @hide Only for use by WebViewProvider implementations - */ - public int getValue() { - return value; - } - int value; } @@ -442,7 +434,7 @@ public abstract class WebSettings { * Gets the text zoom of the page in percent. * * @return the text zoom of the page in percent - * @see #setTextSizeZoom + * @see #setTextZoom */ public synchronized int getTextZoom() { throw new MustOverrideException(); @@ -455,7 +447,7 @@ public abstract class WebSettings { * @deprecated Use {@link #setTextZoom} instead. */ public synchronized void setTextSize(TextSize t) { - throw new MustOverrideException(); + setTextZoom(t.value); } /** @@ -468,7 +460,20 @@ public abstract class WebSettings { * @deprecated Use {@link #getTextZoom} instead. */ public synchronized TextSize getTextSize() { - throw new MustOverrideException(); + TextSize closestSize = null; + int smallestDelta = Integer.MAX_VALUE; + int textSize = getTextZoom(); + for (TextSize size : TextSize.values()) { + int delta = Math.abs(textSize - size.value); + if (delta == 0) { + return size; + } + if (delta < smallestDelta) { + smallestDelta = delta; + closestSize = size; + } + } + return closestSize != null ? closestSize : TextSize.NORMAL; } /** diff --git a/core/java/android/webkit/WebSettingsClassic.java b/core/java/android/webkit/WebSettingsClassic.java index 66651f7..a61b8f5 100644 --- a/core/java/android/webkit/WebSettingsClassic.java +++ b/core/java/android/webkit/WebSettingsClassic.java @@ -650,34 +650,6 @@ public class WebSettingsClassic extends WebSettings { } /** - * @see android.webkit.WebSettings#setTextSize(android.webkit.WebSettingsClassic.TextSize) - */ - @Override - public synchronized void setTextSize(TextSize t) { - setTextZoom(t.value); - } - - /** - * @see android.webkit.WebSettings#getTextSize() - */ - @Override - public synchronized TextSize getTextSize() { - TextSize closestSize = null; - int smallestDelta = Integer.MAX_VALUE; - for (TextSize size : TextSize.values()) { - int delta = Math.abs(mTextSize - size.value); - if (delta == 0) { - return size; - } - if (delta < smallestDelta) { - smallestDelta = delta; - closestSize = size; - } - } - return closestSize != null ? closestSize : TextSize.NORMAL; - } - - /** * Set the double-tap zoom of the page in percent. Default is 100. * @param doubleTapZoom A percent value for increasing or decreasing the double-tap zoom. */ -- cgit v1.1