Title: [99226] trunk/Tools
Revision
99226
Author
[email protected]
Date
2011-11-03 12:15:42 -0700 (Thu, 03 Nov 2011)

Log Message

[EFL] DRT: Allow choosing which backing store to use.
https://bugs.webkit.org/show_bug.cgi?id=70532

Patch by Raphael Kubo da Costa <[email protected]> on 2011-11-03
Reviewed by Antonio Gomes.

This change makes it possible to change the backing store used by DRT
from Tiled Backing Store (TBS) to Single Backing Store (SBS) by
setting the environment variable DRT_USE_SINGLE_BACKING_STORE to 1.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
* DumpRenderTree/efl/DumpRenderTreeView.cpp:
(shouldUseSingleBackingStore):
(chooseAndInitializeAppropriateSmartClass):
(drtViewAdd):
* DumpRenderTree/efl/DumpRenderTreeView.h:

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (99225 => 99226)


--- trunk/Tools/ChangeLog	2011-11-03 18:48:14 UTC (rev 99225)
+++ trunk/Tools/ChangeLog	2011-11-03 19:15:42 UTC (rev 99226)
@@ -1,3 +1,22 @@
+2011-11-03  Raphael Kubo da Costa  <[email protected]>
+
+        [EFL] DRT: Allow choosing which backing store to use.
+        https://bugs.webkit.org/show_bug.cgi?id=70532
+
+        Reviewed by Antonio Gomes.
+
+        This change makes it possible to change the backing store used by DRT
+        from Tiled Backing Store (TBS) to Single Backing Store (SBS) by
+        setting the environment variable DRT_USE_SINGLE_BACKING_STORE to 1.
+
+        * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
+        (DumpRenderTreeChrome::createView):
+        * DumpRenderTree/efl/DumpRenderTreeView.cpp:
+        (shouldUseSingleBackingStore):
+        (chooseAndInitializeAppropriateSmartClass):
+        (drtViewAdd):
+        * DumpRenderTree/efl/DumpRenderTreeView.h:
+
 2011-11-02  Erik Arvidsson  <[email protected]>
 
         JS Test Harness: Remove more link tags

Modified: trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp (99225 => 99226)


--- trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp	2011-11-03 18:48:14 UTC (rev 99225)
+++ trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp	2011-11-03 19:15:42 UTC (rev 99226)
@@ -80,7 +80,7 @@
 
 Evas_Object* DumpRenderTreeChrome::createView() const
 {
-    Evas_Object* view = drtViewTiledAdd(m_evas);
+    Evas_Object* view = drtViewAdd(m_evas);
     if (!view)
         return 0;
 

Modified: trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.cpp (99225 => 99226)


--- trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.cpp	2011-11-03 18:48:14 UTC (rev 99225)
+++ trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.cpp	2011-11-03 19:15:42 UTC (rev 99226)
@@ -34,6 +34,7 @@
 #include <Eina.h>
 #include <Evas.h>
 #include <cstdio>
+#include <cstdlib>
 
 using namespace std;
 
@@ -80,11 +81,22 @@
     ecore_idler_add(onWindowCloseDelayed, view);
 }
 
-Evas_Object* drtViewTiledAdd(Evas* evas)
+static bool shouldUseSingleBackingStore()
 {
-    static Ewk_View_Smart_Class api = EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION("DRT_View_Tiled");
+    const char* useSingleBackingStore = getenv("DRT_USE_SINGLE_BACKING_STORE");
+    return useSingleBackingStore && *useSingleBackingStore == '1';
+}
 
-    if (!ewk_view_tiled_smart_set(&api))
+static bool chooseAndInitializeAppropriateSmartClass(Ewk_View_Smart_Class* api)
+{
+    return shouldUseSingleBackingStore() ? ewk_view_single_smart_set(api) : ewk_view_tiled_smart_set(api);
+}
+
+Evas_Object* drtViewAdd(Evas* evas)
+{
+    static Ewk_View_Smart_Class api = EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION("DRT_View");
+
+    if (!chooseAndInitializeAppropriateSmartClass(&api))
         return 0;
 
     if (EINA_UNLIKELY(!gParentSmartClass.sc.add))

Modified: trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.h (99225 => 99226)


--- trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.h	2011-11-03 18:48:14 UTC (rev 99225)
+++ trunk/Tools/DumpRenderTree/efl/DumpRenderTreeView.h	2011-11-03 19:15:42 UTC (rev 99226)
@@ -27,6 +27,6 @@
 
 #include <Evas.h>
 
-Evas_Object* drtViewTiledAdd(Evas*);
+Evas_Object* drtViewAdd(Evas*);
 
 #endif // DumpRenderTreeView_h
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to