Title: [132480] trunk
Revision
132480
Author
[email protected]
Date
2012-10-25 07:03:59 -0700 (Thu, 25 Oct 2012)

Log Message

Add setMediaTypeOverride to window.internals.settings
https://bugs.webkit.org/show_bug.cgi?id=100249

Patch by Mikhail Pozdnyakov <[email protected]> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

.:

Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for GTK port.

* Source/autotools/symbols.filter:

Source/WebCore:

Added setMediaTypeOverride to window.internals.settings.

Test: fast/media/print-restores-previous-mediatype.html

* WebCore.exp.in: Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for MAC.
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setMediaTypeOverride):
(WebCore):
* page/Settings.h:
(Settings):
(WebCore::Settings::mediaTypeOverride):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setMediaTypeOverride):
(WebCore):
* testing/InternalSettings.h:
(Backup):
(InternalSettings):
* testing/InternalSettings.idl:

Source/WebKit2:

Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for WIN port.

* win/WebKit2.def:

LayoutTests:

Fixed fast/media/print-restores-previous-mediatype.html to use cross-platform
window.internals.settings.setMediaTypeOverride.
Unskipped fast/media/print-restores-previous-mediatype.html for EFL, the test should also work
on other ports but it needs to be checked first.

* fast/media/print-restores-previous-mediatype.html:
* platform/efl/TestExpectations:

Modified Paths

Diff

Modified: trunk/ChangeLog (132479 => 132480)


--- trunk/ChangeLog	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/ChangeLog	2012-10-25 14:03:59 UTC (rev 132480)
@@ -1,3 +1,14 @@
+2012-10-25  Mikhail Pozdnyakov  <[email protected]>
+
+        Add setMediaTypeOverride to window.internals.settings
+        https://bugs.webkit.org/show_bug.cgi?id=100249
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for GTK port.
+
+        * Source/autotools/symbols.filter:
+
 2012-10-24  Michael Carmody  <[email protected]>
 
         [BlackBerry] change CMAKE_<CCXX|C>_FLAGS_<RELEASE|DEBUG> from enviroment flags

Modified: trunk/LayoutTests/ChangeLog (132479 => 132480)


--- trunk/LayoutTests/ChangeLog	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/LayoutTests/ChangeLog	2012-10-25 14:03:59 UTC (rev 132480)
@@ -1,3 +1,18 @@
+2012-10-25  Mikhail Pozdnyakov  <[email protected]>
+
+        Add setMediaTypeOverride to window.internals.settings
+        https://bugs.webkit.org/show_bug.cgi?id=100249
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Fixed fast/media/print-restores-previous-mediatype.html to use cross-platform
+        window.internals.settings.setMediaTypeOverride.
+        Unskipped fast/media/print-restores-previous-mediatype.html for EFL, the test should also work
+        on other ports but it needs to be checked first.
+
+        * fast/media/print-restores-previous-mediatype.html:
+        * platform/efl/TestExpectations:
+
 2012-10-22  Mikhail Naganov  <[email protected]>
 
         [Chromium] Add supportMultipleWindows setting, needed for Android

Modified: trunk/LayoutTests/fast/media/print-restores-previous-mediatype.html (132479 => 132480)


--- trunk/LayoutTests/fast/media/print-restores-previous-mediatype.html	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/LayoutTests/fast/media/print-restores-previous-mediatype.html	2012-10-25 14:03:59 UTC (rev 132480)
@@ -7,7 +7,7 @@
 <script type="text/_javascript_" charset="utf-8">
     if (window.testRunner) {
         testRunner.dumpAsText();
-        testRunner.setMediaType("handheld");
+        window.internals.settings.setMediaTypeOverride("handheld");
     }
 
     function log(m)

Modified: trunk/LayoutTests/platform/efl/TestExpectations (132479 => 132480)


--- trunk/LayoutTests/platform/efl/TestExpectations	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/LayoutTests/platform/efl/TestExpectations	2012-10-25 14:03:59 UTC (rev 132480)
@@ -1357,9 +1357,6 @@
 
 webkit.org/b/98718 svg/animations/animate-css-xml-attributeType.html [ Failure Pass ]
 
