1. 19 May, 2013 1 commit
    • andersca@apple.com's avatar
      Remove link prerendering code · a82aee4a
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=116415
      
      Reviewed by Darin Adler.
      
      .:
      
      This code was only used by Chromium and is dead now.
      
      * Source/autotools/SetupWebKitFeatures.m4:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/JavaScriptCore:
      
      This code was only used by Chromium and is dead now.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * dom/Document.cpp:
      (WebCore::Document::Document):
      * dom/Document.h:
      (WebCore):
      (Document):
      * dom/EventNames.h:
      (WebCore):
      * html/HTMLLinkElement.cpp:
      * html/HTMLLinkElement.h:
      * html/LinkRelAttribute.cpp:
      (WebCore::LinkRelAttribute::LinkRelAttribute):
      * html/LinkRelAttribute.h:
      (LinkRelAttribute):
      * loader/LinkLoader.cpp:
      (WebCore::LinkLoader::~LinkLoader):
      (WebCore::LinkLoader::loadLink):
      (WebCore::LinkLoader::released):
      * loader/LinkLoader.h:
      (WebCore):
      (LinkLoader):
      * loader/LinkLoaderClient.h:
      (LinkLoaderClient):
      * loader/Prerenderer.cpp: Removed.
      * loader/Prerenderer.h: Removed.
      * loader/PrerendererClient.cpp: Removed.
      * loader/PrerendererClient.h: Removed.
      * platform/PrerenderClient.h: Removed.
      * platform/PrerenderHandle.h: Removed.
      
      Source/WebKit/blackberry:
      
      This code was only used by Chromium and is dead now.
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      
      Source/WebKit/mac:
      
      This code was only used by Chromium and is dead now.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      This code was only used by Chromium and is dead now.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      This code was only used by Chromium and is dead now.
      
      * wtf/FeatureDefines.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150356 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a82aee4a
  2. 13 May, 2013 1 commit
    • commit-queue@webkit.org's avatar
      WebProcess consuming very high CPU on linkedin.com · 77cff30e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=115601
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-05-13
      Reviewed by Andreas Kling.
      
      Disable WEB_TIMING_MINIMAL.
      Turn off window.performance and performance.now(). Some JS frameworks expect
      additional Web Timing APIs, when performance.now() is available.
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      * dom/EventTargetFactory.in:
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::~DOMWindow):
      (WebCore::DOMWindow::resetDOMWindowProperties):
      (WebCore):
      * page/DOMWindow.h:
      (DOMWindow):
      * page/DOMWindow.idl:
      * page/Performance.cpp:
      (WebCore::Performance::timing):
      * page/Performance.h:
      (Performance):
      * page/Performance.idl:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      * wtf/FeatureDefines.h:
      
      LayoutTests:
      
      * platform/mac/TestExpectations:
      * fast/js/global-constructors-attributes-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149999 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77cff30e
  3. 30 Apr, 2013 1 commit
    • commit-queue@webkit.org's avatar
      Animations fail to start on http://www.google.com/insidesearch/howsearchworks/thestory/ · 0d670bbf
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=111244
      
      Source/JavaScriptCore:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      Test: fast/dom/Window/web-timing-minimal-performance-now.html
      
      * Configurations/FeatureDefines.xcconfig:
      * WebCore.xcodeproj/project.pbxproj:
      * dom/EventTargetFactory.in:
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::~DOMWindow):
      (WebCore::DOMWindow::resetDOMWindowProperties):
      (WebCore):
      * page/DOMWindow.h:
      (DOMWindow):
      * page/DOMWindow.idl:
      * page/Performance.cpp:
      (WebCore):
      * page/Performance.h:
      (Performance):
      * page/Performance.idl:
      
      Source/WebKit/mac:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      * wtf/FeatureDefines.h:
      
      LayoutTests:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
      Reviewed by David Kilzer.
      
      Enable performance.now() as a minimal subset of Web Timing API.
      It returns DOMHighResTimeStamp, a monotonically increasing value representing the
      number of milliseconds from the start of the navigation of the current document.
      JS libraries use this API to check against the requestAnimationFrame() timestamp.
      
      We can test the monotonical behaviour of this API only. Checking whether the value
      actually represents the navigation start requires PerformanceTiming enabled.
      
      * fast/dom/Window/web-timing-minimal-performance-now-expected.txt: Added.
      * fast/dom/Window/web-timing-minimal-performance-now.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149359 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d670bbf
  4. 26 Apr, 2013 1 commit
  5. 25 Apr, 2013 1 commit
  6. 19 Apr, 2013 1 commit
    • commit-queue@webkit.org's avatar
      Remove unmaintained feature REQUEST_AUTOCOMPLETE · 37eff9d8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=114846
      
      Patch by Dan Beam <dbeam@chromium.org> on 2013-04-19
      Reviewed by Kent Tamura.
      
      Source/WebCore:
      
      * GNUmakefile.list.am: Remove AutocompleteErrorEvent.h include.
      * bindings/generic/RuntimeEnabledFeatures.cpp:
      (WebCore): Remove requestAutocomplete() runtime feature.
      * bindings/generic/RuntimeEnabledFeatures.h:
      (RuntimeEnabledFeatures): Remove requestAutocomplete() runtime feature.
      * dom/AutocompleteErrorEvent.h: Removed.
      * dom/AutocompleteErrorEvent.idl: Removed.
      * dom/EventNames.h: Remove `autocomplete` and `autocompleteerror` event names.
      (WebCore):
      * dom/EventNames.in: Remove `autocomplete` and `autocompleteerror` event names.
      * html/HTMLAttributeNames.in: Remove `onautocomplete` and `onautocompleteerror` form attributes.
      * html/HTMLFormElement.cpp: Remove requestAutocomplete() related code.
      (WebCore::HTMLFormElement::HTMLFormElement): Remove timer and event queue for requestAutocomplete() related events.
      (WebCore::HTMLFormElement::parseAttribute): Remove parsing of `onautocomplete` and `onautocompleterror`.
      * html/HTMLFormElement.h: Remove requestAutocomplete() related members.
      (HTMLFormElement):
      * html/HTMLFormElement.idl: Remove public requestAutocomplete() API method.
      * loader/EmptyClients.cpp: Remove stub implementation.
      (WebCore):
      * loader/EmptyClients.h: Remove stub interface.
      (EmptyFrameLoaderClient):
      * loader/FrameLoaderClient.h: Remove didRequestAutocomplete() from interface.
      (FrameLoaderClient):
      * page/DOMWindow.idl: Remove `AutocompleteErrorEvent` from window DOM interface.
      
      Source/WTF:
      
      * wtf/FeatureDefines.h: Remove REQUEST_AUTOCOMPLETE as a feature definition.
      
      LayoutTests:
      
      * fast/events/constructors/autocomplete-error-event-constructor-expected.txt: Removed.
      * fast/events/constructors/autocomplete-error-event-constructor.html: Removed.
      * fast/events/event-creation.html: Remove AutocompleteErrorEvent test code.
      * fast/forms/form-request-autocomplete-expected.txt: Removed.
      * fast/forms/form-request-autocomplete.html: Removed.
      * fast/js/constructor-length.html: Remove AutocompleteErrorEvent test code.
      * fast/js/script-tests/global-constructors.js: Remove AutocompleteErrorEvent constructor.
      * platform/blackberry/fast/js/constructor-length-expected.txt: Remove test expectations.
      * platform/gtk/fast/js/constructor-length-expected.txt: Remove test expectations.
      * platform/mac/fast/js/constructor-length-expected.txt: Remove test expectations.
      * platform/qt/fast/js/constructor-length-expected.txt: Remove test expectations.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37eff9d8
  7. 10 Apr, 2013 1 commit
  8. 08 Apr, 2013 1 commit
    • benjamin@webkit.org's avatar
      Remove HTML Notification · de455ba7
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=114231
      
      Reviewed by Ryosuke Niwa.
      
      Source/JavaScriptCore: 
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore: 
      
      The feature is dead. It was only kept in the tree because of chromium.
      
      * Configurations/FeatureDefines.xcconfig:
      * Modules/notifications/Notification.cpp:
      (WebCore):
      (WebCore::Notification::Notification):
      * Modules/notifications/Notification.h:
      (Notification):
      * Modules/notifications/NotificationCenter.h:
      (NotificationCenter):
      * Modules/notifications/NotificationCenter.idl:
      * page/FeatureObserver.h:
      
      Source/WebKit/blackberry: 
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      
      Source/WebKit/mac: 
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit/qt: 
      
      * WebCoreSupport/NotificationPresenterClientQt.cpp:
      (WebCore::NotificationPresenterClientQt::displayNotification):
      (WebCore::NotificationPresenterClientQt::cancel):
      (WebCore::NotificationPresenterClientQt::notificationClicked):
      (WebCore::NotificationPresenterClientQt::removeReplacedNotificationFromQueue):
      (WebCore::NotificationPresenterClientQt::dumpReplacedIdText):
      (WebCore::NotificationPresenterClientQt::dumpShowText):
      
      Source/WebKit2: 
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF: 
      
      * wtf/FeatureDefines.h:
      
      Tools: 
      
      * qmake/mkspecs/features/features.pri:
      
      LayoutTests: 
      
      * fast/notifications/notifications-with-permission-expected.txt:
      * fast/notifications/notifications-with-permission.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de455ba7
  9. 07 Apr, 2013 1 commit
    • ddkilzer@apple.com's avatar
      Remove the rest of SVG_DOM_OBJC_BINDINGS · 0cd46787
      ddkilzer@apple.com authored
      <http://webkit.org/b/114112>
      
      Reviewed by Geoffrey Garen.
      
      .:
      
      * Source/autotools/SetupWebKitFeatures.m4:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      - Remove references to ENABLE_SVG_DOM_OBJC_BINDINGS.
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Source/WebCore:
      
      * Configurations/WebCore.xcconfig:
      - Remove EXCLUDED_SOURCE_FILE_NAMES_SVG_DOM_OBJC_BINDINGS.  Note
        that DOMHTMLIFrameElementPrivate.h should not have been in
        this list because the class contained methods other than just
        -getSVGDocument.
      
      * WebCore.xcodeproj/project.pbxproj:
      - Remove DOMHTMLFrameElementPrivate.h since the only method it
        contained was -[DOMHTMLFrameElement getSVGDocument], which was
        part of the SVG DOM Objective-C bindings.
      
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/objc/DOMEvents.mm:
      (kitClass):
      * bindings/objc/ExceptionHandlers.mm:
      (WebCore::raiseDOMException):
      - Remove code in ENABLE(SVG_DOM_OBJC_BINDINGS).
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      - Remove reference to SVG_DOM_OBJC_BINDINGS.
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Source/WTF:
      
      * wtf/FeatureDefines.h:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      - Remove --svg-dom-objc-bindings switch.
      * qmake/mkspecs/features/features.pri:
      - Remove reference to ENABLE_SVG_DOM_OBJC_BINDINGS.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147878 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cd46787
  10. 30 Mar, 2013 1 commit
  11. 25 Mar, 2013 1 commit
    • tkent@chromium.org's avatar
      Rename ENABLE_INPUT_TYPE_DATETIME · 866ba1bd
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113254
      
      Reviewed by Kentaro Hara.
      
      Rename ENABLE_INPUT_TYPE_DATETIME to ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE.
      Actually I'd like to remove the code, but we shouldn't remove it yet
      because we shipped products with it on some platforms.
      
      .:
      
      * Source/autotools/SetupWebKitFeatures.m4:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      * bindings/generic/RuntimeEnabledFeatures.cpp:
      (WebCore):
      * bindings/generic/RuntimeEnabledFeatures.h:
      (RuntimeEnabledFeatures):
      * css/html.css:
      * html/DateTimeInputType.cpp:
      * html/DateTimeInputType.h:
      * html/InputType.cpp:
      (WebCore::createInputTypeFactoryMap):
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      
      Source/WebKit/chromium:
      
      * src/WebRuntimeFeatures.cpp:
      (WebKit::WebRuntimeFeatures::enableInputTypeDateTime):
      (WebKit::WebRuntimeFeatures::isInputTypeDateTimeEnabled):
      * tests/WebViewTest.cpp:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      * wtf/FeatureDefines.h:
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      * qmake/mkspecs/features/features.pri:
      
      WebKitLibraries:
      
      * win/tools/vsprops/FeatureDefines.props:
      * win/tools/vsprops/FeatureDefines.vsprops:
      * win/tools/vsprops/FeatureDefinesCairo.props:
      * win/tools/vsprops/FeatureDefinesCairo.vsprops:
      
      LayoutTests:
      
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146847 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      866ba1bd
  12. 08 Mar, 2013 1 commit
    • benjamin@webkit.org's avatar
      [Mac] Add a feature flag for 'view-mode' Media Feature, disable it on Mac · cc507c8c
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=111297
      
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebCore: 
      
      The 'view-mode' Media Feature spec is implemented in WebCore but
      there is no WebKit support for it on Mac.
      Because of this, we always lie and report a windowed view mode.
      
      This patch add a feature flag for the feature and disable it on
      Mac so that we stop reporting incorrect default values.
      
      * WebCore.exp.in:
      * css/CSSValueKeywords.in:
      * css/MediaFeatureNames.h:
      (MediaFeatureNames):
      * css/MediaQueryEvaluator.cpp:
      * css/MediaQueryExp.cpp:
      (WebCore::featureWithCSSValueID):
      (WebCore::featureWithoutValue):
      * page/Page.cpp:
      (WebCore::Page::Page):
      * page/Page.h:
      (Page):
      
      Source/WebKit2: 
      
      * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
      * WebProcess/WebPage/WebPage.cpp:
      * WebProcess/WebPage/WebPage.h:
      
      Source/WTF: 
      
      * wtf/FeatureDefines.h: Add a new feature flag for the view-mode
      CSS media: ENABLE_VIEW_MODE_CSS_MEDIA.
      
      Tools: 
      
      * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
      (WTR::TestRunner::setViewModeMediaFeature):
      
      LayoutTests: 
      
      * platform/mac/TestExpectations:
      Mark the view-mode tests as failing to track any regression
      or crash in this area.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cc507c8c
  13. 06 Mar, 2013 1 commit
    • jer.noble@apple.com's avatar
      Default mouse cursor behavior should be auto-hide for full screen video with custom controls · e0173750
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107601
      
      Reviewed by Beth Dakin.
      
      Source/WebCore:
      
      Test: fullscreen/video-cursor-auto-hide.html
      
      To facilitate automatically hiding the mouse cursor after a certain amount of idle mouse
      time, add a new CSS property '-webkit-cursor-visibility', and handle that value inside of
      EventHandler. When that value is present, the EventHandler will start a timer which, when
      fired, will set the view's cursor to the None cursor. Subsequent mouse moves will either
      cancel the timer, or reset the auto-hide timer.
      
      Add a new CSS property, '-webkit-cursor-visibility':
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseValue):
      * css/CSSPrimitiveValueMappings.h:
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
      (WebCore::CSSPrimitiveValue::operator ECursorVisibility):
      * css/CSSProperty.cpp:
      (WebCore::CSSProperty::isInheritedProperty):
      * css/CSSPropertyNames.in:
      * css/CSSValueKeywords.in:
      * css/StyleBuilder.cpp:
      (WebCore::StyleBuilder::StyleBuilder):
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::applyProperty):
      
      Add a rule for video descendants of full screen elements to auto-hide the cursor on hover:
      * css/fullscreen.css:
      (:-webkit-full-screen video:hover):
      
      Add a new timer, m_autoHideCursorTimer, to control resetting the view's cursor to None after
      enough mouse idle time has passed.
      * page/EventHandler.cpp:
      (WebCore::EventHandler::EventHandler):
      (WebCore::EventHandler::~EventHandler):
      (WebCore::EventHandler::clear):
      (WebCore::EventHandler::selectCursor):
      (WebCore::EventHandler::startAutoHideCursorTimer):
      (WebCore::EventHandler::cancelAutoHideCursorTimer):
      (WebCore::EventHandler::autoHideCursorTimerFired):
      * page/EventHandler.h:
      
      Make FrameView::isActive() a public function (like it is in its superclass).
      * page/FrameView.h:
      (FrameView):
      
      Move the definition for timeWithoutMouseMovementBeforeHidingControls from page->theme()
      to page->settings() and allow that setting to be overridden in InternalSettings for
      testing purposes:
      * page/Settings.cpp:
      (WebCore::Settings::Settings):
      * page/Settings.h:
      (WebCore::Settings::setTimeWithoutMouseMovementBeforeHidingControls):
      (WebCore::Settings::timeWithoutMouseMovementBeforeHidingControls):
      * rendering/RenderTheme.h:
      * testing/InternalSettings.cpp:
      (WebCore::InternalSettings::Backup::Backup):
      (WebCore::InternalSettings::Backup::restoreTo):
      (WebCore::InternalSettings::setTimeWithoutMouseMovementBeforeHidingControls):
      * testing/InternalSettings.h:
      (InternalSettings):
      * testing/InternalSettings.idl:
      * html/shadow/MediaControls.cpp:
      (WebCore::MediaControls::startHideFullscreenControlsTimer):
      
      Add support to FeatureObserver for CURSOR_VISIBILITY:
      * page/FeatureObserver.h:
      
      Enable the feature flag:
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit:
      
      Enable the CURSOR_VISIBILITY feature.
      
      * WebKit.vcxproj/FeatureDefines.props:
      
      Source/WebKit/mac:
      
      Enable the CURSOR_VISIBILITY feature.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      Enable the CURSOR_VISIBILITY feature.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      Enable the CURSOR_VISIBILITY feature.
      
      * wtf/FeatureDefines.h:
      
      LayoutTests:
      
      * fullscreen/video-cursor-auto-hide-expected.txt: Added.
      * fullscreen/video-cursor-auto-hide.html: Added.
      
      Add an expected failing result in platforms which do not enable CURSOR_VISIBILITY.
      * platform/chromium/TestExpectations:
      * platform/efl/TestExpectations:
      * platform/gtk/TestExpectations:
      * platform/qt/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145003 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e0173750
  14. 04 Mar, 2013 2 commits
    • l.gombos@samsung.com's avatar
      JSC_OBJC_API_ENABLED should be removed from FeatureDefines.h · 0264c9ef
      l.gombos@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=111269
      
      Reviewed by Mark Hahnenberg.
      
      Source/WebKit/mac:
      
      Include JavaScriptCore/JSBase.h for the definition of JSC_OBJC_API_ENABLED.
      
      * WebView/WebDelegateImplementationCaching.h:
      
      Source/WTF:
      
      JSC_OBJC_API_ENABLED flag was added to FeatureDefines.h (r143637)
      so that it could be used in WebCore.exp.in to determine whether
      or not we should be exporting certain symbols based on whether
      the WebKit-related portion of the JSC ObjC API was enabled.
      
      It turned out conditionally including certain symbols didn't
      work when building fat binaries, so it's not even necessary any more.
      
      * wtf/FeatureDefines.h: Remove JSC_OBJC_API_ENABLED.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144662 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0264c9ef
    • commit-queue@webkit.org's avatar
      Add build flag for FontLoader · 375fe100
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=111289
      
      Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2013-03-04
      Reviewed by Benjamin Poulain.
      
      Add ENABLE_FONT_LOAD_EVENTS build flag (disabled by default).
      
      .:
      
      * Source/autotools/SetupWebKitFeatures.m4:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit/chromium:
      
      * features.gypi:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      * wtf/FeatureDefines.h:
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      * qmake/mkspecs/features/features.pri:
      
      WebKitLibraries:
      
      * win/tools/vsprops/FeatureDefines.vsprops:
      * win/tools/vsprops/FeatureDefinesCairo.vsprops:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144614 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      375fe100
  15. 25 Feb, 2013 1 commit
    • jer.noble@apple.com's avatar
      Normalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files. · 9c21925e
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=110806
      
      Source/WebCore:
      
      Reviewed by Alexey Proskuryakov.
      
      Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Fix some build errors which occurred when both ENCRYPTED_MEDIA and
      ENCRYPTED_MEDIA_V2 were enabled:
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::webkitGenerateKeyRequest):
      (WebCore::HTMLMediaElement::webkitAddKey):
      * page/DOMWindow.idl:
      
      Source/WebKit/mac:
      
      Reviewed by Alexey Proskuryakov.
      
      Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.
      
      Reviewed by Alexey Proskuryakov.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      Reviewed by Alexey Proskuryakov.
      
      Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.
      
      * wtf/FeatureDefines.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9c21925e
  16. 21 Feb, 2013 1 commit
    • mhahnenberg@apple.com's avatar
      Objective-C API: Need a way to use the Objective-C JavaScript API with WebKit · f0712f94
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=106059
      
      Source/JavaScriptCore: 
      
      Reviewed by Geoffrey Garen.
              
      * API/JSBase.h: Renamed enable flag for API.
      * API/JSBlockAdaptor.h: Using new flag.
      * API/JSBlockAdaptor.mm: Ditto.
      * API/JSContext.h: Add convenience C API conversion function for JSGlobalContextRef.
      * API/JSContext.mm: 
      (-[JSContext JSGlobalContextRef]): Implementation of C API convenience function.
      (-[JSContext initWithVirtualMachine:]): We don't use the m_apiData field any more.
      (-[JSContext initWithGlobalContextRef:]): init method for allocating new JSContexts given a JSGlobalContextRef.
      (-[JSContext dealloc]): No more m_apiData.
      (-[JSContext wrapperForObjCObject:]): Renamed wrapperForObject. 
      (-[JSContext wrapperForJSObject:]): Fetches or allocates the JSValue for the specified JSValueRef in this JSContext.
      (+[JSContext contextWithGlobalContextRef:]): Helper function to grab the lightweight JSContext wrapper for a given
      JSGlobalContextRef from the global wrapper cache or allocate a new one if there isn't already one.
      * API/JSContextInternal.h: New flag, new method declaration for initWithGlobalContextRef.
      * API/JSExport.h: New flag.
      * API/JSValue.h: New flag and new C API convenience method.
      * API/JSValue.mm:
      (-[JSValue JSValueRef]): Implementation of the C API convenience method.
      (objectToValueWithoutCopy):
      (+[JSValue valueWithValue:inContext:]): We now ask the JSContext for an Objective-C JSValue wrapper, which it can cache
      in its internal JSWrapperMap.
      * API/JSValueInternal.h:
      * API/JSVirtualMachine.h:
      * API/JSVirtualMachine.mm: Added global cache that maps JSContextGroupRef -> JSVirtualMachine lightweight wrappers.
      (wrapperCacheLock):
      (initWrapperCache):
      (+[JSVMWrapperCache addWrapper:forJSContextGroupRef:]):
      (+[JSVMWrapperCache wrapperForJSContextGroupRef:]):
      (-[JSVirtualMachine init]):
      (-[JSVirtualMachine initWithContextGroupRef:]):
      (-[JSVirtualMachine dealloc]):
      (+[JSVirtualMachine virtualMachineWithContextGroupRef:]):
      (-[JSVirtualMachine contextForGlobalContextRef:]):
      (-[JSVirtualMachine addContext:forGlobalContextRef:]):
      * API/JSVirtualMachineInternal.h:
      * API/JSWrapperMap.h:
      * API/JSWrapperMap.mm:
      (-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]): We use the JSObjectSetPrototype C API call because 
      setting the __proto__ property causes all sorts of bad things to happen behind the scenes, which can cause crashes based on 
      when it gets called.
      (-[JSWrapperMap initWithContext:]):
      (-[JSWrapperMap jsWrapperForObject:]):
      (-[JSWrapperMap objcWrapperForJSValueRef:]):
      * API/JavaScriptCore.h:
      * API/ObjCCallbackFunction.h:
      * API/ObjCCallbackFunction.mm:
      (ObjCCallbackFunction::ObjCCallbackFunction): We never actually should have retained the target in the case that we had a 
      block as a callback. Blocks are initially allocated on the stack and are only moved to the heap if we call their copy method.
      Retaining the block on the stack was a bad idea because if that stack frame ever went away and we called the block later, 
      we'd crash and burn.
      (ObjCCallbackFunction::setContext): We need a new setter for when the weak reference to a JSContext inside an ObjCCallbackFunction
      disappears, we can allocate a new one in its place.
      (ObjCCallbackFunction):
      (objCCallbackFunctionCallAsFunction): Reset the callback's context if it's ever destroyed.
      (objCCallbackFunctionForInvocation): Again, don't set the __proto__ property because it uses black magic that can cause us to crash
      depending on when this is called.
      (objCCallbackFunctionForBlock): Here is where we copy the block to the heap when we're first creating the callback object for it.
      * API/tests/testapi.c:
      (main):
      * API/tests/testapi.mm: We're going to get rid of the automatic block conversion, since that is causing leaks. I changed it 
      here in this test just so that it wouldn't mask any other potential leaks. Also modified some of the tests since JSContexts are 
      just lightweight wrappers now, we're not guaranteed to get the same pointer back from the call to [JSValue context] as the one 
      that the value was created in.
      (-[TestObject callback:]):
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * runtime/JSGlobalData.cpp:
      (JSC::JSGlobalData::JSGlobalData): No more m_apiData.
      * runtime/JSGlobalData.h: Ditto.
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::JSGlobalObject): Ditto.
      * runtime/JSGlobalObject.h:
      
      Source/WebCore: 
      
      Reviewed by Geoffrey Garen.
      
      * WebCore.exp.in:
      * bindings/js/JSDOMWindowShell.cpp:
      (WebCore::JSDOMWindowShell::setWindow): Since we're basically abandoning a JSDOMWindow here, we call
      garbageCollectSoon().
      * bindings/js/JSDOMWindowShell.h:
      * bindings/js/ScriptController.h: New function to get the JSContext for the global object of the current main world.
      * bindings/js/ScriptControllerMac.mm: 
      (WebCore::ScriptController::javaScriptContext): Ditto.
      * bindings/objc/WebScriptObject.h: Added ifdef guards. Also new convenience conversion function for the JSC Obj-C API.
      * bindings/objc/WebScriptObject.mm: JSC::JSValue and JSValue conflict with one another, so we have to be more specific.
      (-[WebScriptObject _globalContextRef]): Useful helper function for getting the JSGlobalContextRef of a particular WebScriptObject.
      (-[WebScriptObject callWebScriptMethod:withArguments:]):
      (-[WebScriptObject evaluateWebScript:]):
      (-[WebScriptObject valueForKey:]):
      (-[WebScriptObject webScriptValueAtIndex:]):
      (+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
      (-[WebScriptObject JSValue]): Implementation of convenience WebScriptObject conversion function to new Objective-C API.
      * bindings/objc/WebScriptObjectPrivate.h:
      
      Source/WebKit/mac: 
      
      Reviewed by Geoffrey Garen.
      
      Addition of appropriate delegate callbacks and support to the WebKit API.
      
      * WebCoreSupport/WebFrameLoaderClient.mm:
      * WebView/WebDelegateImplementationCaching.h:
      (WebFrameLoadDelegateImplementationCache):
      * WebView/WebFrame.h:
      * WebView/WebFrame.mm:
      (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
      (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
      (-[WebFrame _javaScriptContextForScriptWorld:]):
      (-[WebFrame javaScriptContext]):
      * WebView/WebFrameLoadDelegate.h:
      * WebView/WebFramePrivate.h:
      * WebView/WebScriptDebugDelegate.mm:
      (-[WebScriptCallFrame _convertValueToObjcValue:JSC::]):
      (-[WebScriptCallFrame exception]):
      (-[WebScriptCallFrame evaluateWebScript:]):
      * WebView/WebScriptWorld.h:
      * WebView/WebScriptWorld.mm:
      (+[WebScriptWorld scriptWorldForJavaScriptContext:]):
      * WebView/WebView.mm:
      (-[WebView _cacheFrameLoadDelegateImplementations]):
      (aeDescFromJSValue):
      (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
      (-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
      
      Source/WTF: 
      
      Reviewed by Geoffrey Garen.
      
      * wtf/FeatureDefines.h: Added enable flag for JSC Objective-C API so it can be used in
      export files.
      
      Tools: 
      
      Reviewed by Geoffrey Garen.
      
      Added new tests for the WebKit API portion of the JSC Objective-C API.
      
      * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
      * TestWebKitAPI/Tests/mac/JSContextBackForwardCache1.html: Added.
      * TestWebKitAPI/Tests/mac/JSContextBackForwardCache2.html: Added.
      * TestWebKitAPI/Tests/mac/WebViewDidCreateJavaScriptContext.mm: Added.
      (-[MyConsole log:]):
      (-[MyConsole printHelloWorld]):
      (-[MyConsole add:to:]):
      (-[DidCreateJavaScriptContextFrameLoadDelegate webView:didFinishLoadForFrame:]):
      (-[DidCreateJavaScriptContextFrameLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
      (TestWebKitAPI):
      (TestWebKitAPI::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f0712f94
  17. 20 Feb, 2013 1 commit
    • krit@webkit.org's avatar
      Enable CANVAS_PATH flag · 8a0aef2b
      krit@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=108508
      
      Reviewed by Simon Fraser.
      
      Enable CANVAS_PATH flag on trunk.
      
      .:
      
      Existing tests cover the feature.
      
      * Source/cmake/WebKitFeatures.cmake:
      
      Source/JavaScriptCore:
      
      Existing tests cover the feature.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      Existing tests cover the feature.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit/chromium:
      
      * features.gypi:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      
      LayoutTests:
      
      Existing tests cover the feature.
      
      * fast/canvas/canvas-path-object-expected.txt:
      * inspector/profiler/canvas2d/canvas2d-api-changes.html:
      * platform/chromium/TestExpectations:
      * platform/efl/TestExpectations:
      * platform/gtk/TestExpectations:
      * platform/mac/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8a0aef2b
  18. 18 Feb, 2013 2 commits
    • ch.dumez@sisa.samsung.com's avatar
      Move ENABLE macros for WebCore out from Platform.h · 501b4d3f
      ch.dumez@sisa.samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=105735
      
      Unreviewed, build fix when NETSCAPE_PLUGIN_API is disabled.
      
      Enable ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH even if
      NETSCAPE_PLUGIN_API is disabled (Qt, Efl, GTK, WX ports).
      
      Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-18
      
      * wtf/FeatureDefines.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      501b4d3f
    • commit-queue@webkit.org's avatar
      Move ENABLE macros for WebCore out from Platform.h · 65941504
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=105735
      
      Source/WebKit/chromium:
      
      Move the chromium specific WebCore ENABLE macro definitions
      from Platform.h to features.gypi.
      
      Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-18
      Reviewed by Darin Adler and Benjamin Poulain.
      
      * features.gypi: Set ENABLE_SUBPIXEL_LAYOUT to 1.
      
      Source/WTF:
      
      Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-02-18
      Reviewed by Darin Adler and Benjamin Poulain.
      
      Introduce FeatureDefines.h by combining the existing rules from
      Platform.h and adding new rules for all the ENABLE flags that are
      listed in the FeatureFlags wiki.
      
      The new rules are not used at the moment by any ports
      as the port specific build systems already define these flags
      so the !defined() guard will prevent redefinition of the macros.
      
      * GNUmakefile.list.am: Add FeatureDefines.h.
      * WTF.gypi: Ditto.
      * WTF.pro: Ditto.
      * WTF.vcproj/WTF.vcproj: Ditto.
      * WTF.xcodeproj/project.pbxproj: Ditto.
      * wtf/CMakeLists.txt: Ditto.
      * wtf/FeatureDefines.h: Added.
      * wtf/Platform.h: Move macro definitions to FeatureDefines.h.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143211 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      65941504