[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

simon.fraser at apple.com simon.fraser at apple.com
Wed Dec 22 14:39:36 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit d896a7259a8a19636a2ec6acbe814e9765163d20
Author: simon.fraser at apple.com <simon.fraser at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Oct 15 00:35:45 2010 +0000

    2010-10-14  Simon Fraser  <simon.fraser at apple.com>
    
            Reviewed by Sam Weinig.
    
            Plumb accelerated compositing prefs through WebKit2
            https://bugs.webkit.org/show_bug.cgi?id=46860
            <rdar://problem/8495312>
    
            Wire up the prefs to enable accelerated compositing, and
            show debug borders and repaint counters.
    
            * Shared/WebPreferencesStore.cpp:
            (WebKit::WebPreferencesStore::WebPreferencesStore):
            (WebKit::WebPreferencesStore::encode):
            (WebKit::WebPreferencesStore::decode):
            * Shared/WebPreferencesStore.h:
            * UIProcess/API/C/WKPreferencesPrivate.cpp:
            (WKPreferencesSetAcceleratedCompositingEnabled):
            (WKPreferencesGetAcceleratedCompositingEnabled):
            (WKPreferencesSetCompositingBordersVisible):
            (WKPreferencesGetCompositingBordersVisible):
            (WKPreferencesSetCompositingRepaintCountersVisible):
            (WKPreferencesGetCompositingRepaintCountersVisible):
            * UIProcess/API/C/WKPreferencesPrivate.h:
            * UIProcess/WebPreferences.cpp:
            (WebKit::WebPreferences::setAcceleratedCompositingEnabled):
            (WebKit::WebPreferences::acceleratedCompositingEnabled):
            (WebKit::WebPreferences::setCompositingBordersVisible):
            (WebKit::WebPreferences::compositingBordersVisible):
            (WebKit::WebPreferences::setCompositingRepaintCountersVisible):
            (WebKit::WebPreferences::compositingRepaintCountersVisible):
            * UIProcess/WebPreferences.h:
            * WebProcess/WebPage/WebPage.cpp:
            (WebKit::WebPage::WebPage):
            (WebKit::WebPage::preferencesDidChange):
            (WebKit::WebPage::updatePreferences):
            * WebProcess/WebPage/WebPage.h:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69826 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index d488afe..affda32 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,41 @@
+2010-10-14  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Plumb accelerated compositing prefs through WebKit2
+        https://bugs.webkit.org/show_bug.cgi?id=46860
+        <rdar://problem/8495312>
+        
+        Wire up the prefs to enable accelerated compositing, and
+        show debug borders and repaint counters.
+
+        * Shared/WebPreferencesStore.cpp:
+        (WebKit::WebPreferencesStore::WebPreferencesStore):
+        (WebKit::WebPreferencesStore::encode):
+        (WebKit::WebPreferencesStore::decode):
+        * Shared/WebPreferencesStore.h:
+        * UIProcess/API/C/WKPreferencesPrivate.cpp:
+        (WKPreferencesSetAcceleratedCompositingEnabled):
+        (WKPreferencesGetAcceleratedCompositingEnabled):
+        (WKPreferencesSetCompositingBordersVisible):
+        (WKPreferencesGetCompositingBordersVisible):
+        (WKPreferencesSetCompositingRepaintCountersVisible):
+        (WKPreferencesGetCompositingRepaintCountersVisible):
+        * UIProcess/API/C/WKPreferencesPrivate.h:
+        * UIProcess/WebPreferences.cpp:
+        (WebKit::WebPreferences::setAcceleratedCompositingEnabled):
+        (WebKit::WebPreferences::acceleratedCompositingEnabled):
+        (WebKit::WebPreferences::setCompositingBordersVisible):
+        (WebKit::WebPreferences::compositingBordersVisible):
+        (WebKit::WebPreferences::setCompositingRepaintCountersVisible):
+        (WebKit::WebPreferences::compositingRepaintCountersVisible):
+        * UIProcess/WebPreferences.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::WebPage):
+        (WebKit::WebPage::preferencesDidChange):
+        (WebKit::WebPage::updatePreferences):
+        * WebProcess/WebPage/WebPage.h:
+
 2010-10-14  Ada Chan  <adachan at apple.com>
 
         Reviewed by Sam Weinig.
diff --git a/WebKit2/Shared/WebPreferencesStore.cpp b/WebKit2/Shared/WebPreferencesStore.cpp
index 7f814f5..e299a2e 100644
--- a/WebKit2/Shared/WebPreferencesStore.cpp
+++ b/WebKit2/Shared/WebPreferencesStore.cpp
@@ -40,6 +40,9 @@ WebPreferencesStore::WebPreferencesStore()
     , localStorageEnabled(true)
     , xssAuditorEnabled(true)
     , frameFlatteningEnabled(false)