-# EFL's TestRunner does not implement setMediaType
-Bug(EFL) fast/media/print-restores-previous-mediatype.html [ Failure ]
-
 # EFL's TestRunner does not implement enableAutoResizeMode
 Bug(EFL) fast/autoresize
 

Modified: trunk/Source/WebCore/ChangeLog (132479 => 132480)


--- trunk/Source/WebCore/ChangeLog	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/ChangeLog	2012-10-25 14:03:59 UTC (rev 132480)
@@ -1,3 +1,32 @@
+2012-10-25  Mikhail Pozdnyakov  <[email protected]>
+
+        Add setMediaTypeOverride to window.internals.settings
+        https://bugs.webkit.org/show_bug.cgi?id=100249
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Added setMediaTypeOverride to window.internals.settings.
+
+        Test: fast/media/print-restores-previous-mediatype.html
+
+        * WebCore.exp.in: Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for MAC.
+        * page/Settings.cpp:
+        (WebCore::Settings::Settings):
+        (WebCore::Settings::setMediaTypeOverride):
+        (WebCore):
+        * page/Settings.h:
+        (Settings):
+        (WebCore::Settings::mediaTypeOverride):
+        * testing/InternalSettings.cpp:
+        (WebCore::InternalSettings::Backup::Backup):
+        (WebCore::InternalSettings::Backup::restoreTo):
+        (WebCore::InternalSettings::setMediaTypeOverride):
+        (WebCore):
+        * testing/InternalSettings.h:
+        (Backup):
+        (InternalSettings):
+        * testing/InternalSettings.idl:
+
 2012-10-22  Mikhail Naganov  <[email protected]>
 
         [Chromium] Add supportMultipleWindows setting, needed for Android

Modified: trunk/Source/WebCore/WebCore.exp.in (132479 => 132480)


--- trunk/Source/WebCore/WebCore.exp.in	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/WebCore.exp.in	2012-10-25 14:03:59 UTC (rev 132480)
@@ -964,6 +964,7 @@
 __ZN7WebCore8Settings44setLoadsSiteIconsIgnoringImageLoadingSettingEb
 __ZN7WebCore8Settings45setShouldRespectPriorityInCSSAttributeSettersEb
 __ZN7WebCore8Settings21setResolutionOverrideERKNS_7IntSizeE
+__ZN7WebCore8Settings20setMediaTypeOverrideERKN3WTF6StringE
 __ZN7WebCore8blankURLEv
 __ZN7WebCore8makeRGBAEiiii
 __ZN7WebCore8openFileERKN3WTF6StringENS_12FileOpenModeE

Modified: trunk/Source/WebCore/page/Settings.cpp (132479 => 132480)


--- trunk/Source/WebCore/page/Settings.cpp	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/page/Settings.cpp	2012-10-25 14:03:59 UTC (rev 132480)
@@ -125,6 +125,7 @@
 
 Settings::Settings(Page* page)
     : m_page(0)
+    , m_mediaTypeOverride("screen")
     , m_editableLinkBehavior(EditableLinkDefaultBehavior)
     , m_textDirectionSubmenuInclusionBehavior(TextDirectionSubmenuAutomaticallyIncluded)
     , m_passwordEchoDurationInSeconds(1)
@@ -469,6 +470,22 @@
     m_page->setNeedsRecalcStyleInAllFrames();
 }
 
