Reimplement range and page scale functionality
authorGrzegorz Czajkowski <g.czajkowski@samsung.com>
Mon, 23 Nov 2015 14:53:35 +0000 (15:53 +0100)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 10 Jul 2018 07:55:23 +0000 (07:55 +0000)
commit42c07c2e367b63473290887fda5e1f85fb24e9a5
tree3c8ca1c20f0c328cc6d87254b944915bc47ec748
parent8aa8532a9e405944e15d115cc05552e00d0994d4
Reimplement range and page scale functionality

minimumPageScaleFactor and maximumPageScaleFactor were removed from
blink::WebView by upstream. Those values were cached by
RenderViewObserverEfl::DidUpdateLayout() to:

1. Prevent user from setting a new scale which is out of the limits.
We don't need to worry about this. Blink will do that for us.

2. Get current scale limits.
Currently it's error prone. For different page (based on their
content width and auto fit calculated scale), call to
ewk_view_scale_range_get() may return different values.
If such functionality is really needed, it should be implemented
using smart callbacks.
Now, ewk_view_scale_range_get() returns default values from
content::WebPreferences.

This commit mostly gets rid of caching scale limits as they are
useless now.

Restore RenderViewObserverEfl::DidChangePageScaleFactor and cache
page scale once it was validated and successfully set by Blink.
This gives us a correct value on Browser side which is currently
using by engine.

Additionally, implemented ubrowser's slider range by using
ewk_view_scale_range_get().

Since the page scale is set asynchronously this patch fixes
utc_blink_ewk_view_scale_get_func.cpp as well.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=12080

Reviewed by: a.renevier, a1.gomes, djmix.kim

Change-Id: I62668f2f0f17a59844022dc0df273576b8dfa4f5
Signed-off-by: Grzegorz Czajkowski <g.czajkowski@samsung.com>
tizen_src/ewk/efl_integration/browser/web_view_browser_message_filter.cc
tizen_src/ewk/efl_integration/common/render_messages_ewk.h
tizen_src/ewk/efl_integration/eweb_view.cc
tizen_src/ewk/efl_integration/eweb_view.h
tizen_src/ewk/efl_integration/renderer/render_view_observer_efl.cc
tizen_src/ewk/efl_integration/renderer/render_view_observer_efl.h
tizen_src/ewk/ubrowser/window.cc
tizen_src/ewk/ubrowser/window.h
tizen_src/ewk/ubrowser/window_ui.cc
tizen_src/ewk/unittest/utc_blink_ewk_view_scale_get_func.cpp