+    , acceleratedCompositingEnabled(true)
+    , compositingBordersVisible(false)
+    , compositingRepaintCountersVisible(false)
     , fontSmoothingLevel(FontSmoothingLevelMedium)
     , minimumFontSize(1)
     , minimumLogicalFontSize(9)
@@ -83,6 +86,9 @@ void WebPreferencesStore::encode(CoreIPC::ArgumentEncoder* encoder) const
     encoder->encode(fixedFontFamily);
     encoder->encode(sansSerifFontFamily);
     encoder->encode(serifFontFamily);
+    encoder->encode(acceleratedCompositingEnabled);
+    encoder->encode(compositingBordersVisible);
+    encoder->encode(compositingRepaintCountersVisible);
 }
 
 bool WebPreferencesStore::decode(CoreIPC::ArgumentDecoder* decoder, WebPreferencesStore& s)
@@ -123,6 +129,12 @@ bool WebPreferencesStore::decode(CoreIPC::ArgumentDecoder* decoder, WebPreferenc
         return false;
     if (!decoder->decode(s.serifFontFamily))
         return false;
+    if (!decoder->decode(s.acceleratedCompositingEnabled))
+        return false;
+    if (!decoder->decode(s.compositingBordersVisible))
+        return false;
+    if (!decoder->decode(s.compositingRepaintCountersVisible))
+        return false;
 
     if (hasXSSAuditorEnabledTestRunnerOverride)
         s.xssAuditorEnabled = xssAuditorEnabledTestRunnerOverride;
diff --git a/WebKit2/Shared/WebPreferencesStore.h b/WebKit2/Shared/WebPreferencesStore.h
index 6b0caf4..47933dd 100644
--- a/WebKit2/Shared/WebPreferencesStore.h
+++ b/WebKit2/Shared/WebPreferencesStore.h
@@ -50,6 +50,10 @@ struct WebPreferencesStore {
     bool xssAuditorEnabled;
     bool frameFlatteningEnabled;
 
+    bool acceleratedCompositingEnabled;
+    bool compositingBordersVisible;
+    bool compositingRepaintCountersVisible;
+
     uint32_t fontSmoothingLevel;
 
     uint32_t minimumFontSize;
diff --git a/WebKit2/UIProcess/API/C/WKPreferencesPrivate.cpp b/WebKit2/UIProcess/API/C/WKPreferencesPrivate.cpp
index 0bfd09c..76fcc95 100644
--- a/WebKit2/UIProcess/API/C/WKPreferencesPrivate.cpp
+++ b/WebKit2/UIProcess/API/C/WKPreferencesPrivate.cpp
@@ -83,3 +83,32 @@ WKFontSmoothingLevel WKPreferencesGetFontSmoothingLevel(WKPreferencesRef prefere
     return kWKFontSmoothingLevelMedium;
 }
 
+void WKPreferencesSetAcceleratedCompositingEnabled(WKPreferencesRef preferencesRef, bool flag)
+{
+    toImpl(preferencesRef)->setAcceleratedCompositingEnabled(flag);
+}
+
+bool WKPreferencesGetAcceleratedCompositingEnabled(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)->acceleratedCompositingEnabled();
+}
+
+void WKPreferencesSetCompositingBordersVisible(WKPreferencesRef preferencesRef, bool flag)
+{
+    toImpl(preferencesRef)->setCompositingBordersVisible(flag);
+}
+
+bool WKPreferencesGetCompositingBordersVisible(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)->compositingBordersVisible();
+}
+
+void WKPreferencesSetCompositingRepaintCountersVisible(WKPreferencesRef preferencesRef, bool flag)
+{
+    toImpl(preferencesRef)->setCompositingRepaintCountersVisible(flag);
+}
+
+bool WKPreferencesGetCompositingRepaintCountersVisible(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)->compositingRepaintCountersVisible();
+}
diff --git a/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h b/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h
index 067783b..7af8140 100644
--- a/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h
+++ b/WebKit2/UIProcess/API/C/WKPreferencesPrivate.h
@@ -47,6 +47,18 @@ typedef enum WKFontSmoothingLevel WKFontSmoothingLevel;
 WK_EXPORT void WKPreferencesSetFontSmoothingLevel(WKPreferencesRef, WKFontSmoothingLevel);
 WK_EXPORT WKFontSmoothingLevel WKPreferencesGetFontSmoothingLevel(WKPreferencesRef);
 