+void Settings::setMediaTypeOverride(const String& mediaTypeOverride)
+{
+    if (m_mediaTypeOverride == mediaTypeOverride)
+        return;
+
+    m_mediaTypeOverride = mediaTypeOverride;
+
+    Frame* mainFrame = m_page->mainFrame();
+    ASSERT(mainFrame);
+    FrameView* view = mainFrame->view();
+    ASSERT(view);
+
+    view->setMediaType(mediaTypeOverride);
+    m_page->setNeedsRecalcStyleInAllFrames();
+}
+
 void Settings::setLoadsImagesAutomatically(bool loadsImagesAutomatically)
 {
     m_loadsImagesAutomatically = loadsImagesAutomatically;

Modified: trunk/Source/WebCore/page/Settings.h (132479 => 132480)


--- trunk/Source/WebCore/page/Settings.h	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/page/Settings.h	2012-10-25 14:03:59 UTC (rev 132480)
@@ -124,6 +124,10 @@
         void setResolutionOverride(const IntSize&);
         const IntSize& resolutionOverride() const { return m_resolutionDensityPerInchOverride; }
 
+        // Only set by Layout Tests.
+        void setMediaTypeOverride(const String&);
+        const String& mediaTypeOverride() const { return m_mediaTypeOverride; }
+
         // Unlike areImagesEnabled, this only suppresses the network load of
         // the image URL.  A cached image will still be rendered if requested.
         void setLoadsImagesAutomatically(bool);
@@ -659,6 +663,7 @@
         String m_defaultTextEncodingName;
         String m_ftpDirectoryTemplatePath;
         String m_localStorageDatabasePath;
+        String m_mediaTypeOverride;
         KURL m_userStyleSheetLocation;
         ScriptFontFamilyMap m_standardFontFamilyMap;
         ScriptFontFamilyMap m_serifFontFamilyMap;

Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (132479 => 132480)


--- trunk/Source/WebCore/testing/InternalSettings.cpp	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp	2012-10-25 14:03:59 UTC (rev 132480)
@@ -98,6 +98,7 @@
     , m_originalTextAutosizingFontScaleFactor(settings->textAutosizingFontScaleFactor())
 #endif
     , m_originalResolutionOverride(settings->resolutionOverride())
+    , m_originalMediaTypeOverride(settings->mediaTypeOverride())
 #if ENABLE(DIALOG_ELEMENT)
     , m_originalDialogElementEnabled(RuntimeEnabledFeatures::dialogElementEnabled())
 #endif
@@ -138,6 +139,7 @@
     settings->setTextAutosizingFontScaleFactor(m_originalTextAutosizingFontScaleFactor);
 #endif
     settings->setResolutionOverride(m_originalResolutionOverride);
+    settings->setMediaTypeOverride(m_originalMediaTypeOverride);
 #if ENABLE(DIALOG_ELEMENT)
     RuntimeEnabledFeatures::setDialogElementEnabled(m_originalDialogElementEnabled);
 #endif
@@ -422,6 +424,12 @@
     settings()->setResolutionOverride(IntSize(dotsPerCSSInchHorizontally, dotsPerCSSInchVertically));
 }
 
