diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-11-22 09:09:45 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-11-22 09:10:13 +0100 |
commit | 470286ecfe79d59df14944e5b5d34630fc739391 (patch) | |
tree | 43983212872e06cebefd2ae474418fa2908ca54c /Source/WebKit/efl | |
parent | 23037105e948c2065da5a937d3a2396b0ff45c1e (diff) | |
download | qtwebkit-470286ecfe79d59df14944e5b5d34630fc739391.tar.gz |
Imported WebKit commit e89504fa9195b2063b2530961d4b73dd08de3242 (http://svn.webkit.org/repository/webkit/trunk@135485)
Change-Id: I03774e5ac79721c13ffa30d152537a74d0b12e66
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'Source/WebKit/efl')
-rw-r--r-- | Source/WebKit/efl/ChangeLog | 142 | ||||
-rw-r--r-- | Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp | 17 | ||||
-rw-r--r-- | Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h | 1 | ||||
-rw-r--r-- | Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp | 5 | ||||
-rw-r--r-- | Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h | 1 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_frame.cpp | 5 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_frame_private.h | 7 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_paint_context.cpp | 15 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp | 2 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_view.cpp | 62 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_view.h | 22 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_view_private.h | 4 | ||||
-rw-r--r-- | Source/WebKit/efl/ewk/ewk_view_single.cpp | 9 | ||||
-rw-r--r-- | Source/WebKit/efl/tests/test_ewk_view.cpp | 23 |
14 files changed, 305 insertions, 10 deletions
diff --git a/Source/WebKit/efl/ChangeLog b/Source/WebKit/efl/ChangeLog index f6117da03..2f97483fa 100644 --- a/Source/WebKit/efl/ChangeLog +++ b/Source/WebKit/efl/ChangeLog @@ -1,3 +1,145 @@ +2012-11-21 Allan Sandfeld Jensen <allan.jensen@digia.com> + + Disambiguate innerNodeFramePoint and mainFramePoint + https://bugs.webkit.org/show_bug.cgi?id=98139 + + Reviewed by Julien Chaffraix. + + * ewk/ewk_frame.cpp: + (ewk_frame_hit_test_new): + +2012-11-20 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r135295. + http://trac.webkit.org/changeset/135295 + https://bugs.webkit.org/show_bug.cgi?id=102834 + + This patch causes assertion to some layout tests on chromium + (Requested by jianli on #webkit). + + * ewk/ewk_frame.cpp: + (ewk_frame_uri_set): + (_ewk_frame_contents_set_internal): + +2012-11-20 James Simonsen <simonjam@chromium.org> + + Consolidate FrameLoader::load() into one function taking a FrameLoadRequest + https://bugs.webkit.org/show_bug.cgi?id=102151 + + Reviewed by Adam Barth. + + * ewk/ewk_frame.cpp: + (_ewk_frame_contents_set_internal): + +2012-11-19 Tony Chang <tony@chromium.org> + + Remove 'is' prefix from WebSettings::isWebSecurityEnabled and WebSettings::isSpatialNavigationEnabled + https://bugs.webkit.org/show_bug.cgi?id=102548 + + Reviewed by Adam Barth. + + Rename call to WebCore::Settings. + + * ewk/ewk_view.cpp: + (_ewk_view_priv_new): + +2012-11-16 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r134694. + http://trac.webkit.org/changeset/134694 + https://bugs.webkit.org/show_bug.cgi?id=102481 + + it made API test crash on EFL port (Requested by gyuyoung on + #webkit). + + * DefaultTheme/default.edc: + +2012-11-15 Kenneth Rohde Christiansen <kenneth@webkit.org> + + Rename member vars in ViewportArgument to match css-device-adapt + https://bugs.webkit.org/show_bug.cgi?id=102355 + + Reviewed by Gyuyoung Kim. + + * ewk/ewk_view.cpp: + (_ewk_view_priv_new): Update to reflect name change. + +2012-11-15 Gyuyoung Kim <gyuyoung.kim@samsung.com> + + Unreviewed. Fix build break when using --no-tiled-backing-store option. + + * ewk/ewk_frame_private.h: + (WebCore): + +2012-11-14 Ryuan Choi <ryuan.choi@gmail.com> + + [EFL] Port tiled backing store + https://bugs.webkit.org/show_bug.cgi?id=71352 + + Reviewed by Gyuyoung Kim. + + Added ewk_view_setting_tiled_backing_store_enabled_{get|set} to give possibility + to use WebCore's tiled backing store in WebKit/Efl port. This makes WebKit/Efl + compliant with WebKit's generic solution of tiled backing store. + + * WebCoreSupport/ChromeClientEfl.cpp: + (WebCore::ChromeClientEfl::invalidateRootView): + (WebCore): + (WebCore::ChromeClientEfl::visibleRectForTiledBackingStore): + * WebCoreSupport/ChromeClientEfl.h: + (ChromeClientEfl): + * ewk/ewk_frame_private.h: + Declared missing classes which used in this file. + * ewk/ewk_paint_context.cpp: + (ewk_paint_context_paint): Implemented to paint tiled backing store + * ewk/ewk_view.cpp: + (ewk_view_setting_tiled_backing_store_enabled_set): + Added API to enable/disable the WebCore's tiled backing store. + (ewk_view_setting_tiled_backing_store_enabled_get): + Added API to query if the WebCore's tiled backing store is enabled. + (ewk_view_tiled_backing_store_invalidate): + * ewk/ewk_view.h: + * ewk/ewk_view_private.h: + * ewk/ewk_view_single.cpp: + (_ewk_view_single_smart_repaints_process): + Implemented to update visible area of tiled backing store. + * tests/test_ewk_view.cpp: Added test case of ewk_view_setting_tiled_backing_store. + (TEST_F): + +2012-11-14 Ryuan Choi <ryuan.choi@gmail.com> + + [EFL] Refactor theme to choose whether to support foreground color of selection + https://bugs.webkit.org/show_bug.cgi?id=102037 + + Reviewed by Gyuyoung Kim. + + * DefaultTheme/default.edc: + Refactored color classes from active/inactive to foreground/background. + +2012-11-12 KyungTae Kim <ktf.kim@samsung.com> + + [EFL] In ewk_tiled_backing_store_pre_render_region, the 'slicer' may be uninitialized + https://bugs.webkit.org/show_bug.cgi?id=102038 + + Reviewed by Gyuyoung Kim. + + To fix build warning -Wuninitialized, + initialize the 'slicer' in ewk_tiled_backing_store_pre_render_region. + + * ewk/ewk_tiled_backing_store.cpp: + (ewk_tiled_backing_store_pre_render_region): + +2012-11-09 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> + + [EFL][DRT] Force a repaint before tracking repaint rects. + https://bugs.webkit.org/show_bug.cgi?id=101743 + + Reviewed by Kenneth Rohde Christiansen. + + * WebCoreSupport/DumpRenderTreeSupportEfl.cpp: + (DumpRenderTreeSupportEfl::forceLayout): Added. + * WebCoreSupport/DumpRenderTreeSupportEfl.h: + 2012-11-07 Emil A Eklund <eae@chromium.org> Unreviewed EFL build fix. diff --git a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp index 537424a94..0fe0ffab6 100644 --- a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp +++ b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp @@ -515,9 +515,14 @@ void ChromeClientEfl::invalidateContents(const IntRect& /*updateRect*/, bool /*i notImplemented(); } -void ChromeClientEfl::invalidateRootView(const IntRect& /*updateRect*/, bool /*immediate*/) +void ChromeClientEfl::invalidateRootView(const IntRect& updateRect, bool /*immediate*/) { +#if USE(TILED_BACKING_STORE) + ewk_view_tiled_backing_store_invalidate(m_view, updateRect); +#else + UNUSED_PARAM(updateRect); notImplemented(); +#endif } void ChromeClientEfl::invalidateContentsAndRootView(const IntRect& updateRect, bool /*immediate*/) @@ -653,6 +658,16 @@ void ChromeClientEfl::delegatedScrollRequested(const IntPoint&) { notImplemented(); } + +IntRect ChromeClientEfl::visibleRectForTiledBackingStore() const +{ + WebCore::FloatRect rect = ewk_view_page_rect_get(m_view); + const Evas_Object* frame = ewk_view_frame_main_get(m_view); + + int x, y; + ewk_frame_scroll_pos_get(frame, &x, &y); + return IntRect(x, y, rect.width(), rect.height()); +} #endif } diff --git a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h index 68da45a8a..ab10778fa 100644 --- a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h +++ b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h @@ -182,6 +182,7 @@ public: #if USE(TILED_BACKING_STORE) virtual void delegatedScrollRequested(const IntPoint& scrollPoint); + virtual IntRect visibleRectForTiledBackingStore() const; #endif Evas_Object* m_view; diff --git a/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp b/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp index b045ab042..7ea2721d8 100644 --- a/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp +++ b/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp @@ -399,6 +399,11 @@ void DumpRenderTreeSupportEfl::setSelectTrailingWhitespaceEnabled(Evas_Object* e editorClient->setSelectTrailingWhitespaceEnabled(enabled); } +void DumpRenderTreeSupportEfl::forceLayout(Evas_Object* ewkFrame) +{ + ewk_frame_force_layout(ewkFrame); +} + void DumpRenderTreeSupportEfl::setTracksRepaints(Evas_Object* ewkFrame, bool enabled) { DRT_SUPPORT_FRAME_GET_OR_RETURN(ewkFrame, frame); diff --git a/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h b/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h index 59a63b4b1..80277d51a 100644 --- a/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h +++ b/Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h @@ -87,6 +87,7 @@ public: static void setSmartInsertDeleteEnabled(Evas_Object* ewkView, bool enabled); static void setSelectTrailingWhitespaceEnabled(Evas_Object* ewkView, bool enabled); + static void forceLayout(Evas_Object* ewkFrame); static void setTracksRepaints(Evas_Object* ewkFrame, bool enabled); static void resetTrackedRepaints(Evas_Object* ewkFrame); static bool isTrackingRepaints(const Evas_Object* ewkFrame); diff --git a/Source/WebKit/efl/ewk/ewk_frame.cpp b/Source/WebKit/efl/ewk/ewk_frame.cpp index 738a93918..dec55d698 100644 --- a/Source/WebKit/efl/ewk/ewk_frame.cpp +++ b/Source/WebKit/efl/ewk/ewk_frame.cpp @@ -702,8 +702,9 @@ Ewk_Hit_Test* ewk_frame_hit_test_new(const Evas_Object* ewkFrame, int x, int y) return 0; Ewk_Hit_Test* hitTest = new Ewk_Hit_Test; - hitTest->x = result.point().x(); - hitTest->y = result.point().y(); + // FIXME: This should probably use pointInMainFrame, if it is to match the documentation of ewk_hit_test. + hitTest->x = result.pointInInnerNodeFrame().x(); + hitTest->y = result.pointInInnerNodeFrame().y(); #if 0 // FIXME hitTest->bounding_box.x = result.boundingBox().x(); diff --git a/Source/WebKit/efl/ewk/ewk_frame_private.h b/Source/WebKit/efl/ewk/ewk_frame_private.h index 4f5f0e40e..d841f2a50 100644 --- a/Source/WebKit/efl/ewk/ewk_frame_private.h +++ b/Source/WebKit/efl/ewk/ewk_frame_private.h @@ -26,10 +26,15 @@ #include <Evas.h> #include <wtf/PassRefPtr.h> #include <wtf/Vector.h> +#include <wtf/text/WTFString.h> namespace WebCore { -class Widget; +class HistoryItem; +class HTMLPlugInElement; +class KURL; class Frame; +class IntSize; +class Widget; } Evas_Object* ewk_frame_add(Evas* canvas); diff --git a/Source/WebKit/efl/ewk/ewk_paint_context.cpp b/Source/WebKit/efl/ewk/ewk_paint_context.cpp index bdbd899bc..c19d13811 100644 --- a/Source/WebKit/efl/ewk/ewk_paint_context.cpp +++ b/Source/WebKit/efl/ewk/ewk_paint_context.cpp @@ -20,6 +20,7 @@ #include "config.h" +#include "TiledBackingStore.h" #include "ewk_paint_context_private.h" #include "ewk_private.h" @@ -158,6 +159,20 @@ void ewk_paint_context_paint(Ewk_Paint_Context* context, WebCore::FrameView* vie WebCore::IntRect paintArea(*area); +#if USE(TILED_BACKING_STORE) + if (view->frame()->tiledBackingStore()) { + int scrollX = view->scrollX(); + int scrollY = view->scrollY(); + + context->graphicContext->translate(-scrollX, -scrollY); + + paintArea.move(scrollX, scrollY); + + view->frame()->tiledBackingStore()->paint(context->graphicContext.get(), paintArea); + return; + } +#endif + if (view->isTransparent()) context->graphicContext->clearRect(paintArea); view->paint(context->graphicContext.get(), paintArea); diff --git a/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp b/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp index ddae17347..1c5087978 100644 --- a/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp +++ b/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp @@ -1855,6 +1855,8 @@ bool ewk_tiled_backing_store_pre_render_region(Evas_Object* ewkBackingStore, Eva zoom = ROUNDED_ZOOM(priv->view.tile.width, zoom); Eina_Tile_Grid_Slicer slicer; + memset(&slicer, 0, sizeof(Eina_Tile_Grid_Slicer)); + if (!eina_tile_grid_slicer_setup(&slicer, x, y, width, height, tileWidth, tileHeight)) { ERR("could not setup grid slicer for %d,%d+%dx%d tile=%dx%d", x, y, width, height, tileWidth, tileHeight); diff --git a/Source/WebKit/efl/ewk/ewk_view.cpp b/Source/WebKit/efl/ewk/ewk_view.cpp index b7a84b1f9..6816a877f 100644 --- a/Source/WebKit/efl/ewk/ewk_view.cpp +++ b/Source/WebKit/efl/ewk/ewk_view.cpp @@ -36,6 +36,7 @@ #include "EflScreenUtilities.h" #include "EventHandler.h" #include "FocusController.h" +#include "Frame.h" #include "FrameLoaderClientEfl.h" #include "FrameView.h" #include "GraphicsContext.h" @@ -57,6 +58,7 @@ #include "RenderThemeEfl.h" #include "ResourceHandle.h" #include "Settings.h" +#include "TiledBackingStore.h" #include "c_instance.h" #include "ewk_contextmenu_private.h" #include "ewk_frame.h" @@ -802,12 +804,13 @@ static Ewk_View_Private_Data* _ewk_view_priv_new(Ewk_View_Smart_Data* smartData) WebCore::LayoutMilestones layoutMilestones = WebCore::DidFirstLayout | WebCore::DidFirstVisuallyNonEmptyLayout; priv->page->addLayoutMilestones(layoutMilestones); + // FIXME: Noone is supposed to do this manually. priv->viewportArguments.width = WebCore::ViewportArguments::ValueAuto; priv->viewportArguments.height = WebCore::ViewportArguments::ValueAuto; - priv->viewportArguments.initialScale = WebCore::ViewportArguments::ValueAuto; - priv->viewportArguments.minimumScale = WebCore::ViewportArguments::ValueAuto; - priv->viewportArguments.maximumScale = WebCore::ViewportArguments::ValueAuto; - priv->viewportArguments.userScalable = true; + priv->viewportArguments.zoom = WebCore::ViewportArguments::ValueAuto; + priv->viewportArguments.minZoom = WebCore::ViewportArguments::ValueAuto; + priv->viewportArguments.maxZoom = WebCore::ViewportArguments::ValueAuto; + priv->viewportArguments.userZoom = true; priv->pageSettings->setLoadsImagesAutomatically(true); priv->pageSettings->setDefaultTextEncodingName("iso-8859-1"); @@ -886,7 +889,7 @@ static Ewk_View_Private_Data* _ewk_view_priv_new(Ewk_View_Smart_Data* smartData) priv->settings.resizableTextareas = priv->pageSettings->textAreasAreResizable(); priv->settings.privateBrowsing = priv->pageSettings->privateBrowsingEnabled(); priv->settings.caretBrowsing = priv->pageSettings->caretBrowsingEnabled(); - priv->settings.spatialNavigation = priv->pageSettings->isSpatialNavigationEnabled(); + priv->settings.spatialNavigation = priv->pageSettings->spatialNavigationEnabled(); priv->settings.localStorage = priv->pageSettings->localStorageEnabled(); priv->settings.offlineAppCache = true; // XXX no function to read setting; this keeps the original setting priv->settings.pageCache = priv->pageSettings->usesPageCache(); @@ -4754,6 +4757,55 @@ Ewk_Context_Menu* ewk_view_context_menu_get(const Evas_Object* ewkView) return priv->contextMenu; } +Eina_Bool ewk_view_setting_tiled_backing_store_enabled_set(Evas_Object* ewkView, Eina_Bool enable) +{ +#if USE(TILED_BACKING_STORE) + EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false); + EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false); + + priv->pageSettings->setTiledBackingStoreEnabled(enable); + + return true; +#else + UNUSED_PARAM(ewkView); + UNUSED_PARAM(enable); + return false; +#endif +} + +Eina_Bool ewk_view_setting_tiled_backing_store_enabled_get(Evas_Object* ewkView) +{ +#if USE(TILED_BACKING_STORE) + EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false); + EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false); + + return priv->pageSettings->tiledBackingStoreEnabled(); +#else + UNUSED_PARAM(ewkView); + return false; +#endif +} + +#if USE(TILED_BACKING_STORE) +/** + * @internal + * Invalidate given area to repaint. The backing store will mark tiles that are + * in the area as dirty. + * + * @param ewkView View. + * @param area Area to invalidate + */ +void ewk_view_tiled_backing_store_invalidate(Evas_Object* ewkView, const WebCore::IntRect& area) +{ + EINA_SAFETY_ON_NULL_RETURN(ewkView); + EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData); + EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv); + + if (priv->mainFrame->tiledBackingStore()) + priv->mainFrame->tiledBackingStore()->invalidate(area); +} +#endif + namespace EWKPrivate { WebCore::Page* corePage(const Evas_Object* ewkView) diff --git a/Source/WebKit/efl/ewk/ewk_view.h b/Source/WebKit/efl/ewk/ewk_view.h index 106ba145e..65dc55eb9 100644 --- a/Source/WebKit/efl/ewk/ewk_view.h +++ b/Source/WebKit/efl/ewk/ewk_view.h @@ -2777,6 +2777,28 @@ EAPI Eina_Bool ewk_view_setting_enable_fullscreen_set(Evas_Object *o, Eina_Bool EAPI Eina_Bool ewk_view_setting_enable_fullscreen_get(const Evas_Object *o); /** + * Enables/disables the WebCore's tiled backing store. + * + * @param o view object + * @oaram enable Enable or Disable WebCore's tiled backing store for given View + * + * @return true on success, or false on failure + * + * @note this is not for general use. It should be used for single view only. + */ +EAPI Eina_Bool ewk_view_setting_tiled_backing_store_enabled_set(Evas_Object *o, Eina_Bool enable); + +/** + * Queries if the WebCore's tiled backing store is enabled. + * + * @param o view object to query + * + * @return @c EINA_TRUE if the WebCore's tiled backing store is enabled + * @c EINA_FALSE if not or on failure + */ +EAPI Eina_Bool ewk_view_setting_tiled_backing_store_enabled_get(Evas_Object *o); + +/** * Gets the context menu object. * @param o The view that contains context menu. * diff --git a/Source/WebKit/efl/ewk/ewk_view_private.h b/Source/WebKit/efl/ewk/ewk_view_private.h index babd1eaa4..5dc4c0bbf 100644 --- a/Source/WebKit/efl/ewk/ewk_view_private.h +++ b/Source/WebKit/efl/ewk/ewk_view_private.h @@ -134,6 +134,10 @@ Eina_Bool ewk_view_paint_contents(Ewk_View_Private_Data* priv, Ewk_Paint_Context void ewk_view_js_window_object_clear(Evas_Object* ewkView, Evas_Object* frame); #endif +#if USE(TILED_BACKING_STORE) +void ewk_view_tiled_backing_store_invalidate(Evas_Object* ewkView, const WebCore::IntRect& area); +#endif + #if ENABLE(TOUCH_EVENTS) void ewk_view_need_touch_events_set(Evas_Object*, bool needed); bool ewk_view_need_touch_events_get(const Evas_Object*); diff --git a/Source/WebKit/efl/ewk/ewk_view_single.cpp b/Source/WebKit/efl/ewk/ewk_view_single.cpp index de0eb897c..c1fc6cd02 100644 --- a/Source/WebKit/efl/ewk/ewk_view_single.cpp +++ b/Source/WebKit/efl/ewk/ewk_view_single.cpp @@ -21,7 +21,8 @@ #include "config.h" #include "ewk_view.h" -#include "ewk_frame.h" +#include "TiledBackingStore.h" +#include "ewk_frame_private.h" #include "ewk_private.h" #include "ewk_view_private.h" @@ -262,6 +263,12 @@ static Eina_Bool _ewk_view_single_smart_repaints_process(Ewk_View_Smart_Data* sm return false; } +#if USE(TILED_BACKING_STORE) + WebCore::Frame* mainFrame = EWKPrivate::coreFrame(smartData->main_frame); + if (mainFrame && mainFrame->tiledBackingStore()) + mainFrame->tiledBackingStore()->coverWithTilesIfNeeded(); +#endif + Ewk_Paint_Context* context = ewk_paint_context_from_image_new(smartData->backing_store); ewk_paint_context_save(context); diff --git a/Source/WebKit/efl/tests/test_ewk_view.cpp b/Source/WebKit/efl/tests/test_ewk_view.cpp index 241580182..a3d73af42 100644 --- a/Source/WebKit/efl/tests/test_ewk_view.cpp +++ b/Source/WebKit/efl/tests/test_ewk_view.cpp @@ -72,6 +72,29 @@ TEST_F(EWKTestBase, ewk_view_setting_enable_fullscreen) } /** +* @brief Checking whether function properly get/set fullscreen setting value. +*/ +TEST_F(EWKTestBase, ewk_view_setting_tiled_backing_store) +{ + loadUrl(); + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_get(webView())); + +#if USE(TILED_BACKING_STORE) + ASSERT_TRUE(ewk_view_setting_tiled_backing_store_enabled_set(webView(), true)); + ASSERT_TRUE(ewk_view_setting_tiled_backing_store_enabled_get(webView())); + + ASSERT_TRUE(ewk_view_setting_tiled_backing_store_enabled_set(webView(), false)); + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_get(webView())); +#else + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_set(webView(), true)); + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_get(webView())); + + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_set(webView(), false)); + ASSERT_FALSE(ewk_view_setting_tiled_backing_store_enabled_get(webView())); +#endif +} + +/** * @brief Checking whether function returns proper context menu structure. * * This test creates a context menu and checks if context menu structure |