+// Defaults to true.
+WK_EXPORT void WKPreferencesSetAcceleratedCompositingEnabled(WKPreferencesRef, bool);
+WK_EXPORT bool WKPreferencesGetAcceleratedCompositingEnabled(WKPreferencesRef);
+
+// Defaults to false.
+WK_EXPORT void WKPreferencesSetCompositingBordersVisible(WKPreferencesRef, bool);
+WK_EXPORT bool WKPreferencesGetCompositingBordersVisible(WKPreferencesRef);
+
+// Defaults to false.
+WK_EXPORT void WKPreferencesSetCompositingRepaintCountersVisible(WKPreferencesRef, bool);
+WK_EXPORT bool WKPreferencesGetCompositingRepaintCountersVisible(WKPreferencesRef);
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/WebKit2/UIProcess/WebPreferences.cpp b/WebKit2/UIProcess/WebPreferences.cpp
index aee848c..7c9b9e7 100644
--- a/WebKit2/UIProcess/WebPreferences.cpp
+++ b/WebKit2/UIProcess/WebPreferences.cpp
@@ -218,5 +218,38 @@ const String& WebPreferences::fantasyFontFamily() const
     return m_store.fantasyFontFamily;
 }
 
+void WebPreferences::setAcceleratedCompositingEnabled(bool flag)
+{
+    m_store.acceleratedCompositingEnabled = flag;
+    update();
+}
+
+bool WebPreferences::acceleratedCompositingEnabled() const
+{
+    return m_store.acceleratedCompositingEnabled;
+}
+
+void WebPreferences::setCompositingBordersVisible(bool flag)
+{
+    m_store.compositingBordersVisible = flag;
+    update();
+}
+
+bool WebPreferences::compositingBordersVisible() const
+{
+    return m_store.compositingBordersVisible;
+}
+
+void WebPreferences::setCompositingRepaintCountersVisible(bool flag)
+{
+    m_store.compositingRepaintCountersVisible = flag;
+    update();
+}
+
+bool WebPreferences::compositingRepaintCountersVisible() const
+{
+    return m_store.compositingRepaintCountersVisible;
+}
+
 } // namespace WebKit
 
diff --git a/WebKit2/UIProcess/WebPreferences.h b/WebKit2/UIProcess/WebPreferences.h
index c18d586..b605316 100644
--- a/WebKit2/UIProcess/WebPreferences.h
+++ b/WebKit2/UIProcess/WebPreferences.h
@@ -100,6 +100,15 @@ public:
     void setFantasyFontFamily(const String&);
     const String& fantasyFontFamily() const;
 
+    void setAcceleratedCompositingEnabled(bool);
+    bool acceleratedCompositingEnabled() const;
+
+    void setCompositingBordersVisible(bool);
+    bool compositingBordersVisible() const;
+
+    void setCompositingRepaintCountersVisible(bool);
+    bool compositingRepaintCountersVisible() const;
+    
 private:
     WebPreferences();
     WebPreferences(WebPreferences*);
diff --git a/WebKit2/WebProcess/WebPage/WebPage.cpp b/WebKit2/WebProcess/WebPage/WebPage.cpp
index fb7404e..60a218c 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.cpp
+++ b/WebKit2/WebProcess/WebPage/WebPage.cpp
@@ -119,24 +119,7 @@ WebPage::WebPage(uint64_t pageID, const WebPageCreationParameters& parameters)
     pageClients.backForwardControllerClient = new WebBackForwardControllerClient(this);
     m_page = adoptPtr(new Page(pageClients));
 
-    m_page->settings()->setJavaScriptEnabled(parameters.store.javaScriptEnabled);
-    m_page->settings()->setLoadsImagesAutomatically(parameters.store.loadsImagesAutomatically);
-    m_page->settings()->setPluginsEnabled(parameters.store.pluginsEnabled);
-    m_page->settings()->setOfflineWebApplicationCacheEnabled(parameters.store.offlineWebApplicationCacheEnabled);
-    m_page->settings()->setLocalStorageEnabled(parameters.store.localStorageEnabled);
-    m_page->settings()->setXSSAuditorEnabled(parameters.store.xssAuditorEnabled);
-    m_page->settings()->setFrameFlatteningEnabled(parameters.store.frameFlatteningEnabled);
-    m_page->settings()->setMinimumFontSize(parameters.store.minimumFontSize);
-    m_page->settings()->setMinimumLogicalFontSize(parameters.store.minimumLogicalFontSize);
-    m_page->settings()->setDefaultFontSize(parameters.store.defaultFontSize);
-    m_page->settings()->setDefaultFixedFontSize(parameters.store.defaultFixedFontSize);
-    m_page->settings()->setStandardFontFamily(parameters.store.standardFontFamily);
-    m_page->settings()->setCursiveFontFamily(parameters.store.cursiveFontFamily);
-    m_page->settings()->setFantasyFontFamily(parameters.store.fantasyFontFamily);
-    m_page->settings()->setFixedFontFamily(parameters.store.fixedFontFamily);
-    m_page->settings()->setSansSerifFontFamily(parameters.store.sansSerifFontFamily);
-    m_page->settings()->setSerifFontFamily(parameters.store.serifFontFamily);
-    m_page->settings()->setJavaScriptCanOpenWindowsAutomatically(true);
+    updatePreferences(parameters.store);
 
     m_page->setGroupName("WebKit2Group");
     