+void InternalSettings::setMediaTypeOverride(const String& mediaType, ExceptionCode& ec)
+{
+    InternalSettingsGuardForSettings();
+    settings()->setMediaTypeOverride(mediaType);
+}
+
 void InternalSettings::setTextAutosizingFontScaleFactor(float fontScaleFactor, ExceptionCode& ec)
 {
 #if ENABLE(TEXT_AUTOSIZING)

Modified: trunk/Source/WebCore/testing/InternalSettings.h (132479 => 132480)


--- trunk/Source/WebCore/testing/InternalSettings.h	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/testing/InternalSettings.h	2012-10-25 14:03:59 UTC (rev 132480)
@@ -77,6 +77,7 @@
         float m_originalTextAutosizingFontScaleFactor;
 #endif
         IntSize m_originalResolutionOverride;
+        String m_originalMediaTypeOverride;
 #if ENABLE(DIALOG_ELEMENT)
         bool m_originalDialogElementEnabled;
 #endif
@@ -126,6 +127,7 @@
     void setTextAutosizingWindowSizeOverride(int width, int height, ExceptionCode&);
     void setTextAutosizingFontScaleFactor(float fontScaleFactor, ExceptionCode&);
     void setResolutionOverride(int dotsPerCSSInchHorizontally, int dotsPerCSSInchVertically, ExceptionCode&);
+    void setMediaTypeOverride(const String& mediaType, ExceptionCode&);
     void setEnableScrollAnimator(bool enabled, ExceptionCode&);
     bool scrollAnimatorEnabled(ExceptionCode&);
     void setCSSExclusionsEnabled(bool enabled, ExceptionCode&);

Modified: trunk/Source/WebCore/testing/InternalSettings.idl (132479 => 132480)


--- trunk/Source/WebCore/testing/InternalSettings.idl	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebCore/testing/InternalSettings.idl	2012-10-25 14:03:59 UTC (rev 132480)
@@ -57,6 +57,7 @@
     void setTextAutosizingWindowSizeOverride(in long width, in long height) raises(DOMException);
     void setTextAutosizingFontScaleFactor(in float fontScaleFactor) raises(DOMException);
     void setResolutionOverride(in long dotsPerCSSInchHorizontally, in long dotsPerCSSInchVertically) raises(DOMException);
+    void setMediaTypeOverride(in DOMString mediaTypeOverride) raises(DOMException);
     void setEnableScrollAnimator(in boolean enabled) raises(DOMException);
     boolean scrollAnimatorEnabled() raises(DOMException);
     void setCSSExclusionsEnabled(in boolean enabled) raises(DOMException);

Modified: trunk/Source/WebKit2/ChangeLog (132479 => 132480)


--- trunk/Source/WebKit2/ChangeLog	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebKit2/ChangeLog	2012-10-25 14:03:59 UTC (rev 132480)
@@ -1,3 +1,14 @@
+2012-10-25  Mikhail Pozdnyakov  <[email protected]>
+
+        Add setMediaTypeOverride to window.internals.settings
+        https://bugs.webkit.org/show_bug.cgi?id=100249
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for WIN port.
+
+        * win/WebKit2.def:
+
 2012-10-25  KyungTae Kim  <[email protected]>
 
         [WK2][EFL] Add ewk_view_pagination_mode_set/get() APIs

Modified: trunk/Source/WebKit2/win/WebKit2.def (132479 => 132480)


--- trunk/Source/WebKit2/win/WebKit2.def	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/WebKit2/win/WebKit2.def	2012-10-25 14:03:59 UTC (rev 132480)
@@ -242,6 +242,7 @@
         ?setSuggestedValue@HTMLInputElement@WebCore@@QAEXABVString@WTF@@@Z
         ?setEditingValue@HTMLInputElement@WebCore@@QAEXABVString@WTF@@@Z
         ?setResolutionOverride@Settings@WebCore@@QAEXABVIntSize@2@@Z
+        ?setMediaTypeOverride@Settings@WebCore@@QAEXABVString@WTF@@@Z
         ?settings@Document@WebCore@@QBEPAVSettings@2@XZ
         ?settings@Frame@WebCore@@QBEPAVSettings@2@XZ
         ?setFixedElementsLayoutRelativeToFrame@Settings@WebCore@@QAEX_N@Z

Modified: trunk/Source/autotools/symbols.filter (132479 => 132480)


--- trunk/Source/autotools/symbols.filter	2012-10-25 13:22:19 UTC (rev 132479)
+++ trunk/Source/autotools/symbols.filter	2012-10-25 14:03:59 UTC (rev 132480)
@@ -175,6 +175,7 @@
 _ZN7WebCore8Settings24setStorageBlockingPolicyENS_14SecurityOrigin21StorageBlockingPolicyE;
 _ZN7WebCore8Settings37setFixedElementsLayoutRelativeToFrameEb;
 _ZN7WebCore8Settings21setResolutionOverrideERKNS_7IntSizeE;
+_ZN7WebCore8Settings20setMediaTypeOverrideERKN3WTF6StringE;
 _ZN7WebCore9FrameView17paintControlTintsEv;
 _ZN7WebCore9FrameView19scrollElementToRectEPNS_7ElementERKNS_7IntRectE;
 _ZN7WebCore22RuntimeEnabledFeatures31isMultipleShadowSubtreesEnabledE;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to