@@ -690,21 +673,36 @@ void WebPage::getSourceForFrame(uint64_t frameID, uint64_t callbackID)
 void WebPage::preferencesDidChange(const WebPreferencesStore& store)
 {
     WebPreferencesStore::removeTestRunnerOverrides();
+    updatePreferences(store);
+}
 
-    m_page->settings()->setJavaScriptEnabled(store.javaScriptEnabled);
-    m_page->settings()->setLoadsImagesAutomatically(store.loadsImagesAutomatically);
-    m_page->settings()->setPluginsEnabled(store.pluginsEnabled);
-    m_page->settings()->setOfflineWebApplicationCacheEnabled(store.offlineWebApplicationCacheEnabled);
-    m_page->settings()->setLocalStorageEnabled(store.localStorageEnabled);
-    m_page->settings()->setXSSAuditorEnabled(store.xssAuditorEnabled);
-    m_page->settings()->setFrameFlatteningEnabled(store.frameFlatteningEnabled);
-    m_page->settings()->setStandardFontFamily(store.standardFontFamily);
-    m_page->settings()->setCursiveFontFamily(store.cursiveFontFamily);
-    m_page->settings()->setFantasyFontFamily(store.fantasyFontFamily);
-    m_page->settings()->setFixedFontFamily(store.fixedFontFamily);
-    m_page->settings()->setSansSerifFontFamily(store.sansSerifFontFamily);
-    m_page->settings()->setSerifFontFamily(store.serifFontFamily);
-
+void WebPage::updatePreferences(const WebPreferencesStore& store)
+{
+    Settings* settings = m_page->settings();
+    
+    settings->setJavaScriptEnabled(store.javaScriptEnabled);
+    settings->setLoadsImagesAutomatically(store.loadsImagesAutomatically);
+    settings->setPluginsEnabled(store.pluginsEnabled);
+    settings->setOfflineWebApplicationCacheEnabled(store.offlineWebApplicationCacheEnabled);
+    settings->setLocalStorageEnabled(store.localStorageEnabled);
+    settings->setXSSAuditorEnabled(store.xssAuditorEnabled);
+    settings->setFrameFlatteningEnabled(store.frameFlatteningEnabled);
+    settings->setMinimumFontSize(store.minimumFontSize);
+    settings->setMinimumLogicalFontSize(store.minimumLogicalFontSize);
+    settings->setDefaultFontSize(store.defaultFontSize);
+    settings->setDefaultFixedFontSize(store.defaultFixedFontSize);
+    settings->setStandardFontFamily(store.standardFontFamily);
+    settings->setCursiveFontFamily(store.cursiveFontFamily);
+    settings->setFantasyFontFamily(store.fantasyFontFamily);
+    settings->setFixedFontFamily(store.fixedFontFamily);
+    settings->setSansSerifFontFamily(store.sansSerifFontFamily);
+    settings->setSerifFontFamily(store.serifFontFamily);
+    settings->setJavaScriptCanOpenWindowsAutomatically(true);
+
+    settings->setAcceleratedCompositingEnabled(store.acceleratedCompositingEnabled);
+    settings->setShowDebugBorders(store.compositingBordersVisible);
+    settings->setShowRepaintCounter(store.compositingRepaintCountersVisible);
+    
     platformPreferencesDidChange(store);
 }
 
diff --git a/WebKit2/WebProcess/WebPage/WebPage.h b/WebKit2/WebProcess/WebPage/WebPage.h
index 592d6ee..5c2bf19 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.h
+++ b/WebKit2/WebProcess/WebPage/WebPage.h
@@ -204,8 +204,11 @@ private:
     void runJavaScriptInMainFrame(const String&, uint64_t callbackID);
     void getRenderTreeExternalRepresentation(uint64_t callbackID);
     void getSourceForFrame(uint64_t frameID, uint64_t callbackID);
+
     void preferencesDidChange(const WebPreferencesStore&);
     void platformPreferencesDidChange(const WebPreferencesStore&);
+    void updatePreferences(const WebPreferencesStore&);
+
     void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction);
     void setCustomUserAgent(const String&);
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list