Timeline
Sep 19, 2014:
- 11:49 PM Changeset in webkit [173791] by
-
- 4 edits in trunk/Source/WebCore
[EME][Mac] Support secure proof of key release in the com.apple.fps.2_0 keysystem.
https://bugs.webkit.org/show_bug.cgi?id=136898
Reviewed by Eric Carlson.
Add support for proof of key release to the CDM by supporting a new "mime" type called
"keyrelease". When a session of type "keyrelease" is created, the initData is the server
certificate, the keyMessage contains the first stored proof of key release if present,
and closing the session will remove that proof from storage.
- platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsKeySystemAndMimeType):
- platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:
- platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::generateKeyRequest):
(WebCore::CDMSessionMediaSourceAVFObjC::releaseKeys):
(WebCore::sessionStorageDirectory):
(WebCore::CDMSessionMediaSourceAVFObjC::update):
(WebCore::CDMSessionMediaSourceAVFObjC::generateKeyReleaseMessage):
- 11:02 PM Changeset in webkit [173790] by
-
- 3 edits in trunk/Source/WebCore
[Media][Mac] Buffered range slides around as you resize a window
https://bugs.webkit.org/show_bug.cgi?id=136960
Reviewed by Dean Jackson.
Rather than using a canvas as the background image for the timeline slider, use a generated SVG image
to represent the buffered ranges.
- Modules/mediacontrols/mediaControlsApple.css:
(audio::-webkit-media-controls-timeline):
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.createControls):
(Controller.prototype.updateProgress):
- 10:46 PM Changeset in webkit [173789] by
-
- 2 edits in trunk/Tools
JSStringRef leak on the leaks bot allocation under selectTextWithCriteriaCallback
https://bugs.webkit.org/show_bug.cgi?id=136974
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-19
Reviewed by Chris Fleizach.
- DumpRenderTree/AccessibilityUIElement.cpp:
(selectTextWithCriteriaCallback):
Be sure to release the string if it was allocated.
- 8:07 PM Changeset in webkit [173788] by
-
- 2 edits in trunk/Source/WebKit2
WebContent crash in WebKit::WebPage::expandedRangeFromHandle
https://bugs.webkit.org/show_bug.cgi?id=136969
Reviewed by David Kilzer.
The crash was caused by m_currentBlockSelection and frame.selection().selection().toNormalizedRange()
both being null and the subsequent lines of code assuming currentRange to be not null.
Replace the assertion by an early exit since the range could be null here.
In the future, we should figure out if there are other things we need to do in addition
to checking the nullity when this race condition is hit.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
- 8:01 PM Changeset in webkit [173787] by
-
- 2 edits in trunk/Source/JavaScriptCore
Leak of mallocs under StructureSet::OutOfLineList::create
https://bugs.webkit.org/show_bug.cgi?id=136970
Reviewed by Filip Pizlo.
addOutOfLine should free the old list when expanding the capacity.
- bytecode/StructureSet.cpp:
(JSC::StructureSet::addOutOfLine):
- 7:44 PM Changeset in webkit [173786] by
-
- 2 edits in trunk/Tools
build.webkit.org/dashboard: Pending builds don't show up when there is a commit with no comments
https://bugs.webkit.org/show_bug.cgi?id=136966
Reviewed by Daniel Bates.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac.prototype._convertCommitInfoElementToObject): Tolerate these horrible commits.
- 7:33 PM Changeset in webkit [173785] by
-
- 6 edits2 adds in trunk
[CoordinatedGraphics][EFL] window.scrollTo(x, y) doesn't work when fixed layout is enabled
https://bugs.webkit.org/show_bug.cgi?id=136917
Reviewed by Darin Adler.
Source/WebCore:
When fixed layout is enabled, scrollTo doesn't work on EFL port with coordinated graphics.
Since updateScrollbars() doesn't update scroll position when delegatesScrolling() is enabled.
To fix this issue, EFL port should update scroll position based on WK2 port. This patch
update scroll position in FrameView::requestScrollPositionUpdate() as Mac port.
TestWebKitAPI: Tools/TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo
- page/FrameView.cpp:
(WebCore::FrameView::requestScrollPositionUpdate):
Tools:
Added WKViewScrollTo.cpp and scrollTo.html to test this issue.
- TestWebKitAPI/PlatformEfl.cmake:
- TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Added.
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Added.
- 6:10 PM Changeset in webkit [173784] by
-
- 11 edits4 adds in trunk
Latching in iframes is not working as expected
https://bugs.webkit.org/show_bug.cgi?id=136729
<rdar://problem/18370549>
Reviewed by Simon Fraser.
Source/WebCore:
Test: platform/mac/fast/scrolling/scrolling-iframe-100pct.html
Correct latching behavior by moving the concept of latching from the event handler to the main frame.
The event handlers are per-document, and can improperly latch to the iframe element (rather than the
scrollable content of the iframe) resulting in incorrect behavior.
Also move the wheel event delta tracking to the main frame, as this is similarly "top-level" in nature.
- WebCore.vcxproj/WebCore.vcxproj: Add new LatchedState class.
- WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler): Update constructor after moving some members to the new
LatchedState object.
(WebCore::EventHandler::clear): Call 'clear' on the LatchedState class.
(WebCore::EventHandler::platformRecordWheelEvent): Update for new LatchedState class.
(WebCore::EventHandler::handleWheelEvent): Ditto.
(WebCore::EventHandler::clearLatchedState): Ditto.
(WebCore::EventHandler::defaultWheelEventHandler): Ditto.
- page/EventHandler.h:
- page/LatchedState.cpp: Added.
(WebCore::LatchedState::LatchedState):
(WebCore::LatchedState::~LatchedState):
(WebCore::LatchedState::clear):
(WebCore::LatchedState::setWheelEventElement):
(WebCore::LatchedState::setWidgetIsLatched):
(WebCore::LatchedState::setPreviousWheelScrolledElement):
(WebCore::LatchedState::setScrollableContainer):
- page/LatchedState.h: Added.
(WebCore::LatchedState::wheelEventElement):
(WebCore::LatchedState::frame):
(WebCore::LatchedState::setFrame):
(WebCore::LatchedState::widgetIsLatched):
(WebCore::LatchedState::previousWheelScrolledElement):
(WebCore::LatchedState::scrollableContainer):
(WebCore::LatchedState::startedGestureAtScrollLimit):
(WebCore::LatchedState::setStartedGestureAtScrollLimit):
- page/MainFrame.cpp:
(WebCore::MainFrame::MainFrame): Update for new members (LatchedState and WheelEventDeltaTracker)
- page/MainFrame.h:
- page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::platformPrepareForWheelEvents): Use mainFrame-located latching information.
(WebCore::EventHandler::platformRecordWheelEvent): Use mainFrame-located wheel event delta tracking.
(WebCore::EventHandler::platformCompleteWheelEvent): Make sure to use the latched frame as well as
the latched element so that events get routed properly.
(WebCore::EventHandler::platformCompletePlatformWidgetWheelEvent): Update for new mainFrame
location for latched state information.
LayoutTests:
- platform/mac/fast/scrolling/scroll-iframe-webkit1-latching-bug-expected.txt: Added.
- platform/mac/fast/scrolling/scroll-iframe-webkit1-latching-bug.html: Added.
- 5:11 PM Changeset in webkit [173783] by
-
- 4 edits in trunk/Source/WebCore
Minimize virtual function calls in MarkupAccumulator
https://bugs.webkit.org/show_bug.cgi?id=136957
Reviewed by Benjamin Poulain.
This patch minimizes the number of virtual function calls in
MarkupAccumulator by:
- De-virtualizing MarkupAccumulator::appendString(), which is never overridden
- Having MarkupAccumulator::appendEndTag() virtual function take an Element in argument instead of a Node, as it only applies to Element. Also add a non-virtual overload that takes a Node in argument and that does the isElementNode() check so that we don't need to explicitly do the check at each call site.
No new tests, no behavior change.
- editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendEndTag):
(WebCore::MarkupAccumulator::shouldSelfClose):
(WebCore::MarkupAccumulator::appendEndMarkup):
- editing/MarkupAccumulator.h:
(WebCore::MarkupAccumulator::appendEndTag):
- page/PageSerializer.cpp:
(WebCore::SerializerMarkupAccumulator::appendEndTag):
- 5:05 PM Changeset in webkit [173782] by
-
- 2 edits in trunk/Source/WebCore
[iOS] ASSERTION FAILED: WTF::isMainThread() in WebCore::memoryCache() when using WebKit1
https://bugs.webkit.org/show_bug.cgi?id=136962
<rdar://problem/18342344>
Reviewed by Geoffrey Garen.
The disk cache monitor callback code was being executed on the main thread. This is wrong
when the web thread is being used in WebKit1 on iOS. The code needs to run on the web
thread. Use WebThreadRun to dispatch the block to the web thread. This works for WebKit2 as
well since when web thread is not being used, WebThreadRun invokes the block directly.
- loader/cocoa/DiskCacheMonitorCocoa.mm:
(WebCore::DiskCacheMonitor::DiskCacheMonitor):
- 4:10 PM Changeset in webkit [173781] by
-
- 5 edits in branches/safari-600.1.17-branch/Source
Versioning.
- 4:08 PM Changeset in webkit [173780] by
-
- 1 copy in tags/Safari-600.1.17.2
New Tag.
- 4:05 PM Changeset in webkit [173779] by
-
- 1 edit in branches/safari-600.1.17-branch/WebKitLibraries/ChangeLog
Correct Radar to <rdar://problem/18375370>
- 4:04 PM Changeset in webkit [173778] by
-
- 2 edits in branches/safari-600.1.17-branch/WebKitLibraries
Merge r173768. <rdar://problem/173768>
- 3:59 PM Changeset in webkit [173777] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix; pass duration into the lambda.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
- 3:30 PM Changeset in webkit [173776] by
-
- 15 edits in trunk/Source
Multithreaded WebGL is a bad idea - remove it
https://bugs.webkit.org/show_bug.cgi?id=136964
<rdar://problem/18399858>
Reviewed by Brent Fulgham.
Source/WebCore:
We should not allow multithreaded GL access. Remove the
feature.
- html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::create):
- page/Settings.in:
- platform/graphics/GraphicsContext3D.h:
(WebCore::GraphicsContext3D::Attributes::Attributes):
- platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D):
Source/WebKit/mac:
Remove the setting to allow multithreaded WebGL.
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences multithreadedWebGLEnabled]): Deleted.
(-[WebPreferences setMultithreadedWebGLEnabled:]): Deleted.
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Source/WebKit2:
Remove the setting to allow multithreaded WebGL.
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetMultithreadedWebGLEnabled): Deleted.
(WKPreferencesGetMultithreadedWebGLEnabled): Deleted.
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
- 3:20 PM Changeset in webkit [173775] by
-
- 5 edits in branches/Safari-600.1.4.10-branch/Source
Bump versioning
- 2:41 PM Changeset in webkit [173774] by
-
- 1 move in tags/Safari-600.1.4.11.9
Fix tag name typo
- 2:39 PM Changeset in webkit [173773] by
-
- 1 copy in tags/safari-600.1.4.11.9
Tagging 600.1.4.11.9
- 2:25 PM Changeset in webkit [173772] by
-
- 2 edits in branches/safari-600.1.4.11-branch/Source/WebKit2
Merge r173722. <rdar://problem/18389146>
- 1:53 PM Changeset in webkit [173771] by
-
- 2 edits in trunk/Source/WebCore
[MSE][Mac] work around AVSampleBufferRenderSynchronizer early callbacks
https://bugs.webkit.org/show_bug.cgi?id=136958
Reviewed by Jer Noble.
No new tests, we have been unable to come up with a test case that reproduces
this issue reliably.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged): Set the synchronizer
time to duration when the duration time observer is called early. Add more logging.
- 1:26 PM Changeset in webkit [173770] by
-
- 3 edits in trunk/Source/WebCore
CSS JIT: allocate the minimum required register count in debug
https://bugs.webkit.org/show_bug.cgi?id=136933
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-19
Reviewed by Andreas Kling.
It is hard to catch bugs of minimumRegisterRequirements() because every CPU has a different
number of registers available by default.
This patch aims at improving testing by creating artificial register pressure when running
in debug. When running in debug, we no longer allocate all the available registers right away.
Instead, we allocate just enough to satisfy minimumRegisterRequirements().
The expectation with this is that under-allocation would be detected quicker since they would
crash debug builds.
- cssjit/RegisterAllocator.h:
(WebCore::RegisterAllocator::RegisterAllocator):
(WebCore::RegisterAllocator::reserveCallerSavedRegisters):
(WebCore::RegisterAllocator::availableRegisterCount): Deleted.
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
- 1:26 PM Changeset in webkit [173769] by
-
- 3 edits in trunk/Source/WebCore
Add a size check for CSSSelector
https://bugs.webkit.org/show_bug.cgi?id=136882
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-19
Reviewed by Christophe Dumez.
- css/CSSSelector.cpp:
- 1:19 PM Changeset in webkit [173768] by
-
- 2 edits in trunk/WebKitLibraries
[Win] Turn off SSE Instructions for 32-bit Builds
https://bugs.webkit.org/show_bug.cgi?id=136959
<rdar://problem/18375370>
Reviewed by Dean Jackson.
- win/tools/vsprops/common.props: Conditionally exclude the enhanced (SSE) instruction
set when building for 32-bit Windows. Otherwise, continue using SSE.
- 11:48 AM Changeset in webkit [173767] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r173464): It broke the !ENABLE(PICTURE_SIZES) build
https://bugs.webkit.org/show_bug.cgi?id=136942
Reviewed by Simon Fraser.
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute):
- 11:43 AM Changeset in webkit [173766] by
-
- 9 edits in trunk/Source
Provide a default argument for the most commonly used HitTestRequest variant
https://bugs.webkit.org/show_bug.cgi?id=136653
Reviewed by Darin Adler.
Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
and change call sites using the default flags to use a HitTestRequest temporary.
Source/WebCore:
- dom/TreeScope.cpp:
(WebCore::nodeFromPoint):
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::contains):
- page/DragController.cpp:
(WebCore::elementUnderMouse):
- page/EventHandler.cpp:
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::handleMousePressEvent):
- rendering/HitTestRequest.h:
(WebCore::HitTestRequest::HitTestRequest):
Source/WebKit2:
- WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
- 11:33 AM Changeset in webkit [173765] by
-
- 20 edits in trunk/Source
Allow DOM methods to return references instead of pointers
https://bugs.webkit.org/show_bug.cgi?id=136931
Source/WebCore:
Reviewed by Sam Weinig.
It is common practice in WebKit to have methods return a reference
instead of a pointer if the pointer can never be null. However, this
unfortunately did not work for DOM methods (functions called by JS
bindings). This prevented further refactoring.
This patch brings support for having DOM methods to return references
instead of pointers when the pointer cannot be null. The generated
bindings were calling WTF::getPtr() on the pointer type returned by
the implementation already (in case it was a smart pointer type).
This patch leverages this by having WTF::getPtr() convert reference
arguments into raw pointers.
This patch also updates a few DOM methods on Document and Element
classes to return a reference instead of a pointer, to test the change.
There are likely more DOM methods that can be updated though.
No new tests, no behavior change.
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::classList):
- bindings/js/JSDOMBinding.h:
(WTF::getPtr): Deleted.
- dom/Document.cpp:
(WebCore::Document::implementation):
(WebCore::Document::webkitGetNamedFlows):
(WebCore::Document::namedFlows):
(WebCore::Document::setXMLVersion):
(WebCore::Document::setXMLStandalone):
(WebCore::Document::securityPolicy):
(WebCore::Document::styleSheets):
- dom/Document.h:
(WebCore::Document::timing):
- dom/Element.cpp:
(WebCore::Element::classList):
(WebCore::Element::dataset):
- dom/Element.h:
- html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlPanelElement::setPosition):
(WebCore::MediaControlPanelElement::resetPosition):
(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
- html/track/VTTRegion.cpp:
(WebCore::VTTRegion::displayLastTextTrackCueBox):
(WebCore::VTTRegion::willRemoveTextTrackCueBox):
- inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getAllStyleSheets):
(WebCore::InspectorCSSAgent::getNamedFlowCollection):
- page/PerformanceTiming.cpp:
(WebCore::PerformanceTiming::documentTiming):
- rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::ensureRenderFlowThreadWithName):
Source/WTF:
Add support for having WTF::getPtr() transform reference arguments
into raw pointers so that DOM methods can now return references when
appropriate and so that the generated bindings code can handle this
via WTF::getPtr().
This patch had to alter the way getPtr() was overloaded for smart
pointer types so that we don't call &p on smart pointers but p.get().
This was needed because the new WTF::getPtr(T&) was being called for
RefPtr<T> arguments instead of the getPtr(const RefPtr<T>&) overload.
This was addressed using traits and template specialization to
distinguish WTF smart pointers from other types.
Reviewed by Sam Weinig.
- wtf/GetPtr.h:
(WTF::getPtr):
- wtf/OwnPtr.h:
(WTF::getPtr): Deleted.
- wtf/PassOwnPtr.h:
(WTF::getPtr): Deleted.
- wtf/PassRefPtr.h:
(WTF::getPtr): Deleted.
- wtf/Ref.h:
- wtf/RefPtr.h:
(WTF::getPtr): Deleted.
- wtf/gobject/GRefPtr.h:
(WTF::getPtr): Deleted.
- 11:15 AM Changeset in webkit [173764] by
-
- 1 edit2 adds in trunk/LayoutTests
Videos with controls enabled never receive 'dragstart' events.
https://bugs.webkit.org/show_bug.cgi?id=136837
Reviewed by Sam Weinig.
- media/video-controls-drag-expected.txt: Added.
- media/video-controls-drag.html: Added.
- 11:10 AM Changeset in webkit [173763] by
-
- 22 edits in trunk
Always assume internal SDK when building configuration Production
https://bugs.webkit.org/show_bug.cgi?id=136925
<rdar://problem/18362399>
Reviewed by Dan Bernstein.
Source/bmalloc:
- Configurations/Base.xcconfig:
Source/JavaScriptCore:
As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
- Configurations/Base.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/Base.xcconfig:
Source/WebCore:
As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
- Configurations/Base.xcconfig:
Source/WebInspectorUI:
- Configurations/DebugRelease.xcconfig: Also move #include of HaveInternalSDK.xcconfig from DebugRelease.xcconfig
to Base.xcconfig so as to be consistent with the format of other Base.xcconfig/DebugRelease.xcconfig files
(e.g. Source/WebCore/Configurations/Base.xcconfig and Source/WebCore/Configurations/DebugRelease.xcconfig).
Source/WebKit/mac:
As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
- Configurations/Base.xcconfig:
Source/WebKit2:
As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
- Configurations/Base.xcconfig:
Source/WTF:
- Configurations/Base.xcconfig:
Tools:
- DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
- MiniBrowser/Configurations/DebugRelease.xcconfig:
- TestWebKitAPI/Configurations/DebugRelease.xcconfig:
- WebKitTestRunner/Configurations/DebugRelease.xcconfig:
- 11:04 AM Changeset in webkit [173762] by
-
- 3 edits in trunk/Source/WebKit2
Fix the Mac Mavericks build. Only iOS cares about fencing.
- Platform/mac/LayerHostingContext.h:
- Platform/mac/LayerHostingContext.mm:
- 10:47 AM Changeset in webkit [173761] by
-
- 9 edits3 adds in trunk
Simple ES6 feature:String prototype additions
https://bugs.webkit.org/show_bug.cgi?id=131704
Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-09-19
Reviewed by Darin Adler.
Source/JavaScriptCore:
- runtime/StringPrototype.cpp:
(JSC::StringPrototype::finishCreation):
(JSC::stringProtoFuncStartsWith): Added.
(JSC::stringProtoFuncEndsWith): Added.
(JSC::stringProtoFuncContains): Added.
Source/WTF:
- wtf/text/StringImpl.cpp:
(WTF::StringImpl::find):
(WTF::equalInner): Added.
(WTF::StringImpl::startsWith): Add implementation that supports
'startOffset' parameter.
(WTF::StringImpl::endsWith): Add implementation that supports
'endOffset' parameter.
- wtf/text/StringImpl.h:
- wtf/text/WTFString.h:
(WTF::String::contains): Modify current implementation to allow
setting a startOffset, 0 by default.
(WTF::String::startsWith):
(WTF::String::endsWith):
LayoutTests:
Test ES6 functions: string.startsWith(), string.endsWith() and
string.contains().
- js/Object-getOwnPropertyNames-expected.txt:
- js/script-tests/Object-getOwnPropertyNames.js:
- js/script-tests/string-contains.js: Added.
(stringToSearchIn.toString):
(startOffset.valueOf):
(matchString.toString):
(endOffset.valueOf):
- js/string-contains-expected.txt: Added.
- js/string-contains.html: Added.
- 10:38 AM Changeset in webkit [173760] by
-
- 13 edits1 move1 add10 deletes in trunk
WTR and DRT didReceiveAuthenticationChallengeInFrame should print messages consistently
https://bugs.webkit.org/show_bug.cgi?id=136847
Tools:
Added protection space host and port logging to WTR didReceiveAuthenticationChallengeInFrame.
Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-19
Reviewed by Alexey Proskuryakov.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveAuthenticationChallengeInFrame):
LayoutTests:
Updated WK2 expected.txt files according new logging of didReceiveAuthenticationChallengeInFrame.
Factorized efl/gtk platform specific expected files as WK2 expected files.
Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-19
Reviewed by Alexey Proskuryakov.
- platform/gtk/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Removed.
- platform/gtk/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Removed.
- platform/gtk/http/tests/media/video-auth-expected.txt: Removed.
- platform/gtk/http/tests/misc/401-alternative-content-expected.txt: Removed.
- platform/gtk/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Removed.
- platform/gtk/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Removed.
- platform/gtk/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Removed.
- platform/gtk/http/tests/security/401-logout/401-logout-expected.txt: Removed.
- platform/gtk/http/tests/xmlhttprequest/failed-auth-expected.txt: Removed.
- platform/gtk/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Removed.
- platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt:
- platform/wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt:
- platform/wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt:
- platform/wk2/http/tests/media/video-auth-expected.txt: Renamed from LayoutTests/platform/efl/http/tests/media/video-auth-expected.txt.
- platform/wk2/http/tests/misc/401-alternative-content-expected.txt:
- platform/wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt:
- platform/wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt:
- platform/wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt:
- platform/wk2/http/tests/security/401-logout/401-logout-expected.txt:
- platform/wk2/http/tests/xmlhttprequest/failed-auth-expected.txt:
- platform/wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt:
- 9:36 AM Changeset in webkit [173759] by
-
- 1 copy in releases/WebKitGTK/webkit-2.5.90
WebKitGTK+ 2.5.90
- 9:31 AM Changeset in webkit [173758] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.5.90 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit2:
- gtk/NEWS: Add release notes for 2.5.90.
- 9:01 AM Changeset in webkit [173757] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Merge r173755 - [GTK] Missing inspector files in the tarball
https://bugs.webkit.org/show_bug.cgi?id=136952
Reviewed by Gustavo Noronha Silva.
Source/WebKit2:
- PlatformGTK.cmake: Use APPEND instead of GLOB to add individual
and generated files to the list of inspector files.
Tools:
- gtk/manifest.txt: Add
Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
to the tarball.
- 9:00 AM Changeset in webkit [173756] by
-
- 6 edits55 adds in releases/WebKitGTK/webkit-2.6
Merge r173753 - Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
https://bugs.webkit.org/show_bug.cgi?id=136632
Reviewed by Gustavo Noronha Silva.
Source/WebInspectorUI:
Add free icons for the GTK port. These icons are from the GNOME
project, some of them adapted by Andres Gomez for the inspector.
This is only a subset of the icons, since we still don't have a
free replacement for all of them, but at least it makes the
inspector kind of usable.
- UserInterface/Images/gtk/AUTHORS: Added.
- UserInterface/Images/gtk/BackArrow.svg: Added.
- UserInterface/Images/gtk/BreakpointActionAdd.svg: Added.
- UserInterface/Images/gtk/BreakpointActionRemove.svg: Added.
- UserInterface/Images/gtk/BreakpointButton.svg: Added.
- UserInterface/Images/gtk/BreakpointInactiveButton.svg: Added.
- UserInterface/Images/gtk/Breakpoints.svg: Added.
- UserInterface/Images/gtk/COPYING: Added.
- UserInterface/Images/gtk/Close.svg: Added.
- UserInterface/Images/gtk/CloseWhite.svg: Added.
- UserInterface/Images/gtk/ContentFlow.svg: Added.
- UserInterface/Images/gtk/Crosshair.svg: Added.
- UserInterface/Images/gtk/DOMCharacterData.svg: Added.
- UserInterface/Images/gtk/DOMComment.svg: Added.
- UserInterface/Images/gtk/DOMDocument.svg: Added.
- UserInterface/Images/gtk/DOMDocumentType.svg: Added.
- UserInterface/Images/gtk/DOMElement.svg: Added.
- UserInterface/Images/gtk/DOMNode.svg: Added.
- UserInterface/Images/gtk/DOMTextNode.svg: Added.
- UserInterface/Images/gtk/DOMTree.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Added.
- UserInterface/Images/gtk/DockBottom.svg: Added.
- UserInterface/Images/gtk/DockRight.svg: Added.
- UserInterface/Images/gtk/DocumentCSS.png: Added.
- UserInterface/Images/gtk/DocumentCSS@2x.png: Added.
- UserInterface/Images/gtk/DocumentFont.png: Added.
- UserInterface/Images/gtk/DocumentFont@2x.png: Added.
- UserInterface/Images/gtk/DocumentGeneric.png: Added.
- UserInterface/Images/gtk/DocumentGeneric@2x.png: Added.
- UserInterface/Images/gtk/DocumentImage.png: Added.
- UserInterface/Images/gtk/DocumentImage@2x.png: Added.
- UserInterface/Images/gtk/DocumentJS.png: Added.
- UserInterface/Images/gtk/DocumentJS@2x.png: Added.
- UserInterface/Images/gtk/DocumentMarkup.png: Added.
- UserInterface/Images/gtk/DocumentMarkup@2x.png: Added.
- UserInterface/Images/gtk/DownloadArrow.svg: Added.
- UserInterface/Images/gtk/Error.svg: Added.
- UserInterface/Images/gtk/Errors.svg: Added.
- UserInterface/Images/gtk/ErrorsEnabled.svg: Added.
- UserInterface/Images/gtk/EventListener.svg: Added.
- UserInterface/Images/gtk/Exception.svg: Added.
- UserInterface/Images/gtk/FilterFieldGlyph.svg: Added.
- UserInterface/Images/gtk/FolderGeneric.png: Added.
- UserInterface/Images/gtk/FolderGeneric@2x.png: Added.
- UserInterface/Images/gtk/ForwardArrow.svg: Added.
- UserInterface/Images/gtk/Function.svg: Added.
- UserInterface/Images/gtk/GoToArrow.svg: Added.
- UserInterface/Images/gtk/Resources.svg: Added.
- UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Added.
- UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Added.
- UserInterface/Images/gtk/UpDownArrows.svg: Added.
Source/WebKit2:
- PlatformGTK.cmake: Use only the icons from the gtk directory since they are free.
Tools:
- gtk/generate-inspector-gresource-manifest.py: Use an alias for
the gtk icons.
- gtk/manifest.txt: Only include the free icons in the tarball.
- 8:59 AM WebKitGTK/2.6.x edited by
- (diff)
- 8:58 AM Changeset in webkit [173755] by
-
- 4 edits in trunk
[GTK] Missing inspector files in the tarball
https://bugs.webkit.org/show_bug.cgi?id=136952
Reviewed by Gustavo Noronha Silva.
Source/WebKit2:
- PlatformGTK.cmake: Use APPEND instead of GLOB to add individual
and generated files to the list of inspector files.
Tools:
- gtk/manifest.txt: Add
Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js
to the tarball.
- 8:48 AM Changeset in webkit [173754] by
-
- 4 edits in trunk/Source/WebCore
Optimize MarkupAccumulator::appendText()
https://bugs.webkit.org/show_bug.cgi?id=136935
Reviewed by Benjamin Poulain.
MarkupAccumulator::appendText() was calling the generic appendNodeValue()
method to append the text. appendNodeValue() supports any kind of Node and
thus calls the Node::nodeValue() virtual function.
Since appendText() is the only caller to appendNodeValue(), this patch
inlines the code in appendText() and makes it specific to Text Node, and
thus more efficient. The code now calls CharacterData::data() instead of
the Node::nodeValue() virtual function. This patch also updates
CharacterData::data() to return a const reference to avoid copying the
return value.
No new tests, no behavior change.
- dom/CharacterData.h:
(WebCore::CharacterData::data):
- editing/MarkupAccumulator.cpp:
(WebCore::MarkupAccumulator::appendText):
(WebCore::MarkupAccumulator::appendNodeValue): Deleted.
- editing/MarkupAccumulator.h:
- 8:40 AM Changeset in webkit [173753] by
-
- 6 edits55 adds in trunk
Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
https://bugs.webkit.org/show_bug.cgi?id=136632
Reviewed by Gustavo Noronha Silva.
Source/WebInspectorUI:
Add free icons for the GTK port. These icons are from the GNOME
project, some of them adapted by Andres Gomez for the inspector.
This is only a subset of the icons, since we still don't have a
free replacement for all of them, but at least it makes the
inspector kind of usable.
- UserInterface/Images/gtk/AUTHORS: Added.
- UserInterface/Images/gtk/BackArrow.svg: Added.
- UserInterface/Images/gtk/BreakpointActionAdd.svg: Added.
- UserInterface/Images/gtk/BreakpointActionRemove.svg: Added.
- UserInterface/Images/gtk/BreakpointButton.svg: Added.
- UserInterface/Images/gtk/BreakpointInactiveButton.svg: Added.
- UserInterface/Images/gtk/Breakpoints.svg: Added.
- UserInterface/Images/gtk/COPYING: Added.
- UserInterface/Images/gtk/Close.svg: Added.
- UserInterface/Images/gtk/CloseWhite.svg: Added.
- UserInterface/Images/gtk/ContentFlow.svg: Added.
- UserInterface/Images/gtk/Crosshair.svg: Added.
- UserInterface/Images/gtk/DOMCharacterData.svg: Added.
- UserInterface/Images/gtk/DOMComment.svg: Added.
- UserInterface/Images/gtk/DOMDocument.svg: Added.
- UserInterface/Images/gtk/DOMDocumentType.svg: Added.
- UserInterface/Images/gtk/DOMElement.svg: Added.
- UserInterface/Images/gtk/DOMNode.svg: Added.
- UserInterface/Images/gtk/DOMTextNode.svg: Added.
- UserInterface/Images/gtk/DOMTree.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Added.
- UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Added.
- UserInterface/Images/gtk/DockBottom.svg: Added.
- UserInterface/Images/gtk/DockRight.svg: Added.
- UserInterface/Images/gtk/DocumentCSS.png: Added.
- UserInterface/Images/gtk/DocumentCSS@2x.png: Added.
- UserInterface/Images/gtk/DocumentFont.png: Added.
- UserInterface/Images/gtk/DocumentFont@2x.png: Added.
- UserInterface/Images/gtk/DocumentGeneric.png: Added.
- UserInterface/Images/gtk/DocumentGeneric@2x.png: Added.
- UserInterface/Images/gtk/DocumentImage.png: Added.
- UserInterface/Images/gtk/DocumentImage@2x.png: Added.
- UserInterface/Images/gtk/DocumentJS.png: Added.
- UserInterface/Images/gtk/DocumentJS@2x.png: Added.
- UserInterface/Images/gtk/DocumentMarkup.png: Added.
- UserInterface/Images/gtk/DocumentMarkup@2x.png: Added.
- UserInterface/Images/gtk/DownloadArrow.svg: Added.
- UserInterface/Images/gtk/Error.svg: Added.
- UserInterface/Images/gtk/Errors.svg: Added.
- UserInterface/Images/gtk/ErrorsEnabled.svg: Added.
- UserInterface/Images/gtk/EventListener.svg: Added.
- UserInterface/Images/gtk/Exception.svg: Added.
- UserInterface/Images/gtk/FilterFieldGlyph.svg: Added.
- UserInterface/Images/gtk/FolderGeneric.png: Added.
- UserInterface/Images/gtk/FolderGeneric@2x.png: Added.
- UserInterface/Images/gtk/ForwardArrow.svg: Added.
- UserInterface/Images/gtk/Function.svg: Added.
- UserInterface/Images/gtk/GoToArrow.svg: Added.
- UserInterface/Images/gtk/Resources.svg: Added.
- UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Added.
- UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Added.
- UserInterface/Images/gtk/UpDownArrows.svg: Added.
Source/WebKit2:
- PlatformGTK.cmake: Use only the icons from the gtk directory since they are free.
Tools:
- gtk/generate-inspector-gresource-manifest.py: Use an alias for
the gtk icons.
- gtk/manifest.txt: Only include the free icons in the tarball.
- 3:39 AM WebKitGTK/2.6.x created by
- 3:23 AM Changeset in webkit [173752] by
-
- 1 copy in releases/WebKitGTK/webkit-2.6
Branch WebKitGTK+ for 2.6
- 2:21 AM Changeset in webkit [173751] by
-
- 4 edits in trunk
[GTK] generate-inspector-gresource-manifest.py should receive the list of files from the makefile
https://bugs.webkit.org/show_bug.cgi?id=136943
Reviewed by Philippe Normand.
Source/WebKit2:
- PlatformGTK.cmake: Fix the inspector file list and pass it to
the generate-inspector-gresource-manifest.py script.
Tools:
Update the script to receive the list of files from the command
line instead of scanning the given directories.
- gtk/generate-inspector-gresource-manifest.py:
(get_filenames): Convert filenames to use relative paths.
(find_all_files_in_directory): Deleted.
(find_all_files_in_directory.select_file): Deleted.
Sep 18, 2014:
- 11:58 PM Changeset in webkit [173750] by
-
- 2 edits in trunk/Tools
[EFL][WK2] Minibrowser : Support Zoom on Control key + scroll
https://bugs.webkit.org/show_bug.cgi?id=136739
Patch by Tanay C <tanay.c@samsung.com> on 2014-09-18
Reviewed by Gyuyoung Kim.
- MiniBrowser/efl/main.c: Add support for zoom on control key + mouse scroll
(on_mouse_wheel): Modified.
- 11:51 PM Changeset in webkit [173749] by
-
- 11 edits in trunk
[GTK] Dot not allow to create delete-on-destroy GMainLoopSources
https://bugs.webkit.org/show_bug.cgi?id=136923
Reviewed by Gustavo Noronha Silva.
Source/WebCore:
- platform/gtk/GtkDragAndDropHelper.cpp:
(WebCore::GtkDragAndDropHelper::handleDragLeave): Use GMainLoopSource::scheduleAndDeleteOnDestroy().
Source/WebKit2:
- Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::dispatch): Use GMainLoopSource::scheduleAndDeleteOnDestroy().
(WorkQueue::dispatchAfter): Use GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy().
Source/WTF:
We have several asserts to ensure that delete-on-destroy sources
are not misused, like not scheduling socket sources on a
delete-on-destroy GMainLoopSource or not allowing to cancel them
before they have been dispatched. It's better to ensure all those
things at compile time, using static methods to schedule sources
creating a delete-on-destroy GMainLoopSource that is not returned
to the user.
- wtf/gobject/GMainLoopSource.cpp:
(WTF::GMainLoopSource::create): Private static method to create a
delete-on-destroy GMainLoopSource.
(WTF::GMainLoopSource::cancelWithoutLocking): Return early in case
of delete-on-destroy source, since they can't be cancelled.
(WTF::GMainLoopSource::schedule): Remove assertion to ensure
socket sources are not scheduled on a delete-on-destroy GMainLoopSource.
(WTF::GMainLoopSource::scheduleAndDeleteOnDestroy):
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy):
(WTF::GMainLoopSource::createAndDeleteOnDestroy): Deleted.
- wtf/gobject/GMainLoopSource.h:
- wtf/gtk/MainThreadGtk.cpp:
(WTF::scheduleDispatchFunctionsOnMainThread): Use GMainLoopSource::scheduleAndDeleteOnDestroy()
- wtf/gtk/RunLoopGtk.cpp:
(WTF::RunLoop::wakeUp): Ditto.
Tools:
- TestWebKitAPI/Tests/WTF/gobject/GMainLoopSource.cpp:
(TestWebKitAPI::TEST): Use the new API that doesn't allow to use
the source.
- 9:41 PM Changeset in webkit [173748] by
-
- 16 edits in trunk/Source/WebKit2
[EFL][CoordinatedGraphics] Remove setBackgroundColor message
https://bugs.webkit.org/show_bug.cgi?id=136824
Reviewed by Gyuyoung Kim.
CoordinatedGraphics used setBackgroundColor() to draw the background of contents
although tiles are not ready.
This patch removes setBackgroundColor() and uses pageExtendedBackgroundColor()
which provides similar functionality.
- UIProcess/API/efl/EwkView.cpp:
Enables or disables WKPageSetBackgroundExtendsBeyondPage to use pageExtendedBackgroundColor()
(EwkView::EwkView):
(EwkView::setBackgroundColor):
- UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext): Passed pageExtendedBackgroundColor.
(WebCore::CoordinatedGraphicsScene::paintToGraphicsContext): Ditto.
(WebCore::CoordinatedGraphicsScene::setBackgroundColor): Deleted.
- UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h:
(WebCore::CoordinatedGraphicsScene::setDrawsBackground): Deleted.
- UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
(WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor): Deleted.
- UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
- UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
- UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::paintToCurrentGLContext):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::pageExtendedBackgroundColorDidChange):
Refactored to use const reference for the Color parameter.
- UIProcess/WebPageProxy.h:
- UIProcess/efl/WebViewEfl.cpp:
(WebKit::WebViewEfl::paintToCairoSurface):
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::pageExtendedBackgroundColorDidChange):
Added PLATFORM(EFL) to pass PageExtendedBackgroundColorDidChange message.
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::setBackgroundColor): Deleted.
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
- WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setBackgroundColor): Deleted.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mainFrameDidLayout):
- 6:55 PM Changeset in webkit [173747] by
-
- 1 copy in tags/Safari-600.1.4.10.1
Tagging
- 6:47 PM Changeset in webkit [173746] by
-
- 2 edits in trunk/Source/WebCore
[Windows] Media tests all fail because they cannot find localized strings.
- rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::mediaControlsScript):
Make sure to use localized strings files in RenderThemeSafari.
- 6:37 PM Changeset in webkit [173745] by
-
- 2 edits in branches/Safari-600.1.4.10-branch/Source/WebKit2
Merge r172989
- 6:21 PM Changeset in webkit [173744] by
-
- 5 edits in branches/Safari-600.1.4.10-branch/Source
Bumping versioning
- 6:01 PM Changeset in webkit [173743] by
-
- 3 edits in trunk/Source/WebCore
Remove generator/yield terminology in RenderInline's GeneratorContext
https://bugs.webkit.org/show_bug.cgi?id=119278
Reviewed by Sam Weinig.
Get rid of the icky Generator/yield syntax used for collecting rects in RenderInline.
Just replace the operator() with an explicit addRect().
Also some drive-by nullptr cleanup, and removing default arguments from
addChildIgnoringContinuation() calls.
- rendering/RenderInline.cpp:
(WebCore::RenderInline::willBeDestroyed):
(WebCore::RenderInline::styleDidChange):
(WebCore::RenderInline::splitInlines):
(WebCore::RenderInline::addChildToContinuation):
(WebCore::RenderInline::generateLineBoxRects):
(WebCore::RenderInline::generateCulledLineBoxRects):
- rendering/RenderInline.h:
- 4:57 PM Changeset in webkit [173742] by
-
- 1 copy in branches/Safari-600.1.4.10-branch
Creating 600.1.4.10 branch
- 4:40 PM Changeset in webkit [173741] by
-
- 10 edits in trunk/Source
Improve fullscreen video rotation animation.
https://bugs.webkit.org/show_bug.cgi?id=136870
Patch by Jeremy Jones <jeremyj@apple.com> on 2014-09-18
Reviewed by Simon Fraser.
Source/WebCore:
Instead of setting the frame on the video layer, set position and bounds separately. This allows the position to be synchronized with the rest of the animation.
When using a fencePort to synchronize animations, if the fence times out, pivoting around the center provides a better fallback.
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVVideoLayer setVideoSublayer:]): added
(-[WebAVVideoLayer videoSublayer]): added
(-[WebAVVideoLayer setBounds:]): set position and bounds insted of frame.
(WebVideoFullscreenInterfaceAVKit::setupFullscreen): use setVideoSublayer
- platform/ios/WebVideoFullscreenModelVideoElement.mm:
(WebVideoFullscreenModelVideoElement::setVideoFullscreenLayer): set bounds and anchorPoint instead of frame
(WebVideoFullscreenModelVideoElement::setVideoLayerFrame): set bounds instead of frame.
Source/WebKit2:
Remove WKCAContext from LayerHostingContext and use a fencePort to synchronize animation between processes.
- Platform/mac/LayerHostingContext.h: add setFencePort. Remove WKCAContext.
- Platform/mac/LayerHostingContext.mm:
(WebKit::LayerHostingContext::createForPort): Remove WKCAContext.
(WebKit::LayerHostingContext::createForExternalHostingProcess): ditto
(WebKit::LayerHostingContext::setRootLayer): ditto
(WebKit::LayerHostingContext::rootLayer): ditto
(WebKit::LayerHostingContext::contextID): ditto
(WebKit::LayerHostingContext::invalidate): ditto
(WebKit::LayerHostingContext::setColorSpace): ditto
(WebKit::LayerHostingContext::colorSpace): ditto
(WebKit::LayerHostingContext::setFencePort): added
- UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame):
- WebProcess/ios/WebVideoFullscreenManager.h:
- WebProcess/ios/WebVideoFullscreenManager.messages.in: add fence port parameter
- WebProcess/ios/WebVideoFullscreenManager.mm: ditto
(WebKit::WebVideoFullscreenManager::didSetupFullscreen): ditto
(WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): ditto
- 3:58 PM Changeset in webkit [173740] by
-
- 4 edits2 adds in trunk/Websites/webkit.org
Expand the srcset demo to have 3x and 4x images.
Unreviewed.
- demos/srcset/image-1x.png:
- demos/srcset/image-2x.png:
- demos/srcset/image-3x.png: Added.
- demos/srcset/image-4x.png: Added.
- demos/srcset/index.html:
- 3:52 PM Changeset in webkit [173739] by
-
- 2 edits in trunk/Source/WebCore
Text laid out with the SVG -> OTF font converter does not have the same metrics as with the SVG font code path
https://bugs.webkit.org/show_bug.cgi?id=136907
Reviewed by Darin Adler.
There are three things that are causing text laid out with the SVG -> OTF font converter to not have metrics that
measure our existing SVG codepath. They are:
- Creating a font with a 0 ascent or descent makes OS X think that something is wrong with the font, and take
a different codepath when trying to parse ascent and descent information. This patch checks for this condition
and sets the ascent/descent to 1 FUnit instead (which is generally much smaller than a pixel).
- Our SVG font codepath hardcodes a line gap of 1/10th of the font size for every font. This patch makes the
font converter obey this.
- The converter was not allowing for default glyph advances as per the SVG font specification. This patch
does so.
No new tests yet, but they will come soon! I promise!
- svg/SVGToOTFFontConversion.cpp:
(WebCore::SVGToOTFFontConverter::appendHHEATable):
(WebCore::SVGToOTFFontConverter::SVGToOTFFontConverter):
- 3:49 PM Changeset in webkit [173738] by
-
- 3 edits2 adds in trunk
REGRESSION (r168921): SVG elements may be unnecessarily rebuilt
https://bugs.webkit.org/show_bug.cgi?id=136373
Reviewed by David Kilzer.
Source/WebCore:
Fixes an issue where a SVG element may be unnecessarily rebuilt. In particular,
it is unnecessary to rebuild a SVG element that will be removed from the document.
Test: svg/custom/remove-subtree-including-use-with-child-textpath-that-references-earlier-path.html
- svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::removeAllElementReferencesForTarget): Modified to remove a SVG element
from the list of elements to be rebuilt.
LayoutTests:
Add a test to ensure that we don't rebuild a SVG element that will be removed from the document.
- svg/custom/remove-subtree-including-use-with-child-textpath-that-references-earlier-path-expected.txt: Added.
- svg/custom/remove-subtree-including-use-with-child-textpath-that-references-earlier-path.html: Added.
- 3:31 PM Changeset in webkit [173737] by
-
- 2 edits in trunk/Source/WebKit2
Avoid divide by zero when we get an empty rect while snapshotting a node
https://bugs.webkit.org/show_bug.cgi?id=136932
rdar://problem/18383473
Reviewed by Dean Jackson.
renderer()->paintingRootRect() can return an empty rect for some inline configurations,
for example an <a> containing a floated <span>
When this occurs, avoid a divide by zero and return a null snapshot image.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::snapshotNode):
- 3:06 PM Changeset in webkit [173736] by
-
- 22 edits in trunk/Source
Unreviewed rollout r173731. Broke multiple builds.
Source/JavaScriptCore:
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
- inspector/JSGlobalObjectInspectorController.h:
- inspector/remote/RemoteInspector.h:
- inspector/remote/RemoteInspector.mm:
(Inspector::RemoteInspector::RemoteInspector):
(Inspector::RemoteInspector::setupFailed):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::stopInternal):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::xpcConnectionFailed):
(Inspector::RemoteInspector::receivedSetupMessage):
(Inspector::globalAutomaticInspectionState): Deleted.
(Inspector::RemoteInspector::updateDebuggableAutomaticInspectCandidate): Deleted.
(Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage): Deleted.
(Inspector::RemoteInspector::setupSucceeded): Deleted.
(Inspector::RemoteInspector::waitingForAutomaticInspection): Deleted.
(Inspector::RemoteInspector::receivedAutomaticInspectionConfigurationMessage): Deleted.
(Inspector::RemoteInspector::receivedAutomaticInspectionRejectMessage): Deleted.
- inspector/remote/RemoteInspectorConstants.h:
- inspector/remote/RemoteInspectorDebuggable.cpp:
(Inspector::RemoteInspectorDebuggable::setRemoteDebuggingAllowed):
(Inspector::RemoteInspectorDebuggable::pauseWaitingForAutomaticInspection): Deleted.
- inspector/remote/RemoteInspectorDebuggable.h:
- inspector/remote/RemoteInspectorDebuggableConnection.h:
- inspector/remote/RemoteInspectorDebuggableConnection.mm:
(Inspector::RemoteInspectorDebuggableConnection::setup):
- runtime/JSGlobalObjectDebuggable.cpp:
(JSC::JSGlobalObjectDebuggable::connect):
(JSC::JSGlobalObjectDebuggable::pauseWaitingForAutomaticInspection): Deleted.
- runtime/JSGlobalObjectDebuggable.h:
Source/WebCore:
- WebCore.exp.in:
- inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::show):
- inspector/InspectorController.h:
- page/PageDebuggable.cpp:
(WebCore::PageDebuggable::connect):
- page/PageDebuggable.h:
- testing/Internals.cpp:
(WebCore::Internals::openDummyInspectorFrontend):
Source/WTF:
- wtf/Assertions.cpp:
- wtf/Assertions.h:
- 2:59 PM Changeset in webkit [173735] by
-
- 5 edits in branches/safari-600.1.4.11-branch/Source
Versioning.
- 2:37 PM Changeset in webkit [173734] by
-
- 2 edits in trunk/Source/WebCore
ASSERT in RenderBox::instrinsicScrollbarLogicalWidth opening the inspector
https://bugs.webkit.org/show_bug.cgi?id=136929
Reviewed by Simon Fraser.
This is a regression from http://trac.webkit.org/changeset/173668
This code is wrong after that change because it assumes that overflow:scroll will
always have a scrollbar. That is no longer the case. We need to check to make sure
it’s an overflow:scroll that does NOT have overflow:auto behavior.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::instrinsicScrollbarLogicalWidth):
- 2:32 PM Changeset in webkit [173733] by
-
- 1 copy in tags/Safari-600.1.4.11.8
New tag.
- 2:26 PM Changeset in webkit [173732] by
-
- 5 edits in branches/safari-600.1.4.11-branch
Merge patch for <rdar://problem/18382131>.
- 12:47 PM Changeset in webkit [173731] by
-
- 22 edits in trunk/Source
Web Inspector: Should be able to attach a debugger to a JSContext before anything is executed
https://bugs.webkit.org/show_bug.cgi?id=136893
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-18
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
Adds new remote inspector protocol handling for automatic inspection.
Debuggers can signal they have enabled automatic inspection, and
when debuggables are created the current application will pause to
see if the debugger will inspect or decline to inspect the debuggable.
- inspector/remote/RemoteInspectorConstants.h:
- inspector/remote/RemoteInspector.h:
- inspector/remote/RemoteInspector.mm:
(Inspector::globalAutomaticInspectionState):
(Inspector::RemoteInspector::RemoteInspector):
(Inspector::RemoteInspector::start):
When first starting, check the global "is there an auto-inspect" debugger state.
This is necessary so that the current application knows if it should pause or
not when a debuggable is created, even without having connected to webinspectord yet.
(Inspector::RemoteInspector::updateDebuggableAutomaticInspectCandidate):
When a debuggable has enabled remote inspection, take this path to propose
it as an automatic inspection candidate if there is an auto-inspect debugger.
(Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage):
Send the automatic inspection candidate message.
(Inspector::RemoteInspector::receivedSetupMessage):
(Inspector::RemoteInspector::setupFailed):
(Inspector::RemoteInspector::setupSucceeded):
After attempting to open an inspector, unpause if it was for the
automatic inspection candidate.
(Inspector::RemoteInspector::waitingForAutomaticInspection):
When running a nested runloop, check if we should remain paused.
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
If by the time we connect to webinspectord we have a candidate, then
immediately send the candidate message.
(Inspector::RemoteInspector::stopInternal):
(Inspector::RemoteInspector::xpcConnectionFailed):
In error cases, clear our state.
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::receivedAutomaticInspectionConfigurationMessage):
(Inspector::RemoteInspector::receivedAutomaticInspectionRejectMessage):
Update state when receiving new messages.
- inspector/remote/RemoteInspectorDebuggable.h:
- inspector/remote/RemoteInspectorDebuggable.cpp:
(Inspector::RemoteInspectorDebuggable::setRemoteDebuggingAllowed):
Special case when a debuggable is newly allowed to be debuggable.
(Inspector::RemoteInspectorDebuggable::pauseWaitingForAutomaticInspection):
Run a nested run loop while this is an automatic inspection candidate.
- inspector/JSGlobalObjectInspectorController.h:
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
When the inspector starts via automatic inspection automatically pause.
We plan on removing this condition by having the frontend signal to the
backend when it is completely initialized.
- inspector/remote/RemoteInspectorDebuggableConnection.h:
- inspector/remote/RemoteInspectorDebuggableConnection.mm:
(Inspector::RemoteInspectorDebuggableConnection::setup):
Pass on the flag of whether or not this was automatic inspection.
- runtime/JSGlobalObjectDebuggable.h:
- runtime/JSGlobalObjectDebuggable.cpp:
(JSC::JSGlobalObjectDebuggable::connect):
(JSC::JSGlobalObjectDebuggable::pauseWaitingForAutomaticInspection):
When pausing in a JSGlobalObject we need to release the API lock.
Source/WebCore:
Automatic inspection is currently disabled for web pages.
This just updates the interfaces that changed.
- WebCore.exp.in:
- inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::show):
- inspector/InspectorController.h:
- page/PageDebuggable.cpp:
(WebCore::PageDebuggable::connect):
- page/PageDebuggable.h:
- testing/Internals.cpp:
(WebCore::Internals::openDummyInspectorFrontend):
Source/WTF:
Currently automatic inspection only happens in processes that have a
debugger attached. That condition may change in the future, but this
function can stand on its own in WTF. It may be useful in the future
to perhaps continue though ASSERTs if you have a debugger attached.
- wtf/Assertions.cpp:
- wtf/Assertions.h:
- 12:36 PM Changeset in webkit [173730] by
-
- 3 edits in trunk/LayoutTests
CSS JIT: The backtracking register can be ignored from the minimumRegisterRequirements
https://bugs.webkit.org/show_bug.cgi?id=136906
rdar://problem/18368294
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-18
Reviewed by Darin Adler.
- fast/selectors/nth-child-with-backtracking-expected.txt:
- fast/selectors/nth-child-with-backtracking.html:
The use case is well covered by existing tests. This is updating the backtracking test
with a simpler selector similar to the one in the bug report.
- 12:33 PM Changeset in webkit [173729] by
-
- 2 edits in trunk/LayoutTests
Don’t skip all the media tests on Windows.
- platform/win/TestExpectations:
- 12:12 PM Changeset in webkit [173728] by
-
- 9 edits9 adds in trunk/LayoutTests
Unreviewed. Windows rebaselining to account for subpixel layout Part 3.
- platform/win/css1/box_properties/acid_test-expected.txt: Added.
- platform/win/fast/block/margin-collapse: Added.
- platform/win/fast/block/margin-collapse/103-expected.txt: Added.
- platform/win/fast/css/empty-pseudo-class-expected.txt:
- platform/win/fast/css/first-child-pseudo-class-expected.txt:
- platform/win/fast/css/last-child-pseudo-class-expected.txt:
- platform/win/fast/css/only-child-pseudo-class-expected.txt:
- platform/win/fast/forms/basic-inputs-expected.txt: Added.
- platform/win/fast/forms/file/file-input-direction-expected.txt:
- platform/win/fast/forms/formmove-expected.txt: Added.
- platform/win/fast/forms/formmove2-expected.txt: Added.
- platform/win/fast/repaint/reflection-redraw-expected.txt:
- platform/win/fast/replaced/width100percent-button-expected.txt:
- platform/win/fast/ruby/bopomofo-expected.txt: Added.
- platform/win/fast/ruby/bopomofo-letter-spacing-expected.txt: Added.
- platform/win/fast/ruby/bopomofo-rl-expected.txt: Added.
- platform/win/fast/table/multiple-captions-display-expected.txt:
- 11:10 AM Changeset in webkit [173727] by
-
- 2 edits in trunk/Source/ThirdParty
[Win] Unreviewed build fix.
- gtest/msvc/gtest-md.vcxproj: Make sure we use static linking for gtest on
normal debug build to match the rest of WebKit.
- 10:36 AM Changeset in webkit [173726] by
-
- 2 edits in trunk/Source/WebKit2
Incorrect pending API request URL when loading an HTML string
https://bugs.webkit.org/show_bug.cgi?id=136913
Reviewed by Alexey Proskuryakov.
Use about:blank as pending API request URL when the given base URL
is empty, otherwise use the given base URL.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
- 10:15 AM Changeset in webkit [173725] by
-
- 3 edits in trunk/Tools
Fix countFailures of RunLLINTCLoopTests and Run32bitJSCTests (II)
https://bugs.webkit.org/show_bug.cgi?id=136856
Reviewed by Darin Adler.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunLLINTCLoopTests.countFailures):
(Run32bitJSCTests.countFailures):
- BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunLLINTCLoopTestsTest.test_failures):
(RunLLINTCLoopTestsTest.test_failure):
(RunLLINTCLoopTestsTest.test_no_failure):
(Run32bitJSCTestsTest.test_failures):
(Run32bitJSCTestsTest.test_failure):
(Run32bitJSCTestsTest.test_no_failure):
- 9:52 AM Changeset in webkit [173724] by
-
- 52 edits in trunk/Source/WebCore
Use fastHasAttribute() / fastGetAttribute() when possible
https://bugs.webkit.org/show_bug.cgi?id=136900
Reviewed by Benjamin Poulain.
Use fastHasAttribute() / fastGetAttribute() when possible, that is when
the attribute is not SVG-animated or the |style| attribute, to avoid
synchronizing attributes unnecessarily.
Also avoid calling hasAttribute(xxxAttr) then getAttribute(xxxAttr) as
it causes 2 linear searches. It is best to call getAttribute(xxxAttr)
directly and check if it returns the nullAtom.
No new tests, no behavior change. Element::fastAttributeLookupAllowed()
is there as a safety set for debug builds.
- accessibility/AccessibilityListBoxOption.cpp:
(WebCore::AccessibilityListBoxOption::isEnabled):
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::alternativeTextForWebArea):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::contentEditableAttributeIsEnabled):
- dom/Document.cpp:
(WebCore::Document::hasManifest):
- dom/DocumentOrderedMap.cpp:
(WebCore::keyMatchesLabelForAttribute):
- dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
- dom/Element.cpp:
(WebCore::Element::imageSourceURL):
(WebCore::Element::pseudo):
(WebCore::Element::spellcheckAttributeState):
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
- editing/EditingStyle.cpp:
(WebCore::HTMLAttributeEquivalent::attributeValueAsCSSValue):
(WebCore::HTMLFontSizeEquivalent::attributeValueAsCSSValue):
- editing/SplitElementCommand.cpp:
(WebCore::SplitElementCommand::doUnapply):
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::draggable):
(WebCore::HTMLAnchorElement::sendPings):
- html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::updateWidget):
- html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::addSubresourceAttributeURLs):
- html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::value):
- html/HTMLDocument.cpp:
(WebCore::HTMLDocument::dir):
- html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::imageSourceURL):
(WebCore::HTMLEmbedElement::addSubresourceAttributeURLs):
- html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::~HTMLFieldSetElement):
(WebCore::updateFromControlElementsAncestorDisabledStateUnder):
(WebCore::HTMLFieldSetElement::disabledAttributeChanged):
(WebCore::HTMLFieldSetElement::disabledStateChanged):
(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::didMoveToNewDocument):
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::computeIsDisabledByFieldsetAncestor):
- html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::action):
- html/HTMLFrameElement.cpp:
(WebCore::HTMLFrameElement::noResize):
- html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::location):
- html/HTMLHRElement.cpp:
(WebCore::HTMLHRElement::collectStyleForPresentationAttribute):
- html/HTMLHtmlElement.cpp:
(WebCore::HTMLHtmlElement::insertedByParser):
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::altText):
(WebCore::HTMLImageElement::alt):
(WebCore::HTMLImageElement::draggable):
(WebCore::HTMLImageElement::src):
(WebCore::HTMLImageElement::addSubresourceAttributeURLs):
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::finishParsingChildren):
(WebCore::HTMLInputElement::altText):
(WebCore::HTMLInputElement::reset):
- html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::control):
- html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::process):
(WebCore::HTMLLinkElement::rel):
- html/HTMLMetaElement.cpp:
(WebCore::HTMLMetaElement::content):
(WebCore::HTMLMetaElement::httpEquiv):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::imageSourceURL):
(WebCore::HTMLObjectElement::addSubresourceAttributeURLs):
- html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::groupLabelText):
- html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::max):
- html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::sourceAttributeValue):
(WebCore::HTMLScriptElement::charsetAttributeValue):
(WebCore::HTMLScriptElement::languageAttributeValue):
(WebCore::HTMLScriptElement::forAttributeValue):
(WebCore::HTMLScriptElement::eventAttributeValue):
- html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::addSubresourceAttributeURLs):
- html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::rules):
(WebCore::HTMLTableElement::summary):
(WebCore::HTMLTableElement::addSubresourceAttributeURLs):
- html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::align):
(WebCore::HTMLTableSectionElement::ch):
(WebCore::HTMLTableSectionElement::vAlign):
- html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::maxLength):
- html/SearchInputType.cpp:
(WebCore::SearchInputType::searchEventsShouldBeDispatched):
- loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):
- page/Frame.cpp:
(WebCore::Frame::matchLabelsAgainstElement):
- page/PageSerializer.cpp:
(WebCore::PageSerializer::serializeFrame):
- platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::writeImageToDataObject):
- rendering/HitTestResult.cpp:
(WebCore::HitTestResult::altDisplayString):
- rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::autosaveName):
- rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::computePreferredLogicalWidths):
- rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
- 9:32 AM Changeset in webkit [173723] by
-
- 15 edits in trunk/Source/WebCore
Have LiveNodeLists / HTMLCollections's elementMatches() take a reference
https://bugs.webkit.org/show_bug.cgi?id=136902
Reviewed by Darin Adler.
Have LiveNodeLists / HTMLCollections's elementMatches() take a reference
in argument instead of a pointer as the Element can never be null.
No new tests, no behavior change.
- dom/ClassNodeList.h:
(WebCore::ClassNodeList::elementMatches):
- dom/DocumentOrderedMap.cpp:
(WebCore::keyMatchesWindowNamedItem):
(WebCore::keyMatchesDocumentNamedItem):
- dom/Element.cpp:
(WebCore::Element::updateNameForDocument):
(WebCore::Element::updateIdForDocument):
- dom/LiveNodeList.cpp:
(WebCore::LiveNodeList::namedItem):
- dom/LiveNodeList.h:
(WebCore::CachedLiveNodeList<NodeListType>::collectionBegin):
(WebCore::CachedLiveNodeList<NodeListType>::collectionLast):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseForward):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseBackward):
- dom/NameNodeList.h:
(WebCore::NameNodeList::elementMatches):
- dom/TagNodeList.h:
(WebCore::TagNodeList::elementMatches):
(WebCore::HTMLTagNodeList::elementMatches):
- html/HTMLCollection.cpp:
(WebCore::isMatchingElement):
- html/HTMLNameCollection.cpp:
(WebCore::WindowNameCollection::elementMatchesIfNameAttributeMatch):
(WebCore::WindowNameCollection::elementMatches):
(WebCore::DocumentNameCollection::elementMatchesIfIdAttributeMatch):
(WebCore::DocumentNameCollection::elementMatchesIfNameAttributeMatch):
(WebCore::DocumentNameCollection::elementMatches):
- html/HTMLNameCollection.h:
- html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::elementMatches):
- html/LabelsNodeList.h:
- html/RadioNodeList.cpp:
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
(WebCore::RadioNodeList::elementMatches):
- html/RadioNodeList.h:
- 9:26 AM Changeset in webkit [173722] by
-
- 2 edits in trunk/Source/WebKit2
Occasional unreproducible crashes in MessageReceiverMap::dispatchMessage
https://bugs.webkit.org/show_bug.cgi?id=136909
<rdar://problem/17758325>
Reviewed by Anders Carlsson.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView dealloc]):
We're seeing some messages dispatched on the WebContext that end up
attempting to call dispatchMessage on a freed MessageReceiver.
The WKRemoteObjectRegistry message receiver is added to the WebContext
message receiver map, but never removed, despite the WebContext easily
outliving the WKWebView that owns the remote object registry.
- 9:22 AM Changeset in webkit [173721] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix "Tools/Scripts/build-webkit --efl --no-inspector" build
https://bugs.webkit.org/show_bug.cgi?id=136912
Reviewed by Darin Adler.
- runtime/TypeSet.cpp:
(JSC::TypeSet::leastCommonAncestor):
- 6:06 AM Changeset in webkit [173720] by
-
- 5 edits1 add in trunk
GMainLoopSource is exposed to race conditions
https://bugs.webkit.org/show_bug.cgi?id=135800
Reviewed by Carlos Garcia Campos.
Source/WTF:
GMainLoopSource objects can be dispatching tasks on one thread
while having a new task scheduled on a different thread. This
can for instance occur in WebKitVideoSink, where the timeout
callback can be called on main thread while at the same time
it is being rescheduled on a different thread (created through
GStreamer).
The initial solution is to use GMutex to prevent parallel data
access from different threads. In the future I plan to look at
the possibility of creating thread-specific GMainLoopSource
objects that wouldn't require the use of GMutex.
GSource, GCancellable and std::function<> objects are now packed
into an internal Context structure. Using the C++11 move semantics
it's simple to, at the time of dispatch, move the current context
out of the GMainLoopSource object in case the dispatch causes a
rescheduling on that same object.
Also added in the Context struct is a new GCancellable. The pointer
of that object is shared with the GMainLoopSource before the Context
is moved out for the callback dispatch. This makes it safe to cancel
or even delete the GMainLoopSource during the dispatch and prevents
use-after-delete on GMainLoopSource once the dispatch is done in
the GMainLoopSource::*Callback() methods.
All the schedule*() methods and the cancelWithoutLocking() method
callers now lock the GMutex to ensure no one else is accessing the
data at that moment. Similar goes for the dispatch methods, but those
do the dispatch and possible destruction duties with the mutex unlocked.
The dispatch can cause rescheduling on the same GMainLoopSource object,
which must not be done with a locked mutex.
- wtf/gobject/GMainLoopSource.cpp:
(WTF::GMainLoopSource::GMainLoopSource):
(WTF::GMainLoopSource::~GMainLoopSource):
(WTF::GMainLoopSource::cancel):
(WTF::GMainLoopSource::cancelWithoutLocking):
(WTF::GMainLoopSource::scheduleIdleSource):
(WTF::GMainLoopSource::schedule):
(WTF::GMainLoopSource::scheduleTimeoutSource):
(WTF::GMainLoopSource::scheduleAfterDelay):
(WTF::GMainLoopSource::voidCallback):
(WTF::GMainLoopSource::boolCallback):
(WTF::GMainLoopSource::socketCallback):
(WTF::GMainLoopSource::socketSourceCallback):
(WTF::GMainLoopSource::Context::destroySource):
(WTF::GMainLoopSource::reset): Deleted.
(WTF::GMainLoopSource::destroy): Deleted.
- wtf/gobject/GMainLoopSource.h:
Tools:
Add unit tests for GMainLoopSource.
The tests check correct behavior of GMainLoopSource in various conditions --
from the most simple rescheduling to rescheduling during dispatch, cancelling
or destroying the GMainLoopSource during dispatch, proper destroy callback
dispatching etc.
Scheduling both void (one-time) and bool (repeatable) callbacks is tested.
State of the GMainLoopSource object (either ready, sheduled or active) is
thoroughly tested throughout the lifetime of that object.
Still missing are tests for socket callbacks, which are a bit trickier because
they rely on a GSocket object. The delete-on-destroy GMainLoopSource objects
are also not tested thoroughly, simply because it is at the moment impossible
to test that the objects are actually destroyed when the corresponding source
is finally deleted.
- TestWebKitAPI/PlatformGTK.cmake:
- TestWebKitAPI/Tests/WTF/gobject/GMainLoopSource.cpp: Added.
(TestWebKitAPI::GMainLoopSourceTest::GMainLoopSourceTest):
(TestWebKitAPI::GMainLoopSourceTest::~GMainLoopSourceTest):
(TestWebKitAPI::GMainLoopSourceTest::runLoop):
(TestWebKitAPI::GMainLoopSourceTest::delayedFinish):
(TestWebKitAPI::GMainLoopSourceTest::finish):
(TestWebKitAPI::GMainLoopSourceTest::source):
(TestWebKitAPI::TEST):
- 4:16 AM Changeset in webkit [173719] by
-
- 4 edits in trunk/Source/WebCore
Remove unused methods from MediaPlayerClient
https://bugs.webkit.org/show_bug.cgi?id=136884
Reviewed by Eric Carlson.
Remove unused methods from MediaPlayerClient that introduce
dependencies on WebCore types.
- html/HTMLMediaElement.cpp:
- html/HTMLMediaElement.h:
- platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerOwningDocument): Deleted.
(WebCore::MediaPlayerClient::mediaPlayerHostWindow): Deleted.
(WebCore::MediaPlayerClient::mediaPlayerWindowClipRect): Deleted.
Sep 17, 2014:
- 11:54 PM Changeset in webkit [173718] by
-
- 11 edits in branches/safari-600.1.4.11-branch/Source/WebKit2
Merged r173702. <rdar://problem/18316542>
- 11:23 PM Changeset in webkit [173717] by
-
- 2 edits in trunk/Source/WebKit2
[EFL][WK2] Use the correct enum for control key in Ewk_Event_Modifiers in ewk_navigation_policy_decision.cpp
https://bugs.webkit.org/show_bug.cgi?id=136740
Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-09-17
Reviewed by Gyuyoung Kim.
- UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
(toEwkEventModifiers):
- 11:21 PM Changeset in webkit [173716] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Add Wayland support to GLContextEGL
https://bugs.webkit.org/show_bug.cgi?id=136829
Reviewed by Martin Robinson.
- platform/graphics/egl/GLContextEGL.cpp:
(WebCore::sharedEGLDisplay): Special-case the shared EGL display initialization
for the GTK port when running under Wayland. In that case the pointer to the
native wl_display object should be passed to eglGetDisplay(). If not running
under Wayland we should fall back to using the shared X11 display (if support
for that display system is enabled) or the EGL_DEFAULT_DISPLAY.
- 7:32 PM Changeset in webkit [173715] by
-
- 17 edits in trunk/Source/WebInspectorUI
Web Inspector: Remove unnecessary prefixes in WebInspectorUI CSS
https://bugs.webkit.org/show_bug.cgi?id=136905
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-17
Reviewed by Timothy Hatcher.
Removed vendor prefixes from justify-content and a few lingering
occurances with transition, box-shadow, and display.
- UserInterface/Views/BreakpointActionView.css:
- UserInterface/Views/BreakpointTreeElement.css:
- UserInterface/Views/ButtonNavigationItem.css:
- UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
- UserInterface/Views/ControlToolbarItem.css:
- UserInterface/Views/DebuggerDashboardView.css:
- UserInterface/Views/DefaultDashboardView.css:
- UserInterface/Views/FontResourceContentView.css:
- UserInterface/Views/ImageResourceContentView.css:
- UserInterface/Views/LayerTreeSidebarPanel.css:
- UserInterface/Views/Main.css:
- UserInterface/Views/NavigationBar.css:
- UserInterface/Views/NavigationSidebarPanel.css:
- UserInterface/Views/Popover.css:
- UserInterface/Views/ReplayDashboardView.css:
- UserInterface/Views/Toolbar.css:
- 6:53 PM Changeset in webkit [173714] by
-
- 5 edits in branches/safari-600.1-branch/Source
Versioning.
- 6:52 PM Changeset in webkit [173713] by
-
- 1 copy in tags/Safari-600.1.25
New Tag.
- 6:26 PM Changeset in webkit [173712] by
-
- 2 edits1 add in trunk/LayoutTests
[Windows] Unreviewed rebaselining of some failing JS tests.
- platform/win/js/dom/deep-recursion-test-expected.txt: Added.
- platform/win/js/dom/global-constructors-attributes-shared-worker-expected.txt:
- 6:23 PM Changeset in webkit [173711] by
-
- 2 edits in trunk/Tools
Unreviewed, Update my email in contributors.json
- Scripts/webkitpy/common/config/contributors.json:
- 6:15 PM Changeset in webkit [173710] by
-
- 69 edits10 deletes in trunk
Unreviewed, rolling out r173695.
Broke building third-party Legacy WebKit apps; will
investigate offline
Reverted changeset:
"[iOS] Make WebCore build with public iOS SDK"
https://bugs.webkit.org/show_bug.cgi?id=136487
http://trac.webkit.org/changeset/173695
- 5:59 PM Changeset in webkit [173709] by
-
- 3 edits1 move in trunk/LayoutTests
Unreviewed. Use a power-of-2 image size instead so that WebGL tests won’t complain.
- fast/canvas/image-potential-subsample.html:
- fast/canvas/resources/image-6400x6400.jpg: Copied from fast/canvas/resources/image-8000x8000.jpg.
- fast/canvas/resources/image-8000x8000.jpg: Removed.
- fast/canvas/webgl/resources/tex-image-and-sub-image-2d-with-potentially-subsampled-image.js:
(.init):
- 5:26 PM Changeset in webkit [173708] by
-
- 6 edits5 adds in trunk/LayoutTests
Unreviewed. Windows rebaselining to account for subpixel layout Part 2.
- platform/win/editing/apply-style-iframe-crash-expected.txt: Added.
- platform/win/editing/selection/move-left-right-expected.txt:
- platform/win/fast/table/dynamic-caption-add-remove-before-child-expected.txt:
- platform/win/tables/mozilla/bugs/bug4527-expected.txt: Added.
- platform/win/tables/mozilla/marvin/body_col-expected.txt:
- platform/win/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
- platform/win/tables/mozilla/other/body_col-expected.txt:
- platform/win/tables/mozilla_expected_failures/core: Added.
- platform/win/tables/mozilla_expected_failures/core/captions1-expected.txt: Added.
- platform/win/tables/mozilla_expected_failures/core/captions2-expected.txt: Added.
- 3:40 PM Changeset in webkit [173707] by
-
- 23 edits in trunk/Source/WebInspectorUI
WebInpector can use unprefixed flexbox
https://bugs.webkit.org/show_bug.cgi?id=136899
Reviewed by Joseph Pecoraro.
Now the inspector UI itself can use a non-prefixed flexbox. This was
a basic search and replace for the following properties:
- align-content
- align-items
- align-self
- flex-basis
- flex-direction
- flex-wrap
- flex-grow
- flex-shrink
- flex
- flex-flow
- justify
- UserInterface/Views/ButtonToolbarItem.css:
- UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
- UserInterface/Views/ContentBrowser.css:
- UserInterface/Views/ControlToolbarItem.css:
- UserInterface/Views/DebuggerDashboardView.css:
- UserInterface/Views/DefaultDashboardView.css:
- UserInterface/Views/FilterBar.css:
- UserInterface/Views/FlexibleSpaceNavigationItem.css:
- UserInterface/Views/FontResourceContentView.css:
- UserInterface/Views/HierarchicalPathComponent.css:
- UserInterface/Views/ImageResourceContentView.css:
- UserInterface/Views/LayerTreeSidebarPanel.css:
- UserInterface/Views/LogContentView.css:
- UserInterface/Views/Main.css:
- UserInterface/Views/NavigationBar.css:
- UserInterface/Views/NavigationSidebarPanel.css:
- UserInterface/Views/Popover.css:
- UserInterface/Views/QuickConsole.css:
- UserInterface/Views/ReplayDashboardView.css:
- UserInterface/Views/ResourceSidebarPanel.css:
- UserInterface/Views/Toolbar.css:
- 3:34 PM Changeset in webkit [173706] by
-
- 8 edits in trunk/Source/JavaScriptCore
Change CallFrame to use Callee instead of JSScope to implement vm()
https://bugs.webkit.org/show_bug.cgi?id=136894
Reviewed by Geoffrey Garen.
Added JSCell::vm() method that can be used on any JSObject. Changed CallFrame::vm() to
use JSCell::vm with the Callee. Made similar changes in the LLInt.
In support of this, changed JSGlobalObject::init() to take a VM& parameter, as there is
a chicken/egg problem with trying to use the Callee in the global exec before the Callee
has been create. Besides, the vm is readily available in finishCreation(), the caller of
init().
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
Changed the calculation of CallFrame::VM to use the Callee instead of JSScope.
- runtime/JSCell.h:
- runtime/JSCellInlines.h:
(JSC::JSCell::vm): New method for getting VM from the pointer.
(JSC::ExecState::vm): Moved this method from JSScope.h to here since this file
contains the implementation of JSCell::vm(), this file is included by all users
of CallFrame::vm, and lastly putting it in CallFrameInlines.h required changing
many other .h files and possible the WebCore generator generate-bindings.pl.
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::finishCreation):
Changed init() to take a VM parameter.
- runtime/JSScope.h:
(JSC::ExecState::vm): Deleted.
- 3:06 PM Changeset in webkit [173705] by
-
- 2 edits in trunk/Source/WebInspectorUI
Add unprefixed flexbox display values and property names/values
https://bugs.webkit.org/show_bug.cgi?id=136880
<rdar://problem/18361137>
Reviewed by Benjamin Poulain with some extra comments by Joseph Pecoraro.
- UserInterface/Models/CSSKeywordCompletions.js: Switch to all the unprefixed
flex properties.
- 2:37 PM Changeset in webkit [173704] by
-
- 2 edits in trunk/LayoutTests
[Windows] Unreviewed gardening. Content Security Policy 1.1 (ENABLE_CSP_NEXT) is not enabled
- platform/win/TestExpectations: Tests sometimes crash or timeout in addition to just failing.
- 2:24 PM Changeset in webkit [173703] by
-
- 2 edits in trunk/Source/WebCore
Speculative fix for a fast\dom\html-collections-named-getter failing only in Debug builds.
- dom/Node.cpp:
(WebCore::Document::invalidateNodeListAndCollectionCaches):
- 2:18 PM Changeset in webkit [173702] by
-
- 11 edits in trunk/Source/WebKit2
Fix an issue that caused video playback to not always use high resolution streams
https://bugs.webkit.org/show_bug.cgi?id=136879
rdar://problem/18316542
Reviewed by Eric Carlson.
The underlying video framework expects to be able to use -[CALayer convertRect:toLayer:nil] on
the video layer to obtain information about the display resolution of the video,
including the device scale factor. This doesn't work for layers in the web process,
which are remotely hosted into the UI process.
For now, use a workaround which involves putting a scale transform equivalent to
the device scale factor on the web process layer, and the inverse scale on the
hosting layer in the UI process.
We have to do this in two places, for in-page video, and for fullscreen video.
- Shared/mac/RemoteLayerTreeTransaction.h: Add hostingDeviceScaleFactor to the LayerCreation
properties.
- Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::LayerCreationProperties):
(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
- UIProcess/ios/RemoteLayerTreeHostIOS.mm:
(-[WKRemoteView initWithFrame:contextID:hostingDeviceScaleFactor:]): Set the inverse scale
transform on the layer.
(WebKit::RemoteLayerTreeHost::createLayer):
(-[WKRemoteView initWithFrame:contextID:]): Deleted.
- UIProcess/ios/WebVideoFullscreenManagerProxy.h:
- UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
- UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
- WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
- WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
(WebKit::RemoteLayerTreeContext::deviceScaleFactor):
- WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::layerWasCreated):
- WebProcess/ios/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::enterFullscreenForNode):
(WebKit::WebVideoFullscreenManager::didSetupFullscreen):
- 1:45 PM Changeset in webkit [173701] by
-
- 2 edits in branches/safari-600.1-branch/Source/WebCore
Merge r173664. rdar://problem/18187713
- 1:42 PM Changeset in webkit [173700] by
-
- 2 edits in branches/safari-600.1-branch/Source/WebCore
Merge r173632. rdar://problem/18187713
- 1:39 PM Changeset in webkit [173699] by
-
- 4 edits in branches/safari-600.1-branch/Source/WebCore
Merge r173631. rdar://problem/18187713
- 1:03 PM Changeset in webkit [173698] by
-
- 12 edits2 adds in trunk
Add parsing for :nth-child(An+B of selector)
https://bugs.webkit.org/show_bug.cgi?id=136845
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-17
Reviewed by Antti Koivisto.
Source/WebCore:
Add support for parsing :nth-child(of). The implementation of selector matching
will be in a follow up, there are enough edge cases here already.
Spec here: http://dev.w3.org/csswg/selectors4/#the-nth-child-pseudo
Test: fast/css/parsing-css-nth-child-of.html
- css/CSSParser.cpp:
(WebCore::CSSParser::detectFunctionTypeToken):
(WebCore::CSSParser::realLex):
The parser generate two new kinds of tokens:
-NTHCHILDFUNCTION, matching the "nth-child" identifier.
-NTHCHILDSELECTORSEPARATOR, matching the "of" keyword separating An+B from the selector list.
NTHCHILDFUNCTION is used to extend the new syntax only for :nth-child() and not all the "nth" functions
(e.g. :nth-of-type()).
NTHCHILDSELECTORSEPARATOR exists for two reasons:
-We must clear the "parsingMode" before parsing selectorList. If we failed to do that, the complex selectors
would be parsed in NthChildMode, which has all kind of bad side effects.
-The second reason is differentiacting "of" for all the other identifiers. Arguably, this could have been done
in the grammar, but it is clearer this way since we already need the branches for the parsingMode.
- css/CSSGrammar.y.in:
Those are pretty much duplicates of the existing FUNCTION rules but supporting the new syntax.
- css/CSSParserValues.cpp:
(WebCore::selectorListMatchesPseudoElement):
(WebCore::CSSParserSelector::matchesPseudoElement):
Matching pseudo elements does not make much sense for those selectorList (e.g. :nth-child(2n of ::before)).
Add helper function to fail parsing of those cases.
- css/CSSParserValues.h:
- css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText):
- css/CSSSelector.h:
(WebCore::CSSSelector::selectorList):
Updated serialization code for CSS OM.
LayoutTests:
- fast/css/parsing-css-nth-child-of-expected.txt: Added.
- fast/css/parsing-css-nth-child-of.html: Added.
Two new tests to cover the new syntax.
- fast/css/css-selector-text-expected.txt:
- fast/css/css-selector-text.html:
- fast/css/css-set-selector-text-expected.txt:
- fast/css/css-set-selector-text.html:
The usual tests for CSS OM.
- 1:01 PM Changeset in webkit [173697] by
-
- 9 edits6 adds in trunk
CSS value in whitespace-separated list attribute selector (~=) mishandles tab/newline/etc.
https://bugs.webkit.org/show_bug.cgi?id=136807
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-09-17
Reviewed by Antti Koivisto.
Source/WebCore:
The spec defines selector lists as token separated by white space.
The definition of white space for CSS Selectors is:
"White space in Selectors consists of the code points SPACE (U+0020),
TAB (U+0009), LINE FEED (U+000A), CARRIAGE RETURN (U+000D), and FORM FEED (U+000C)
can occur in whitespace. Other space-like code points, such as EM SPACE (U+2003)
and IDEOGRAPHIC SPACE (U+3000), are never part of white space."
The old code was only matching SPACE (U+0020) which is buggy. This patch
adds support for the other caracters.
Tests: fast/selectors/attr-list-01.html
fast/selectors/attribute-list-with-whitespace-in-selector.html
fast/selectors/attribute-list-with-whitespace-in-value.html
- css/SelectorChecker.cpp:
(WebCore::attributeValueMatches):
- cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::attributeValueSpaceSeparetedListContains):
Add the missing checks.
- html/track/VTTRegion.cpp:
(WebCore::VTTRegion::setRegionSettings):
(WebCore::VTTRegion::parseSettingValue):
- html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::hasRequiredFileIdentifier):
(WebCore::WebVTTParser::collectTimingsAndSettings):
- html/track/WebVTTParser.h:
While looking for affected code, I discovered WebVTT redefines isHTMLSpace().
I cleaned that code.
Source/WTF:
- wtf/text/AtomicString.h:
(WTF::AtomicString::find):
LayoutTests:
- fast/selectors/attr-list-01-expected.html: Added.
- fast/selectors/attr-list-01.html: Added.
This test is from a similar fix from Opera for the blink fork.
Review URL: https://chromiumcodereview.appspot.com/14980012
No other part of that patch is included.
- fast/selectors/attribute-list-with-whitespace-in-selector-expected.txt: Added.
- fast/selectors/attribute-list-with-whitespace-in-selector.html: Added.
Test whitespace characters in the selector itself.
- fast/selectors/attribute-list-with-whitespace-in-value-expected.txt: Added.
- fast/selectors/attribute-list-with-whitespace-in-value.html: Added.
Test whitespace characters in the attribute value.
- 11:27 AM Changeset in webkit [173696] by
-
- 11 edits in trunk/Source
Aways have a PageThrottler (sometimes have a UserActivity::Impl)
https://bugs.webkit.org/show_bug.cgi?id=136892
Reviewed by Geoffrey Garen.
Some instances of Page have a PageThrottler to track activity on the Page, and some do not.
(Specifically, those created from WebPage in WK2 do, those related to WK1, SVG & inspector do not).
We do this for three reasons:
- We do not need to take AppNap assertions on WK1.
- Some Pages do not track their visibility correctly, and would always claim to be visible.
- Page VisibilityState is not set until after construction, so if we instantiate
Creating the entire PageThrottler lazily has the drawback that we have to check for its existence at
numerous points throughout the code, and we'll miss activity that occurs between the Page being created
& the PageThrottler added to it (really a theoretical problem right now, since they're currently always
created pretty much back to back).
Instead, Page should always have a PageThrottler, & instead make the UserActivity::Impl on the
PageThrottler be added later.
Source/WebCore:
- WebCore.exp.in:
- createPageThrottler -> enablePageThrottler
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- Page::pageThrottler now returns a reference rather than a pointer
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::started):
- Page::pageThrottler now returns a reference rather than a pointer
- page/Page.cpp:
(WebCore::Page::Page):
- instantiate PageThrottler in constructor
(WebCore::Page::enablePageThrottler):
- renamed from createPageThrottler, instead of creating the PageThrottler this method now instruct PageThrottler to create a UserActivity::Impl
(WebCore::Page::setViewState):
- m_pageThrottler is not a pointer
(WebCore::Page::createPageThrottler): Deleted.
- renamed to enablePageThrottler
- page/Page.h:
(WebCore::Page::pageThrottler):
- now returns a reference
- page/PageThrottler.cpp:
(WebCore::PageThrottler::PageThrottler):
- no longer instantiate m_activity
(WebCore::PageThrottler::createUserActivity):
- lazily instantiate m_activity, call updateUserActivity
(WebCore::PageThrottler::updateUserActivity):
- m_activity may not yet be instantiated; added early return
- page/PageThrottler.h:
- m_activity becomes a std::unique_ptr, added createUserActivity
Source/WebKit2:
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::evaluate):
- createPageThrottler -> enablePageThrottler
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::wheelEvent):
(WebKit::WebPage::keyEvent):
- Page::pageThrottler now returns a reference rather than a pointer
- 11:18 AM Changeset in webkit [173695] by
-
- 69 edits27 copies6 adds in trunk
[iOS] Make WebCore build with public iOS SDK
https://bugs.webkit.org/show_bug.cgi?id=136487
Reviewed by David Kilzer.
Source/WebCore:
Add headers that wrap Mac and iOS SPIs and update WebCore source files to include these
headers instead of the corresponding actual SPI header(s).
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.vcxproj/WebCoreCG.props:
- WebCore.vcxproj/copyForwardingHeaders.cmd:
- WebCore.xcodeproj/project.pbxproj:
- bindings/objc/DOMInternal.mm:
- bridge/objc/objc_instance.mm:
- platform/audio/ios/MediaSessionManagerIOS.mm:
- platform/cocoa/DisplaySleepDisablerCocoa.cpp:
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
- platform/graphics/SimpleFontData.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
- platform/graphics/ca/mac/PlatformCALayerMac.mm:
- platform/graphics/cg/BitmapImageCG.cpp:
- platform/graphics/cg/ColorCG.cpp:
- platform/graphics/cg/GraphicsContextCG.cpp:
- platform/graphics/cg/ImageSourceCG.cpp:
- platform/graphics/cg/PDFDocumentImage.cpp:
- platform/graphics/cocoa/FontPlatformDataCocoa.mm:
- platform/graphics/ios/FontCacheIOS.mm:
- platform/graphics/ios/FontServicesIOS.mm:
- platform/graphics/ios/SimpleFontDataIOS.mm:
- platform/graphics/mac/FontMac.mm:
- platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
- platform/graphics/mac/MediaPlayerProxy.h:
- platform/graphics/mac/SimpleFontDataMac.mm:
- platform/ios/LegacyTileCache.mm:
- platform/ios/LegacyTileGrid.mm:
- platform/ios/LegacyTileGridTile.mm:
- platform/ios/PlatformEventFactoryIOS.mm:
- platform/ios/PlatformScreenIOS.mm:
- platform/ios/WebEvent.mm:
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
- platform/ios/wak/WAKAppKitStubs.h:
- platform/ios/wak/WAKView.h:
- platform/ios/wak/WKGraphics.h:
- platform/ios/wak/WKGraphics.mm:
- platform/ios/wak/WebCoreThread.mm:
- platform/network/ios/QuickLook.mm:
- platform/spi/ca/CALayerSPI.h: Added.
- platform/spi/ca/CATiledLayerSPI.h: Added.
- platform/spi/cf/CFLocaleSPI.h: Modified to use EXTERN_C.
- platform/spi/cf/CFNetworkConnectionCacheSPI.h: Ditto. Also changed header visibility from private to project.
- platform/spi/cf/CFURLRequestSPI.h: Ditto. Also modified to unconditionally include header <CoreFoundation/CFBase.h>.
- platform/spi/cg/CGColorTransformSPI.h: Added.
- platform/spi/cg/CGContextSPI.h: Added.
- platform/spi/cg/CGFloatSPI.h: Added.
- platform/spi/cg/CGFontGlyphSupportSPI.h: Added.
- platform/spi/cg/CGFontInfoSPI.h: Added.
- platform/spi/cg/CGFontRenderingSPI.h: Added.
- platform/spi/cg/CGFontUnicodeSupportSPI.h: Added.
- platform/spi/cg/CGImageSPI.h: Added.
- platform/spi/cg/CGSRegionSPI.h: Added.
- platform/spi/cocoa/DispatchSPI.h: Added.
- platform/spi/cocoa/IOPMLibSPI.h: Added.
- platform/spi/cocoa/MachVMSPI.h: Added.
- platform/spi/cocoa/NSFileManagerSPI.h: Added.
- platform/spi/cocoa/NSGeometrySPI.h: Added.
- platform/spi/cocoa/NSPointerFunctionsSPI.h: Added.
- platform/spi/cocoa/dyldSPI.h: Added.
- platform/spi/ios/AVPlayerControllerSPI.h: Added.
- platform/spi/ios/AVPlayerViewControllerSPI.h: Added.
- platform/spi/ios/AVValueTimingSPI.h: Added.
- platform/spi/ios/AVVideoLayerSPI.h: Added.
- platform/spi/ios/CTFontDescriptorSPI.h: Added.
- platform/spi/ios/CTFontSPI.h: Added.
- platform/spi/ios/CUICatalogSPI.h: Added.
- platform/spi/ios/CUIStyleEffectConfigurationSPI.h: Added.
- platform/spi/ios/MPAVRoutingControllerSPI.h: Added.
- platform/spi/ios/MobileGestaltSPI.h: Added.
- platform/spi/ios/QLPreviewConverterSPI.h: Added.
- platform/spi/ios/QuickLookSPI.h: Added.
- rendering/RenderThemeIOS.mm:
Source/WebKit/ios:
Substitute <WebCore/CGFloatSPI.h> for <CoreGraphics/CGFloat.h>.
- WebCoreSupport/WebFixedPositionContent.mm:
Source/WebKit/mac:
Update WebKit1 source files to include the wrapper SPI headers instead of the corresponding
actual SPI header(s).
- DOM/WebDOMOperationsPrivate.h:
- MigrateHeaders.make: Modified to only modify the include path of a "<WebCore/"-prefixed header
file if its filename doesn't end in "SPI.h" as an alternative to having MigrateHeaders.make copy
such files into the WebKit framework as private headers.
- WebCoreSupport/WebFrameLoaderClient.mm:
- WebInspector/WebNodeHighlight.mm:
- WebView/WebIndicateLayer.mm:
- WebView/WebRenderLayer.h:
- WebView/WebView.mm:
Source/WebKit2:
Update WebKit2 source files to include the wrapper SPI headers instead of the corresponding
actual SPI header(s).
- Platform/mac/SharedMemoryMac.cpp:
- Shared/ios/NativeWebTouchEventIOS.mm:
- Shared/mac/RemoteLayerBackingStore.mm:
- Shared/mac/RemoteLayerTreePropertyApplier.mm:
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/ios/WKPDFPageNumberIndicator.mm:
- UIProcess/ios/WKScrollView.mm:
- UIProcess/ios/WebMemoryPressureHandlerIOS.mm:
- UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
- WebProcess/WebPage/WebPage.cpp:
Source/WTF:
Define convenience macro EXTERN_C that can be used to specify the C linkage convention
for a declaration. For example, the declaration "EXTERN_C const int x;" will expand to:
extern const int x;
and
extern "C" const int x;
when used in a C and C++ file, respectively.
- wtf/Compiler.h:
Tools:
Substitute <WebCore/MachVMSPI.h> for <mach/mach_vm.h>.
- DumpRenderTree/mac/CheckedMalloc.cpp:
- 10:00 AM Changeset in webkit [173694] by
-
- 12 edits in trunk/Source
DOM timer throttling for hidden plugins
https://bugs.webkit.org/show_bug.cgi?id=136197
Patch by Gavin Barraclough <barraclough@apple.com> on 2014-09-17
Reviewed by Geoff Garen & Andreas Kling.
For non-visible web pages we slow timers (since they can't be driving animations, etc).
We should do the same for plugins.
Source/WebCore:
There are a few steps to this:
- JSPluginElementFunctions notifies DOMTimer when script interacts with a plugin.
- DOMTimerFireState keeps a record of events that occur while a timer is firing.
- DOMTimer::fired detects timers that interact with invisible/inaudible plugins, and flags itself for throtting.
- DOMTimer::intervalClampedToMinimum sets timer intervals appropriately.
- bindings/js/JSPluginElementFunctions.cpp:
(WebCore::pluginScriptObject):
- notify DOMTimer when script interacts with a plugin.
- html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::isDetectable):
- html/HTMLPlugInElement.h:
- added isDetectable, to check for visible / audible plugins.
- page/DOMTimer.cpp:
(WebCore::DOMTimerFireState::DOMTimerFireState):
(WebCore::DOMTimerFireState::~DOMTimerFireState):
- track current DOMTimerFireState.
(WebCore::DOMTimer::DOMTimer):
- initialize m_throttleState.
(WebCore::DOMTimer::scriptDidInteractWithPlugin):
- if interaction with a plugin occurs while a timer is firing, record on the DOMTimerFireState.
(WebCore::DOMTimer::fired):
- set DOMTimerFireState, and update m_throttleState accordingly.
(WebCore::DOMTimer::updateTimerIntervalIfNecessary):
- remove redundant check of maxTimerNestingLevel (covered by intervalClampedToMinimum).
(WebCore::DOMTimer::intervalClampedToMinimum):
- Also take m_throttleState into account when throttling.
- page/DOMTimer.h:
- added scriptDidInteractWithPlugin, m_throttleState.
- platform/audio/AudioHardwareListener.h:
- enum -> enum class.
- plugins/PluginViewBase.h:
(WebCore::PluginViewBase::audioHardwareActivity):
- expose audioHardwareActivity on PluginViewBase (previously available in subclass).
Source/WebKit2:
- PluginProcess/WebProcessConnection.cpp:
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
- remove now redundant includes.
- WebProcess/Plugins/PluginView.h:
- audioHardwareActivity is now virtual, override.
- 9:32 AM Changeset in webkit [173693] by
-
- 4 edits in trunk/Source/WebCore
Exclude page visibility from PageThrottler's hysteresis
https://bugs.webkit.org/show_bug.cgi?id=136866
Reviewed by Geoff Garen.
Including visibility in the hysteresis mechanism has the effect of prolonging the visually
idle timeout, and causing the page hide event to be run at foreground priority. Neither of
these are particularly desirable. Instead separate visibility from the rest of the page
activities we track (and apply hysteresis to), and feed this directly into determination
of the UserActivity state.
- page/PageThrottler.cpp:
(WebCore::PageThrottler::PageThrottler):
- when the PageThrottler is instantiated call updateUserActivity to set initial UserActivity.
(WebCore::PageThrottler::incrementActivityCount):
- simplified - when m_activityCount becomes non-zero, start m_hysteresis.
(WebCore::PageThrottler::decrementActivityCount):
- simplified - when m_activityCount becomes zero, stop m_hysteresis.
(WebCore::PageThrottler::updateUserActivity):
- end the UserActivity (allow AppNap) if visually idle and no page activity is taking place.
(WebCore::PageThrottler::setViewState):
- when the visually idle state changed call updateUserActivity to update the UserActivity.
(WebCore::PageThrottler::started):
(WebCore::PageThrottler::stopped):
- when the hysteresis state changed call updateUserActivity to update the UserActivity.
(WebCore::PageThrottler::updateHysteresis): Deleted.
- removed: simplified the hysteresis trigger, we now incorporate visually idle state in updateUserActivity.
- page/PageThrottler.h:
- removed updateHysteresis, added updateUserActivity.
- platform/HysteresisActivity.h:
(WebCore::HysteresisActivity::state):
- determine the curent state of the HysteresisActivity - started, waiting, or stopped.
- 9:12 AM Changeset in webkit [173692] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Fix runtime critical warnings when writing to the clipboard after r173687
https://bugs.webkit.org/show_bug.cgi?id=136891
Reviewed by Philippe Normand.
- platform/gtk/PasteboardHelper.cpp:
(WebCore::PasteboardHelper::writeClipboardContents): Check passed
callback is not null before trying to ref/unref it since
g_closure_ref/unref are not null safe.
- 9:11 AM Changeset in webkit [173691] by
-
- 7 edits in trunk
[GTK] WebKitWebView::load-failed-with-tls-errors should receive the failing URI instead of a host
https://bugs.webkit.org/show_bug.cgi?id=136889
Reviewed by Gustavo Noronha Silva.
Source/WebKit2:
We were passing a host for two different reasons, first because
it's more convenient to add an exception with
webkit_web_context_allow_tls_certificate_for_host(), but also
because we were assuming the active URI is the failing URI in case
of failure. This assumption is correct because our current code
does that, but I'm not sure we are doing it on purpose. That
behaviour is not documented anywhere and it's not what WebKit2 does
internaly.
- UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init):
(webkitWebViewLoadFailedWithTLSErrors):
- UIProcess/API/gtk/WebKitWebView.h:
Tools:
- TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:
(testLoadFailedWithTLSErrors): Check that LoadFailedWithTLSErrors
event was added to the events vector.
- TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp:
(loadFailedCallback): Do not assume the web view URI is the
failing URI when the load fails before the committed state.
(loadFailedWithTLSErrorsCallback): Handle the case of load failure
because of TLS errors can call LoadTrackingTest::loadFailedWithTLSErrors.
(LoadTrackingTest::LoadTrackingTest): Connect to WebKitWebView::load-failed-with-tls-errors.
(LoadTrackingTest::loadFailedWithTLSErrors): Add
LoadFailedWithTLSErrors event to the events vector.
- TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h:
- 5:35 AM Changeset in webkit [173690] by
-
- 3 edits in trunk/Source/WebCore
[GTK] Add a helper function for display system deduction
https://bugs.webkit.org/show_bug.cgi?id=136849
Reviewed by Martin Robinson.
getDisplaySystemType() is a helper function that checks the type of the
default GdkDisplay object and initializes a static variable to the
corresponding value. It then returns the value of that variable.
When building with the GTK+2 API (still the case with the GTK+2 plugin
process) we default to X11.
The function is declared and implemented in GtkUtilities files.
- platform/gtk/GtkUtilities.cpp:
(WebCore::widgetIsOnscreenToplevelWindow):
(WebCore::getDisplaySystemType):
- platform/gtk/GtkUtilities.h:
- 2:29 AM Changeset in webkit [173689] by
-
- 13 edits in trunk
[EFL][GTK] Remove WebKit1 related codes
https://bugs.webkit.org/show_bug.cgi?id=136853
Patch by Renato Nagy <rnagy@inf.u-szeged.hu> on 2014-09-17
Reviewed by Csaba Osztrogonác.
Gtk and EFL WebKit1 ports no longer exist. Webkit1 related codes were deleted
from scripts.
.:
- Source/PlatformGTK.cmake:
Tools:
- BuildSlaveSupport/build.webkit.org-config/config.json:
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(Compile32bitJSC):
(BuildAndTestWebKit2Factory):
(CompileWebKit1Only): Deleted.
(CompileWebKit2Only): Deleted.
(BuildAndTestWebKit1OnlyFactory): Deleted.
(BuildAndTestWebKit2OnlyFactory): Deleted.
- Scripts/build-webkit:
- Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRefGettingValue.pl:
- Scripts/webkitpy/common/config/ports.py:
(GtkWK2Port.build_webkit_command):
(EflWK2Port.build_webkit_command):
- Scripts/webkitpy/common/config/ports_unittest.py:
(DeprecatedPortTest.test_gtk_wk2_port):
- Scripts/webkitpy/port/efl.py:
(EflPort.build_webkit_command):
- Scripts/webkitpy/port/gtk.py:
(GtkPort._built_libraries_path):
(GtkPort._search_paths):
(GtkPort.test_expectations_file_position):
(GtkPort.build_webkit_command):
(GtkPort.run_webkit_tests_command):
(GtkPort.warn_if_bug_missing_in_test_expectations): Deleted.
- 1:54 AM Changeset in webkit [173688] by
-
- 3 edits2 adds in trunk
filterRootById accidentally clears inAdjacentChain flag
https://bugs.webkit.org/show_bug.cgi?id=136851
Reviewed by Benjamin Poulain.
Source/WebCore:
Test: fast/selectors/filter-root-node-with-selector-contains-adjacents.html
- dom/SelectorQuery.cpp:
(WebCore::filterRootById):
LayoutTests:
When SubSelector comes,
inAdjacentChain
flag is cleared to false.
So for example,document.querySelector("span#id + ok")
doesn't work correctly.
In this patch, we handles SubSelector relation correctly; don't changeinAdjacentChain
flag
to filter the right search root node.
- fast/selectors/filter-root-node-with-selector-contains-adjacents-expected.txt: Added.
- fast/selectors/filter-root-node-with-selector-contains-adjacents.html: Added.
- 12:05 AM Changeset in webkit [173687] by
-
- 15 edits2 adds in trunk/Source
[GTK] Fix layering violations in PasteboardGtk
https://bugs.webkit.org/show_bug.cgi?id=136802
Reviewed by Darin Adler.
Source/WebCore:
Refactor the Pasteboard code moving the WebCore parts to the Editor.
- PlatformGTK.cmake: Add new file to compilation.
- editing/Editor.cpp:
(WebCore::Editor::performCutOrCopy):
(WebCore::Editor::copyImage):
- editing/Editor.h:
- editing/gtk/EditorGtk.cpp: Added.
(WebCore::createFragmentFromPasteBoardData):
(WebCore::Editor::pasteWithPasteboard):
(WebCore::getImageAndURLForElement):
(WebCore::Editor::writeImageToPasteboard):
(WebCore::Editor::writeSelectionToPasteboard):
- page/DragController.cpp:
(WebCore::DragController::startDrag):
- page/gtk/DragControllerGtk.cpp:
(WebCore::DragController::declareAndWriteDragImage):
- platform/Pasteboard.h:
- platform/gtk/DataObjectGtk.cpp: Remove range member, the caller
should call setText() + setMarkup() intead.
(WebCore::DataObjectGtk::setText):
(WebCore::DataObjectGtk::setMarkup):
(WebCore::DataObjectGtk::clearText):
(WebCore::DataObjectGtk::clearMarkup):
(WebCore::DataObjectGtk::clearAllExceptFilenames):
- platform/gtk/DataObjectGtk.h:
(WebCore::DataObjectGtk::hasText):
(WebCore::DataObjectGtk::hasMarkup):
(WebCore::DataObjectGtk::clearImage):
(WebCore::DataObjectGtk::text):
(WebCore::DataObjectGtk::markup):
(WebCore::DataObjectGtk::setRange): Deleted.
- platform/gtk/GtkDragAndDropHelper.h:
- platform/gtk/PasteboardGtk.cpp:
(WebCore::PasteboardImage::PasteboardImage):
(WebCore::PasteboardImage::~PasteboardImage):
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::writeSelection): Deleted.
(WebCore::getURLForImageElement): Deleted.
(WebCore::Pasteboard::writeImage): Deleted.
(WebCore::Pasteboard::documentFragment): Deleted.
- platform/gtk/PasteboardHelper.cpp:
(WebCore::displayFromFrame): Deleted.
(WebCore::PasteboardHelper::getPrimarySelectionClipboard): Deleted.
- platform/gtk/PasteboardHelper.h:
Source/WebKit2:
- WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::WebEditorClient::updateGlobalSelection): Use new API to
update the global selection.
Sep 16, 2014:
- 11:27 PM Changeset in webkit [173686] by
-
- 15 edits in trunk/Source
DragData should not depend on Clipboard, DocumentFragment, and Document
https://bugs.webkit.org/show_bug.cgi?id=21358
Reviewed by Darin Adler.
Source/WebCore:
Refactor DragData to not depend on Frame, DocumentFragment,
Document and Range. DragData::asFragment() has been moved to
DragController and implemented in the platform specific file.
DragData methods using Frame has been reworked in Mac to not use
Frame, since all other ports were ignoreing the frame parameter.
- page/DragController.cpp:
(WebCore::DragController::documentFragmentFromDragData): Make it
a static member to be able to use createFragmentFromDragData().
(WebCore::DragController::performDragOperation): Update to
DragData API changes.
(WebCore::DragController::dispatchTextInputEventFor): Ditto.
(WebCore::DragController::concludeEditDrag): Ditto.
(WebCore::documentFragmentFromDragData): Deleted.
- page/DragController.h:
- page/efl/DragControllerEfl.cpp:
(WebCore::DragController::createFragmentFromDragData): Move
DragData::asFragment() implementation here.
- page/gtk/DragControllerGtk.cpp:
(WebCore::DragController::dragOperation):
(WebCore::DragController::createFragmentFromDragData): Ditto.
- page/mac/DragControllerMac.mm:
(WebCore::DragController::dragOperation):
(WebCore::DragController::createFragmentFromDragData): Ditto.
- page/win/DragControllerWin.cpp:
(WebCore::DragController::createFragmentFromDragData): Ditto.
- platform/DragData.h:
- platform/efl/DragDataEfl.cpp:
(WebCore::DragData::asPlainText): Remove Frame parameter.
(WebCore::DragData::containsURL): Ditto.
(WebCore::DragData::asURL): Ditto.
(WebCore::DragData::asFragment): Deleted.
- platform/gtk/DragDataGtk.cpp:
(WebCore::DragData::asPlainText): Remove Frame parameter.
(WebCore::DragData::containsCompatibleContent):
(WebCore::DragData::containsURL): Ditto.
(WebCore::DragData::asURL): Ditto.
(WebCore::DragData::asFragment): Deleted.
- platform/mac/DragDataMac.mm:
(WebCore::DragData::asPlainText): Same implementation as the
Editor.
(WebCore::DragData::containsURL): Remove Frame parameter.
(WebCore::DragData::asURL): Use URLByCanonicalizingURL() instead
of using the Editor client.
(WebCore::DragData::asFragment): Deleted.
- platform/win/DragDataWin.cpp:
(WebCore::DragData::containsURL): Remove Frame parameter.
(WebCore::DragData::asURL): Ditto.
(WebCore::DragData::asPlainText): Ditto.
(WebCore::DragData::containsCompatibleContent):
(WebCore::DragData::asFragment): Deleted.
Source/WebKit2:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::performDragControllerAction): Update to API
change in DragData::asURL().
- 9:32 PM Changeset in webkit [173685] by
-
- 4 edits in trunk/Source
Unreviewed, disable native inlining because it causes build failures.
Source/JavaScriptCore:
- JavaScriptCore.xcodeproj/project.pbxproj:
Source/WTF:
- wtf/Platform.h:
- 7:00 PM Changeset in webkit [173684] by
-
- 21 edits in trunk/Source/WebCore
Rename Node::childNode(index) to traverseToChildAt(index) for clarity
https://bugs.webkit.org/show_bug.cgi?id=136825
Reviewed by Benjamin Poulain.
Rename Node::childNode(index) to traverseToChildAt(index) to make it
clearer that the method is actually traversing the children and thus
potentially expensive.
This patch also avoids calling traverseToChildAt() in a couple of
easily avoidable cases.
No new tests, no behavior change.
- WebCore.exp.in:
- WebCore.order:
Remove symbol for ContainerNode::childNode() as it was renamed. It does
not seem we need to expose ContainerNode::traverseToChildAt().
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::stringForVisiblePositionRange):
(WebCore::AccessibilityObject::lengthForVisiblePositionRange):
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
Mechanical renaming.
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::traverseToChildAt):
(WebCore::ContainerNode::childNode): Deleted.
- dom/ContainerNode.h:
(WebCore::Node::traverseToChildAt):
(WebCore::Node::childNode): Deleted.
- dom/Node.h:
- Rename Node / ContainerNode's childNode(index) to traverseToChildAt(index) to make it clear that it is actually traversing the children and thus potentially expensive.
- Clean up the implementation of ContainerNode::traverseToChildAt() to avoid the use of an extra |i| variable.
- dom/Position.cpp:
(WebCore::Position::computeNodeBeforePosition):
Avoid calling traverseToChildAt(-1). Relying on the unsigned argument
wrapping and the method returning null in this case is a bit obscure
and causes unnecessary traversal of all children.
(WebCore::Position::computeNodeAfterPosition):
(WebCore::Position::previous):
(WebCore::Position::next):
Mechanical renaming and update variable names to stop using
abbreviations as per coding style.
- dom/PositionIterator.h:
(WebCore::PositionIterator::PositionIterator):
- dom/Range.cpp:
(WebCore::Range::insertNode):
(WebCore::Range::checkNodeWOffset):
(WebCore::Range::firstNode):
(WebCore::Range::pastLastNode):
- dom/RangeBoundaryPoint.h:
(WebCore::RangeBoundaryPoint::set):
- editing/BreakBlockquoteCommand.cpp:
(WebCore::BreakBlockquoteCommand::doApply):
- editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::removeChildrenInRange):
- editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
- editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):
- editing/TextIterator.cpp:
(WebCore::nextInPreOrderCrossingShadowBoundaries):
(WebCore::TextIterator::node):
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
- editing/VisibleUnits.cpp:
(WebCore::nextLinePosition):
- editing/cocoa/HTMLConverter.mm:
(WebCore::editingAttributedStringFromRange):
Mechanical renaming.
- inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::innerPatchChildren):
Iterate over children while incrementing the |i| variable to avoid
calling traverseToChildAt(index) repeatedly and thus traversing the
children from the beginning every time.
- 5:49 PM Changeset in webkit [173683] by
-
- 5 edits in trunk/Source
Web Inspector: Reduce a bit of churn setting initial remote inspection state
https://bugs.webkit.org/show_bug.cgi?id=136875
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-16
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
- API/JSContextRef.cpp:
(JSGlobalContextCreateInGroup):
Set the defaultl remote debuggable state at the API boundary.
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
Do not set remote debuggable state here. Let clients set it.
Source/WebCore:
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::finishCreation):
We no longer need to toggle this state.
- 5:48 PM Changeset in webkit [173682] by
-
- 7 edits in trunk/Source/WebCore
Should have an editing behavior specific for IOS.
https://bugs.webkit.org/show_bug.cgi?id=136876
Reviewed by Sam Weinig.
This patch introduces a new editing behavior type to be able
to perform editing tasks that are specific to iOS.
All the existing EditingBehavior methods return the same boolean
value for for Mac and iOS. A new one has been introduced to support
a specific behavior in the DeleteSelectionCommand.
- editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::doApply):
- editing/EditingBehavior.h:
(WebCore::EditingBehavior::shouldConsiderSelectionAsDirectional):
(WebCore::EditingBehavior::shouldCenterAlignWhenSelectionIsRevealed):
(WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection):
(WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary):
(WebCore::EditingBehavior::shouldSelectOnContextualMenuClick):
(WebCore::EditingBehavior::shouldExtendSelectionByWordOrLineAcrossCaret):
(WebCore::EditingBehavior::shouldRebalanceWhiteSpacesInSecureField):
- editing/EditingBehaviorTypes.h:
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::positionForPlatform):
- page/Settings.cpp:
(WebCore::editingBehaviorTypeForPlatform):
- testing/InternalSettings.cpp:
(WebCore::InternalSettings::setEditingBehavior):
- 5:32 PM Changeset in webkit [173681] by
-
- 8 edits2 deletes in trunk
Promise: Drop Promise.cast
https://bugs.webkit.org/show_bug.cgi?id=136222
Reviewed by Sam Weinig.
Promise.cast is dropped and Promise.resolve is replaced with old Promise.cast.
Source/JavaScriptCore:
- runtime/CommonIdentifiers.h:
- runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructorFuncResolve):
(JSC::JSPromiseConstructorFuncRace):
(JSC::JSPromiseConstructorFuncAll):
(JSC::JSPromiseConstructorFuncCast): Deleted.
LayoutTests:
- js/dom/Promise-static-cast-expected.txt: Removed.
- js/dom/Promise-static-cast.html: Removed.
- js/dom/Promise-static-resolve-expected.txt:
- js/dom/Promise-static-resolve.html:
- js/dom/Promise-types-expected.txt:
- js/dom/Promise-types.html:
- 4:47 PM Changeset in webkit [173680] by
-
- 2 edits5 adds in trunk/Source/WebInspectorUI
Web Inspector: Add Versioned Inspector protocol JSON files for iOS 8.0
https://bugs.webkit.org/show_bug.cgi?id=136873
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-16
Reviewed by Timothy Hatcher.
- Scripts/update-LegacyInspectorBackendCommands.rb:
- UserInterface/Protocol/Legacy/8.0/InspectorJSBackendCommands.js: Added.
- UserInterface/Protocol/Legacy/8.0/InspectorWebBackendCommands.js: Added.
- Versions/InspectorJS-iOS-8.0.json: Added.
- Versions/InspectorWeb-iOS-8.0.json: Added.
- 4:32 PM Changeset in webkit [173679] by
-
- 2 edits3 adds2 deletes in trunk/Source/WebCore
Unreviewed, rolling out r173670.
https://bugs.webkit.org/show_bug.cgi?id=136871
Creates layering violation (Requested by enrica on #webkit).
Reverted changeset:
"Move HTMLConverter from editing/cocoa to platform/cocoa."
https://bugs.webkit.org/show_bug.cgi?id=136474
http://trac.webkit.org/changeset/173670
Patch by Commit Queue <commit-queue@webkit.org> on 2014-09-16
- 4:27 PM Changeset in webkit [173678] by
-
- 2 edits in trunk/Source/WebCore
[Mac] MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput doesn't work with rotated movies
https://bugs.webkit.org/show_bug.cgi?id=136872
Patch by Eric Carlson <eric.carlson@apple.com> on 2014-09-16
Reviewed by Tim Horton.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator): Add logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput): Apply the video track
preferred transform.
- 4:12 PM Changeset in webkit [173677] by
-
- 2 edits in branches/safari-600.1-branch/Source/WebCore
[Mac] MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput doesn't work with rotated movies
https://bugs.webkit.org/show_bug.cgi?id=136872
Patch by Eric Carlson <eric.carlson@apple.com> on 2014-09-16
Reviewed by Tim Horton.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator): Add logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput): Apply the video track
preferred transform.
- 3:53 PM Changeset in webkit [173676] by
-
- 2 edits in branches/safari-600.1-branch/Source/WebCore
Merged r173635
- 3:37 PM Changeset in webkit [173675] by
-
- 7 edits in trunk/Source/bmalloc
bmalloc: moved line caches from the deallocator to the allocator
https://bugs.webkit.org/show_bug.cgi?id=136868
Reviewed by Gavin Barraclough.
I did this mostly as a simplification, to make it easier to change the
allocation strategy.
No throughput change on MallocBench. Saves about 50kB.
Since the deallocator needs to lock the heap when freeing lines anyway,
there isn't much benefit to giving the deallocator a local cache of
deallocated lines.
We still give the allocator a local cache of lines because that does
reduce the frequency at which it needs to lock the heap in order to
acquire more lines.
- bmalloc/Allocator.cpp:
(bmalloc::Allocator::scavenge):
(bmalloc::Allocator::allocateSmallLine):
(bmalloc::Allocator::allocateMediumLine):
(bmalloc::Allocator::allocateMedium):
(bmalloc::Allocator::allocateSlowCase):
- bmalloc/Allocator.h:
- bmalloc/Deallocator.cpp:
(bmalloc::Deallocator::Deallocator):
(bmalloc::Deallocator::scavenge):
(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSmallLine): Deleted.
(bmalloc::Deallocator::allocateSmallLine): Deleted.
(bmalloc::Deallocator::deallocateMediumLine): Deleted.
(bmalloc::Deallocator::allocateMediumLine): Deleted.
- bmalloc/Deallocator.h:
- bmalloc/Sizes.h:
- bmalloc/VMAllocate.h: Took the opportunity to make the line cache size
exactly one page in size. That's about what we were shooting for anyway,
and it may make it easier to switch to per-page allocation in future.
- 3:36 PM Changeset in webkit [173674] by
-
- 4 edits in trunk/LayoutTests
Make spelling tests more reliable by using a word that is misspelled everywhere
https://bugs.webkit.org/show_bug.cgi?id=136865
Reviewed by Simon Fraser.
Some platforms recognize "wellcome" as spelled correctly.
- editing/spelling/context-menu-suggestions.html:
- editing/spelling/spelling-with-punctuation-selection-expected.txt:
- editing/spelling/spelling-with-punctuation-selection.html:
- 3:29 PM Changeset in webkit [173673] by
-
- 8 edits in trunk
[iOS] Add iOS SDK name and version suffix to WebKitSystemInterface debug/release product name
https://bugs.webkit.org/show_bug.cgi?id=136862
Reviewed by David Kilzer.
Source/WebKit/mac:
- Configurations/DebugRelease.xcconfig:
Source/WebKit2:
- Configurations/DebugRelease.xcconfig:
Tools:
- DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
- WebKitTestRunner/Configurations/DebugRelease.xcconfig:
- WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Remove hardcoded iOS 8.0
IPHONEOS_DEPLOYMENT_TARGET to ensure we link against the latest version of WebKitSystemInterface.
- 3:18 PM Changeset in webkit [173672] by
-
- 4 edits in trunk/Source/JavaScriptCore
Local OSR availability calculation should be reusable
https://bugs.webkit.org/show_bug.cgi?id=136860
Reviewed by Oliver Hunt.
Previously, the FTL lowering repeated some of the logic of the OSR availability analysis
phase. Humorously, it actually did this logic a bit differently; for example the phase
would claim that a SetLocal makes both the flush and the node available while the FTL
only claimed that the flush was available. This different was benign, but still: yuck!
Also, previously if you wanted to use availability information then you'd have to repeat
some of the logic that both the phase itself and the FTL lowering already had.
Presumably, you could get epic style points for finding other benign ways in which to
make your copy of the logic different from the other two!
This reduces the amount of style points one could conceivably get in the future when
hacking JSC, by creating a single reusable thingy for computing local OSR availability.
- dfg/DFGOSRAvailabilityAnalysisPhase.cpp:
(JSC::DFG::OSRAvailabilityAnalysisPhase::run):
(JSC::DFG::LocalOSRAvailabilityCalculator::LocalOSRAvailabilityCalculator):
(JSC::DFG::LocalOSRAvailabilityCalculator::~LocalOSRAvailabilityCalculator):
(JSC::DFG::LocalOSRAvailabilityCalculator::beginBlock):
(JSC::DFG::LocalOSRAvailabilityCalculator::executeNode):
- dfg/DFGOSRAvailabilityAnalysisPhase.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileBlock):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileSetLocal):
(JSC::FTL::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::LowerDFGToLLVM::availability):
(JSC::FTL::LowerDFGToLLVM::compileMovHint): Deleted.
(JSC::FTL::LowerDFGToLLVM::compileZombieHint): Deleted.
(JSC::FTL::LowerDFGToLLVM::initializeOSRExitStateForBlock): Deleted.
- 3:14 PM Changeset in webkit [173671] by
-
- 2 edits in trunk/Tools
Mac queue slaves should reboot every so often
https://bugs.webkit.org/show_bug.cgi?id=136791
Reviewed by Alexey Proskuryakov.
Reboot Mac queue slaves every night between 1 A.M. and 6 A.M.
- EWSTools/start-queue-mac.sh:
- 2:00 PM Changeset in webkit [173670] by
-
- 2 edits2 copies1 delete in trunk/Source/WebCore
Move HTMLConverter from editing/cocoa to platform/cocoa.
https://bugs.webkit.org/show_bug.cgi?id=136474
Reviewed by Benjamin Poulain.
This is a platform specific class and it belongs to the platform folder.
- WebCore.xcodeproj/project.pbxproj:
- editing/cocoa: Removed.
- editing/cocoa/HTMLConverter.h: Removed.
- editing/cocoa/HTMLConverter.mm: Removed.
- platform/cocoa/HTMLConverter.h: Copied from editing/cocoa/HTMLConverter.h.
- platform/cocoa/HTMLConverter.mm: Copied from editing/cocoa/HTMLConverter.mm.
- 1:38 PM Changeset in webkit [173669] by
-
- 9 edits in trunk/Source
Remove PLATFORM(IOS) from WebCore/editing (Part 3).
https://bugs.webkit.org/show_bug.cgi?id=136474
Reviewed by Benjamin Poulain.
This is the updated version of the patch that was landed in r173340.
This patch removes the use of PLATFORM(IOS) from TextAffinity.h
and removes the assumption that EAffinity values match NSSelectionAffinity
values. It also removes the includes in TextAffinity.h, creating the need to
include explicitly the files when necessary.
Source/WebCore:
- editing/TextAffinity.h:
(kit): Deleted.
(core): Deleted.
- editing/cocoa/HTMLConverter.mm:
- page/mac/WebCoreFrameView.h:
Source/WebKit/mac:
- WebCoreSupport/WebEditorClient.h:
(kit):
(core):
Source/WebKit2:
- WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
- WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
- 1:32 PM Changeset in webkit [173668] by
-
- 4 edits in trunk/Source/WebCore
overflow:scroll should not leave space for a scroll corner with overlay scrollbars
https://bugs.webkit.org/show_bug.cgi?id=136861
Reviewed by Sam Weinig.
overflow:scroll should behave like overflow:auto when the scrollbar will render as
an overlay scrollbar.
Re-name hasAutoVerticalScrollbar()/Horizontal to
hasVerticalScrollbarWithAutoBehavior()/Horizontal, and return true for
overflow:scroll scrollbars that will render as overlay scrollbars.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior):
(WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior):
- rendering/RenderBox.h:
(WebCore::RenderBox::scrollsOverflowX):
(WebCore::RenderBox::scrollsOverflowY):
(WebCore::RenderBox::hasAutoVerticalScrollbar): Deleted.
(WebCore::RenderBox::hasAutoHorizontalScrollbar): Deleted.
Re-name overflowRequiresScrollbar() to styleRequiresScrollbar() and also re-name
overflowDefinesAutomaticScrollbar() to styleDefinesAutomaticScrollbar(), and make
these functions take into account the fact that overflow:scroll should act like
overflow:auto when the scrollbar will render as an overlay scrollbar.
- rendering/RenderLayer.cpp:
(WebCore::styleRequiresScrollbar):
(WebCore::styleDefinesAutomaticScrollbar):
(WebCore::RenderLayer::updateScrollbarsAfterLayout):
(WebCore::RenderLayer::calculateClipRects):
- 12:54 PM Changeset in webkit [173667] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Fix ESLint no-extra-bind warnings
https://bugs.webkit.org/show_bug.cgi?id=136659
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-16
Reviewed by Timothy Hatcher.
- .eslintrc:
- UserInterface/Controllers/LayerTreeManager.js:
(WebInspector.LayerTreeManager.prototype.layersForNode):
- 12:22 PM Changeset in webkit [173666] by
-
- 4 edits in trunk/Source/WebCore
[Curl] Sometimes incomplete or empty content can be loaded from cache.
https://bugs.webkit.org/show_bug.cgi?id=136855
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-16
Reviewed by Alex Christensen.
Sometimes, when two requests with the same url are started at the same time,
there is a possibility of loading incomplete or empty content from the cache.
This happens because the method CurlCacheEntry::isLoading() is returning the wrong status
in the time period between the headers are received, and the content data is received.
This can be fixed by using a flag for the load status, instead of checking whether
the content file is open.
- platform/network/curl/CurlCacheEntry.cpp:
(WebCore::CurlCacheEntry::CurlCacheEntry): Initialize loading flag.
(WebCore::CurlCacheEntry::isLoading): Return loading flag.
(WebCore::CurlCacheEntry::didFail): Call new method to set loading flag.
(WebCore::CurlCacheEntry::didFinishLoading): Ditto.
(WebCore::CurlCacheEntry::setIsLoading): Added new method to set loading flag.
- platform/network/curl/CurlCacheEntry.h: Added loading flag and new method to set it.
- platform/network/curl/CurlCacheManager.cpp:
(WebCore::CurlCacheManager::didReceiveResponse): Call new method to set loading flag.
- 11:28 AM Changeset in webkit [173665] by
-
- 22 edits in trunk/Source/WebCore
Rename Node::nodeIndex() to computeNodeIndex() for clarity
https://bugs.webkit.org/show_bug.cgi?id=136826
Reviewed by Benjamin Poulain.
Rename Node::nodeIndex() to computeNodeIndex() to make it clear that
index is being computed and that calling this method is potentially
expensive.
No new tests, no behavior change.
- WebCore.exp.in:
- WebCore.order:
Rename exported symbol for Node::nodeIndex() as well.
- dom/Document.cpp:
(WebCore::Document::caretRangeFromPoint):
- dom/Node.cpp:
(WebCore::Node::computeNodeIndex):
(WebCore::Node::nodeIndex): Deleted.
- dom/Node.h:
- dom/NodeWithIndex.h:
(WebCore::NodeWithIndex::index):
Clean up implementation to reduce the scope of the Node variable and
to follow coding style (variable naming, spacing, star placement).
- dom/Position.cpp:
(WebCore::Position::computeOffsetInContainerNode):
(WebCore::Position::previous):
(WebCore::Position::next):
(WebCore::Position::upstream):
(WebCore::Position::downstream):
- dom/Position.h:
(WebCore::positionInParentBeforeNode):
(WebCore::positionInParentAfterNode):
- dom/Range.cpp:
(WebCore::Range::compareNode):
(WebCore::Range::intersectsNode):
(WebCore::Range::processContents):
(WebCore::Range::insertNode):
(WebCore::Range::setStartAfter):
(WebCore::Range::setEndBefore):
(WebCore::Range::setEndAfter):
(WebCore::Range::setStartBefore):
- dom/RangeBoundaryPoint.h:
(WebCore::RangeBoundaryPoint::ensureOffsetIsValid):
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
(WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
- editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
- editing/Editor.cpp:
(WebCore::Editor::avoidIntersectionWithDeleteButtonController):
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::selectFrameElementInParentIfFullySelected):
- editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply):
- editing/TextIterator.cpp:
(WebCore::TextIterator::range):
(WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
(WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
- editing/htmlediting.cpp:
(WebCore::updatePositionForNodeRemoval):
- html/HTMLTextFormControlElement.cpp:
(WebCore::setContainerAndOffsetForRange):
- page/DOMSelection.cpp:
(WebCore::DOMSelection::getRangeAt):
(WebCore::DOMSelection::containsNode):
(WebCore::DOMSelection::shadowAdjustedOffset):
- rendering/RenderBlock.cpp:
(WebCore::positionForPointRespectingEditingBoundaries):
- rendering/RenderTreeAsText.cpp:
(WebCore::nodePosition):
- 11:09 AM Changeset in webkit [173664] by
-
- 2 edits in trunk/Source/WebCore
Videos with controls enabled never receive 'dragstart' events.
https://bugs.webkit.org/show_bug.cgi?id=136837
Reviewed by Eric Carlson.
Fixes a crash regression introduced by r173631. Node::contains() has an interesting property of returning false
ifthis
is NULL. Rather than depending on this behavior, explicitly NULL-check state.source and bail early.
- page/DragController.cpp:
(WebCore::DragController::startDrag):
- 11:08 AM Changeset in webkit [173663] by
-
- 2 edits in trunk/LayoutTests
[Win] Unreviewed. Skip failing WebGL conformance test.
- platform/win/TestExpectations:
- 11:00 AM Changeset in webkit [173662] by
-
- 2 edits in trunk/Source/WebKit2
Standardized the return type of a delegate method.
Rubber-stamped by Anders Carlsson.
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Changed a return type from bool to BOOL.
- 10:27 AM Changeset in webkit [173661] by
-
- 2 edits in trunk/Source/WebCore/platform/gtk/po
[as] Updated Assamese translations of WebKitGtk+
https://bugs.webkit.org/show_bug.cgi?id=136480
Patch by Nilamdyuti Goswami <ngoswami@redhat.com> on 2014-09-16
Reviewed by Gustavo Noronha.
- as.po: updated.
- 9:18 AM Changeset in webkit [173660] by
-
- 2 edits in trunk/Source/WebCore
URTBF after r173659.
After r173659 convertToIntLength() is used only inside ENABLE(DASHBOARD_SUPPORT), so it
became unused function and caused build failure if ENABLE(DASHBOARD_SUPPORT) is false.
Source/WebCore/css/StyleResolver.cpp:1471:15: error: 'WebCore::Length WebCore::convertToIntLength(const WebCore::CSSPrimitiveValue*, const WebCore::CSSToLengthConversionData&)'
defined but not used [-Werror=unused-function] cc1plus: all warnings being treated as errors
- css/StyleResolver.cpp: Missing ENABLE(DASHBOARD_SUPPORT) guard added.
- 8:58 AM Changeset in webkit [173659] by
-
- 18 edits in trunk
Source/WebCore:
Scroll snap properties don't handle inherit and initial propertly.
https://bugs.webkit.org/show_bug.cgi?id=136643
Reviewed by Beth Dakin.
Restructured scroll snap code both to handle inherit and initial, and to reduce the
total code size a bit, fixing a few minor bugs along the way. Updated the regression
tests to cover the new parts.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::addValuesForNamedGridLinesAtIndex): Use a modern for loop.
(WebCore::scrollSnapDestination): Changed to take a LengthSize. Also streamlined.
(WebCore::scrollSnapPoints): Changed to to take a ScrollSnapPoints. Also streamlined and
added code to handle the "uses elements" case; serialize that as an identifier, not the
string "elements", fixing a minor bug.
(WebCore::scrollSnapCoordinates): Changed to take a Vector<LengthSize>. Also streamlined
and added code to handle the empty vector case; serialize that as an identifier, not the
string "none", fixing a minor bug.
(WebCore::ComputedStyleExtractor::getFontSizeCSSValuePreferringKeyword): Use nullptr.
(WebCore::counterToCSSValue): Use nullptr.
(WebCore::ComputedStyleExtractor::styledNode): Use nullptr.
(WebCore::ComputedStyleExtractor::propertyValue): Use nullptr. Moved CSS_SCROLL_SNAP
to a more appropriate section of the switch statement. Made it just call through to
the functions above in a more straightforward way.
(WebCore::CSSComputedStyleDeclaration::getPropertyValue): Reversed logic to use early
return and to call emptyString.
(WebCore::CSSComputedStyleDeclaration::item): Use emptyString.
(WebCore::ComputedStyleExtractor::getCSSPropertyValuesForSidesShorthand): Use nullptr.
(WebCore::CSSComputedStyleDeclaration::parentRule): Use nullptr.
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Use nullptr.
(WebCore::CSSComputedStyleDeclaration::getPropertyPriority): Use emptyString.
(WebCore::CSSComputedStyleDeclaration::getPropertyShorthand): Use emptyString.
- css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyMarqueeIncrement::applyValue): Use the switch statement for the
invalid value as well as for the valid values, rather than a separate if statement.
Call convertToLength directly rather than through a StyleResolver static member function.
- css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::getPropertyValue): Fixed a formatting mistake.
- css/StyleResolver.cpp:
(WebCore::convertToIntLength): Made this function local to this file instead of a
static member function.
(WebCore::convertToFloatLength): Ditto.
(WebCore::StyleResolver::parseSnapCoordinate): Added. Used to keep snap point parsing
code small.
(WebCore::StyleResolver::parseSnapCoordinatePair): Ditto.
(WebCore::StyleResolver::parseSnapPoints): Added. Parses an entire snap points property.
(WebCore::StyleResolver::applyProperty): Removed various bits of redundant code that
were not using the primitiveValue value already in a local variable. Added the
HANDLE_INHERIT_AND_INITIAL to all the scroll snap properties and updated since the
RenderStyle structure now more closely matches the CSS properties.
- css/StyleResolver.h: Updated for above changes, and removed a redundant "private:".
- page/scrolling/AxisScrollSnapOffsets.cpp:
(WebCore::appendChildSnapOffsets): Use auto& instead of SnapCoordinate since that type
is now gone. Updated since coordinates are now LengthSize.
(WebCore::updateFromStyle): Changed to take a reference instead of a pointer and
also to fetch the data from RenderStyle in a new way that more closely matches the
CSS properties.
(WebCore::updateSnapOffsetsForScrollableArea): Ditto. Also moved some memory allocation
inside if statements so we don't wastefully allocate and destroy.
- rendering/style/RenderStyle.cpp: Added an include of StyleScrollSnapPoints.h now
that the header doesn't include them. Moved the conditional includes out of the main
include paragraph (even though I don't think conditional includes are usually a good
idea).
(WebCore::RenderStyle::initialScrollSnapPointsX): Added.
(WebCore::RenderStyle::initialScrollSnapPointsY): Added.
(WebCore::RenderStyle::initialScrollSnapDestination): Added.
(WebCore::RenderStyle::initialScrollSnapCoordinates): Added.
(WebCore::RenderStyle::scrollSnapPointsX): Added.
(WebCore::RenderStyle::scrollSnapPointsY): Added.
(WebCore::RenderStyle::scrollSnapDestination): Added.
(WebCore::RenderStyle::scrollSnapCoordinates): Added.
(WebCore::RenderStyle::setScrollSnapPointsX): Added.
(WebCore::RenderStyle::setScrollSnapPointsY): Added.
(WebCore::RenderStyle::setScrollSnapDestination): Added.
(WebCore::RenderStyle::setScrollSnapCoordinates): Added.
- rendering/style/RenderStyle.h: Replaced the include of StyleScrollSnapPoints.h with
a forward declaration of ScrollSnapPoints. Removed getters and setters for the old
style properties and replaced them with new ones that match the CSS properties more
closely. Tweaked formatting a bit. Added initial value functions for the the scroll snap
properties.
- rendering/style/StyleRareNonInheritedData.cpp: Added include of StyleScrollSnapPoints.h
now that RenderStyle.h doesn't include it.
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Updated since
m_scrollSnapType is now unsigned instead of ScrollSnapType.
- rendering/style/StyleRareNonInheritedData.h: Fixed type of m_scrollSnapType to be
unsigned instead of ScrollSnapType. This should have been causing problems on Windows,
but I think we got lucky and had no detectable problems.
- rendering/style/StyleScrollSnapPoints.cpp:
(WebCore::ScrollSnapPoints::ScrollSnapPoints): Added.
(WebCore::operator==): Added overloads for both ScrollSnapPoints and also for
StyleScrollSnapPoints; using a free function for both since both have public data.
(WebCore::defaultScrollSnapDestination): Added, replaces a static member function.
(WebCore::StyleScrollSnapPoints::StyleScrollSnapPoints): Updated both the default
constructor and the copy constructor for the new design.
- rendering/style/StyleScrollSnapPoints.h: Added a ScrollSnapPoints struct for the
type of the snap-points-x and snap-points-y CSS properties. Changed the data members
of StyleScrollSnapPoints to match the various CSS properties rather than breaking
out all the data into separate data members.
(WebCore::StyleScrollSnapPoints::defaultRepeatOffset): Deleted. Replaced by the
default constructor for ScrollSnapPoints.
(WebCore::StyleScrollSnapPoints::defaultDestinationOffset): Deleted. Replaced by
a function inside the .cpp file.
LayoutTests:
Scroll snap properties do not handle inherit and initial properly.
https://bugs.webkit.org/show_bug.cgi?id=136643
Reviewed by Beth Dakin.
- css3/scroll-snap/scroll-snap-property-computed-style-expected.txt: Added
expected passing results from new tests.
- css3/scroll-snap/scroll-snap-property-computed-style.js: Added new test
cases that cover inherit and initial. Before, these would crash or fail.
- css3/scroll-snap/scroll-snap-property-parsing-expected.txt: Added expected
passing results from new tests, and also updated to expect pass rather than
fail for the tests that had incorrect expected results.
- css3/scroll-snap/scroll-snap-property-parsing.js: Added new test cases that
cover inherit and initial. Also updated expected results for certain pixel
repeat cases that were incorrect.
- platform/mac/TestExpectations: Fixed an unrelated syntax error in this file.
- 5:36 AM Changeset in webkit [173658] by
-
- 2 edits in trunk/Source/WebKit2
[GTK] Typo in webkit_security_manager_register_uri_scheme_as_empty_document documentation
https://bugs.webkit.org/show_bug.cgi?id=136852
Patch by Tomas Popela <tpopela@redhat.com> on 2014-09-16
Reviewed by Carlos Garcia Campos.
- UIProcess/API/gtk/WebKitSecurityManager.cpp:
- 2:29 AM Changeset in webkit [173657] by
-
- 2 edits in trunk/Tools
Unreviewed gardening, skip one more tests on Windows.
- Scripts/run-javascriptcore-tests:
- 1:58 AM Changeset in webkit [173656] by
-
- 4 edits in trunk
JSC test gardening
https://bugs.webkit.org/show_bug.cgi?id=136823
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- tests/mozilla/mozilla-tests.yaml: Unskip passing tests.
Tools:
- Scripts/run-javascriptcore-tests: Skip tests on only the affected platforms.
- 1:57 AM Changeset in webkit [173655] by
-
- 2 edits in trunk
Fix FindICU.cmake
https://bugs.webkit.org/show_bug.cgi?id=136820
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-09-16
Reviewed by Csaba Osztrogonác.
- Source/cmake/FindICU.cmake:
- 1:46 AM Changeset in webkit [173654] by
-
- 5 edits2 adds in trunk
[GStreamer] http/tests/media/video-auth.html is failing
https://bugs.webkit.org/show_bug.cgi?id=126619
Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-16
Reviewed by Philippe Normand.
Source/WebCore:
Test: http/tests/media/video-auth-cors.html
Use stored credentials when retrieving videos following image loading behavior
(i.e. stored credentials are always used except when in cors anonymous mode),
except that requesting credentials from user remains disabled for cross-origin requests.
Patch is covered by http/tests/media/video-auth.html.
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(CachedResourceStreamingClient::CachedResourceStreamingClient): Enable using stored credentials except when using cors anonymous mode.
LayoutTests:
- platform/efl/TestExpectations: Removed failure expectation for http/tests/media/video-auth.html.
- platform/efl/http/tests/media/video-auth-expected.txt: Added.
- platform/gtk/TestExpectations: Removed failure expectation for http/tests/media/video-auth.html.
- platform/gtk/http/tests/media/video-auth-expected.txt: Added.
- 1:16 AM Changeset in webkit [173653] by
-
- 2 edits in trunk/Tools
Remove shouldAbortEarly cruft from master.cfg
https://bugs.webkit.org/show_bug.cgi?id=136779
Reviewed by Csaba Osztrogonác.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(ConfigureBuild.start):
(RunWebKitTests.start):
(RunWebKit2Tests.start): Deleted.
- 1:13 AM Changeset in webkit [173652] by
-
- 5 edits4 adds in trunk
Add version of drawFocusIfNeeded that take a Path2D parameter.
https://bugs.webkit.org/show_bug.cgi?id=136846
Patch by Jinho Bang <jinho.bang@samsung.com> on 2014-09-16
Reviewed by Dirk Schulze.
Source/WebCore:
Tests: fast/canvas/draw-focus-if-needed-with-path.html
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawFocusIfNeeded):
(WebCore::CanvasRenderingContext2D::drawFocusIfNeededInternal):
- html/canvas/CanvasRenderingContext2D.h:
- html/canvas/CanvasRenderingContext2D.idl:
LayoutTests:
- fast/canvas/draw-focus-if-needed-expected.txt: Added.
- fast/canvas/draw-focus-if-needed-with-path-expected.txt: Added.
- fast/canvas/draw-focus-if-needed-with-path.html: Added.
- fast/canvas/draw-focus-if-needed.html: Added.
Sep 15, 2014:
- 11:53 PM Changeset in webkit [173651] by
-
- 3 edits2 adds in trunk/Source/WebCore
[GTK] Add WaylandDisplay
https://bugs.webkit.org/show_bug.cgi?id=136216
Reviewed by Martin Robinson.
Add the WaylandDisplay class. This class is used in the LayerTreeHostGtk,
in the WebProcess, and controls the connection to the nested Wayland
compositor in the UIProcess. Only one instance of the class is used in the
WebProcess, accessible via the static WaylandDisplay::instance() method.
The WaylandDisplay constructor performs the EGL initialization while also
querying the Wayland register, resulting in initializing client-side objects
that can interact with the wl_compositor and wl_webkitgtk interfaces
implemented in the nested Wayland compositor. The single class instance is
only deemed properly initialized if it picked up the Wayland interface objects
and has properly acquired the EGL display and config.
WaylandDisplay::createSurface() is called by the LayerTreeHostGtk during
its own initialization. The method creates a new wl_surface object via the
wl_compositor interface and a new wl_egl_window object that's based on that
surface. For the wl_egl_window object, we fall back to a width or height of 1
in case the passed-in value for either is 0. This avoids problems in Mesa
where widths or heights of 0 are not supported.
We associate the created surface with the passed-in widget ID, as provided
by LayerTreeHostGtk, via the wl_webkitgtk interface. This enables proper
mapping of Wayland surfaces and the GtkWidgets in the UIProcess and makes
it possible for the nested Wayland compositor to correctly determine which
GtkWidget has to be redrawn after some surface has been committed.
WaylandDisplay::createSharingGLContext() creates a new GLContextEGL object
that's to be used as a sharing context. The method creates a new surface
via the wl_compositor interface and uses it to create a dummy native EGL
window that's 1x1px in size. The GLContextEGL object is then created
through the static GLContextEGL::createWindowContext() method.
- PlatformGTK.cmake:
- platform/graphics/wayland/WaylandDisplay.cpp: Added.
(WebCore::WaylandDisplay::globalCallback):
(WebCore::WaylandDisplay::globalRemoveCallback):
(WebCore::WaylandDisplay::instance):
(WebCore::WaylandDisplay::WaylandDisplay):
(WebCore::WaylandDisplay::createSurface):
(WebCore::WaylandDisplay::createSharingGLContext):
- platform/graphics/wayland/WaylandDisplay.h: Added.
(WebCore::WaylandDisplay::nativeDisplay):
(WebCore::WaylandDisplay::eglDisplay):
- platform/graphics/wayland/WaylandSurface.cpp:
(WebCore::WaylandSurface::~WaylandSurface): Assert that the WaylandDisplay
instance is present before going on to destroy the surface resources.
- 11:26 PM Changeset in webkit [173650] by
-
- 5 edits in branches/safari-600.1.4.11-branch/Source
Versioning.
- 10:36 PM Changeset in webkit [173649] by
-
- 15 edits in trunk/Source/WebCore
Rename LiveNodeLists / HTMLCollections's nodeMatches() to elementMatches()
https://bugs.webkit.org/show_bug.cgi?id=136844
Reviewed by Sam Weinig.
Rename LiveNodeLists / HTMLCollections's nodeMatches() to elementMatches()
for clarity as the argument is an Element.
No new tests, no behavior change.
- dom/ClassNodeList.h:
(WebCore::ClassNodeList::elementMatches):
(WebCore::ClassNodeList::nodeMatches): Deleted.
- dom/DocumentOrderedMap.cpp:
(WebCore::keyMatchesWindowNamedItem):
(WebCore::keyMatchesDocumentNamedItem):
- dom/Element.cpp:
(WebCore::Element::updateNameForDocument):
(WebCore::Element::updateIdForDocument):
- dom/LiveNodeList.cpp:
(WebCore::LiveNodeList::namedItem):
- dom/LiveNodeList.h:
(WebCore::CachedLiveNodeList<NodeListType>::collectionBegin):
(WebCore::CachedLiveNodeList<NodeListType>::collectionLast):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseForward):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseBackward):
- dom/NameNodeList.h:
(WebCore::NameNodeList::elementMatches):
(WebCore::NameNodeList::nodeMatches): Deleted.
- dom/TagNodeList.h:
(WebCore::TagNodeList::elementMatches):
(WebCore::HTMLTagNodeList::elementMatches):
(WebCore::TagNodeList::nodeMatches): Deleted.
(WebCore::HTMLTagNodeList::nodeMatches): Deleted.
- html/HTMLCollection.cpp:
(WebCore::isMatchingElement):
- html/HTMLNameCollection.cpp:
(WebCore::WindowNameCollection::elementMatchesIfNameAttributeMatch):
(WebCore::WindowNameCollection::elementMatches):
(WebCore::DocumentNameCollection::elementMatchesIfIdAttributeMatch):
(WebCore::DocumentNameCollection::elementMatchesIfNameAttributeMatch):
(WebCore::DocumentNameCollection::elementMatches):
(WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch): Deleted.
(WebCore::WindowNameCollection::nodeMatches): Deleted.
(WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch): Deleted.
(WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch): Deleted.
(WebCore::DocumentNameCollection::nodeMatches): Deleted.
- html/HTMLNameCollection.h:
- html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::elementMatches):
(WebCore::LabelsNodeList::nodeMatches): Deleted.
- html/LabelsNodeList.h:
- html/RadioNodeList.cpp:
(WebCore::RadioNodeList::elementMatches):
(WebCore::RadioNodeList::nodeMatches): Deleted.
- html/RadioNodeList.h:
- 9:09 PM Changeset in webkit [173648] by
-
- 8 edits2 adds in trunk
Use an AtomicString as key for caching ClassNodeList objects
https://bugs.webkit.org/show_bug.cgi?id=136830
Reviewed by Benjamin Poulain.
Use an AtomicString as key for caching ClassNodeList objects instead of
a String. ClassNodeList is the only type using a String instead of an
AtomicString as key in the cache HashTable. This brings some
complexity.
I believe this was done to avoid unnecessarily atomizing the String,
for performance reasons. However, at the moment, the String gets
atomized anyway when constructing the ClassNodeList object. This is
because the ClassNodeList::m_classNames member is of SpaceSplitString
type and the SpaceSplitString constructor takes an AtomicString in
argument.
Using an AtomicString to cache ClassNodeLists simplifies the code quite
a bit and decreases the size of NodeListsNodeData as well.
Test: fast/dom/getElementsByClassName/conflict-tag-name.html
- WebCore.order:
Remove symbol corresponding to addCacheWithName() as it was removed.
- dom/ClassNodeList.cpp:
(WebCore::ClassNodeList::~ClassNodeList):
Update the constructor to take an AtomicString in argument instead of
a String, for clarity. The String gets atomized when initializing
m_classNames anyway.
(WebCore::ClassNodeList::ClassNodeList):
Call removeCacheWithAtomicName() instead of removeCacheWithName() now
that m_originalClassNames is an AtomicString.
- dom/ClassNodeList.h:
Use AtomicString instead of String type for classNames, in both the
constructor argument and the m_originalClassNames data member.
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::getElementsByClassName):
Call addCacheWithAtomicName() instead of addCacheWithName() now that
addCacheWithName() has been removed.
- dom/Node.cpp:
(WebCore::NodeListsNodeData::invalidateCaches):
Stop invalidating m_nameCaches as this HashMap no longer exists.
- dom/NodeRareData.h:
(WebCore::NodeListsNodeData::NodeListCacheMapEntryHash::hash):
(WebCore::NodeListsNodeData::NodeListCacheMapEntryHash::equal):
(WebCore::NodeListsNodeData::isEmpty):
(WebCore::NodeListsNodeData::adoptDocument):
(WebCore::NodeListsNodeData::namedNodeListKey):
(WebCore::NodeListsNodeData::deleteThisAndUpdateNodeRareDataIfAboutToRemoveLastList):
(WebCore::NodeListsNodeData::addCacheWithName): Deleted.
(WebCore::NodeListsNodeData::removeCacheWithName): Deleted.
- Drop addCacheWithName() / removeCacheWithName() now that no NodeList uses a String as HashMap key.
- Drop m_nameCaches now that ClassNodeLists are cached in m_atomicNameCaches instead.
- Remove StringType template parameter and hardcode AtomicString instead.
- 8:50 PM Changeset in webkit [173647] by
-
- 2 edits in trunk/Tools
Remove ORWT related crufts from webkitdirs.pm
https://bugs.webkit.org/show_bug.cgi?id=136821
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-09-15
Reviewed by Alexey Proskuryakov.
- Scripts/webkitdirs.pm:
(isPerianInstalled): Deleted.
(determineIPhoneSimulatorVersion): Deleted.
(iPhoneSimulatorVersion): Deleted.
(isSnowLeopard): Deleted.
(isLion): Deleted.
(quitIOSSimulator): Deleted.
- 7:30 PM Changeset in webkit [173646] by
-
- 2 edits in trunk/Source/WebCore
Return early in SelectorChecker::checkOne() if selector.isAttributeSelector() is true
https://bugs.webkit.org/show_bug.cgi?id=136838
Reviewed by Benjamin Poulain.
Return early in SelectorChecker::checkOne() if selector.isAttributeSelector()
is true and the selector matched. Previously, we were only returning early if
the selector did not match and we were falling through if it did. This means
that we ended up doing the 2 if() checks below in the method unnecessarily:
- selector.m_match == CSSSelector::PseudoClass
- selector.m_match == CSSSelector::PseudoElement
No new tests, no behavior change.
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
- 7:24 PM Changeset in webkit [173645] by
-
- 7 edits1 copy in trunk/Source/bmalloc
bmalloc: allocate small and medium objects using the same bump pointer class
https://bugs.webkit.org/show_bug.cgi?id=136843
Reviewed by Gavin Barraclough.
4% speedup on MallocBench.
Now that medium-sized objects have dedicated per-size allocators, they
don't need to use an arbitrary bump pointer allocator. This means that
every allocator knows how many objects it will allocate from the start,
and we don't need a post-processing step to adjust refcounts based on
real allocation count.
- bmalloc.xcodeproj/project.pbxproj: Renamed SmallAllocator to BumpAllocator
since it's used for small and medium objects now.
- bmalloc/Allocator.cpp:
(bmalloc::Allocator::Allocator): Updated to use new interface.
(bmalloc::Allocator::scavenge): To "retire" an allocator, we just need
to make sure that we finish allocating all the objects in it.
(bmalloc::Allocator::allocateMedium):
(bmalloc::Allocator::allocateSlowCase):
(bmalloc::Allocator::retire): Deleted.
(bmalloc::Allocator::processSmallAllocatorLog): Deleted.
(bmalloc::Allocator::processMediumAllocatorLog): Deleted.
- bmalloc/Allocator.h:
(bmalloc::Allocator::allocateFastCase): Removed abstractions and data
used to post-process an allocator based on how many objects it allocated.
- bmalloc/BumpAllocator.h: Copied from Source/bmalloc/bmalloc/SmallAllocator.h.
(bmalloc::BumpAllocator::BumpAllocator):
(bmalloc::BumpAllocator::init):
(bmalloc::BumpAllocator::line):
(bmalloc::BumpAllocator::validate):
(bmalloc::BumpAllocator::allocate):
(bmalloc::BumpAllocator::refill):
(bmalloc::BumpAllocator::clear): Updated these functions to be agnostic
about the kinds of lines they allocate into. In some cases, the line
type must be provided as a template parameter by the caller.
(bmalloc::SmallAllocator::SmallAllocator): Deleted.
(bmalloc::SmallAllocator::line): Deleted.
(bmalloc::SmallAllocator::allocate): Deleted.
(bmalloc::SmallAllocator::objectCount): Deleted.
(bmalloc::SmallAllocator::derefCount): Deleted.
(bmalloc::SmallAllocator::refill): Deleted.
(bmalloc::SmallAllocator::clear): Deleted.
- bmalloc/ObjectType.h:
(bmalloc::isMedium):
- bmalloc/SmallAllocator.h:
(bmalloc::SmallAllocator::isNull): Deleted.
(bmalloc::SmallAllocator::canAllocate): Deleted.
(bmalloc::SmallAllocator::SmallAllocator): Deleted.
(bmalloc::SmallAllocator::line): Deleted.
(bmalloc::SmallAllocator::allocate): Deleted.
(bmalloc::SmallAllocator::objectCount): Deleted.
(bmalloc::SmallAllocator::derefCount): Deleted.
(bmalloc::SmallAllocator::refill): Deleted.
(bmalloc::SmallAllocator::clear): Deleted.
- 6:22 PM Changeset in webkit [173644] by
-
- 1 edit1 delete in trunk/LayoutTests
Unreviewed Windows gardening. fast/forms/label test expectations now match Mac platform's expectations.
- platform/win/fast/forms/label: Removed.
- platform/win/fast/forms/label/labelable-elements-expected.txt: Removed.
- platform/win/fast/forms/label/labels-add-htmlFor-label-expected.txt: Removed.
- platform/win/fast/forms/label/labels-add-parent-label-expected.txt: Removed.
- platform/win/fast/forms/label/labels-change-htmlFor-attribute-expected.txt: Removed.
- platform/win/fast/forms/label/labels-multiple-sibling-labels-expected.txt: Removed.
- platform/win/fast/forms/label/labels-parent-and-sibling-labels-expected.txt: Removed.
- platform/win/fast/forms/label/labels-remove-htmlFor-attribute-expected.txt: Removed.
- platform/win/fast/forms/label/labels-remove-htmlFor-label-expected.txt: Removed.
- platform/win/fast/forms/label/labels-remove-parent-label-expected.txt: Removed.
- platform/win/fast/forms/label/labels-set-htmlFor-attribute-expected.txt: Removed.
- 6:15 PM Changeset in webkit [173643] by
-
- 3 edits in trunk/Source/WebCore
Un-inline the Node constructor
https://bugs.webkit.org/show_bug.cgi?id=136842
Reviewed by Benjamin Poulain.
Un-inline the Node constructor as it does not seem to impact
performance, based on my testing:
http://dromaeo.com/?id=226992,226998
This reduces the stripped binary size by ~4Kb.
No new tests, no behavior change.
- dom/Document.h:
(WebCore::Node::Node): Deleted.
- dom/Node.cpp:
(WebCore::Node::Node):
- 5:45 PM Changeset in webkit [173642] by
-
- 3 edits2 adds in trunk
Web Core: Websocket state should be set to closed in didReceiveMessage call back.
https://bugs.webkit.org/show_bug.cgi?id=136219
Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-09-15
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Set the Websocket state to closed in didReceiveMessage call back.
Test: http/tests/websocket/tests/hybi/error-event-ready-state.html
- Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::didReceiveMessageError):
LayoutTests:
Added test to check readyState is CLOSED within onerror event.
- http/tests/websocket/tests/hybi/error-event-ready-state-expected.txt: Added.
- http/tests/websocket/tests/hybi/error-event-ready-state.html: Added.
- 5:44 PM Changeset in webkit [173641] by
-
- 11 edits in trunk/LayoutTests
Unreviewed. Windows rebaselining to account for subpixel layout Part 1.
- platform/win/editing/selection/move-left-right-expected.txt:
- platform/win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
- platform/win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
- platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
- platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
- platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
- platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
- platform/win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
- platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
- platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:
- 5:41 PM Changeset in webkit [173640] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: mouse drifts away from resizer when resizing docked inspector
https://bugs.webkit.org/show_bug.cgi?id=22263
Patch by Matt Baker <Matt Baker> on 2014-09-15
Reviewed by Joseph Pecoraro.
Modified the docked resizer dragging logic to record the initial mouse down position relative to the
resizer client rectangle. Added check while dragging the resizer to ensure that the cursor is positioned
correctly with respect to the resize direction before updating the attached window dimension.
- UserInterface/Base/Main.js:
(WebInspector._dockedResizerMouseDown.dockedResizerDrag):
- 4:47 PM Changeset in webkit [173639] by
-
- 1 copy in tags/Safari-600.1.4.11.7
New tag.
- 4:15 PM Changeset in webkit [173638] by
-
- 3 edits in trunk/Source/WebCore
Naming clean-up.
Rubber-stamped by Andy Estes.
- html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::requestAutocomplete):
(WebCore::HTMLFormElement::finishRequestAutocomplete):
Remove superfluous "AutocompleteResult".
- html/HTMLFormElement.h:
Ditto.
- 4:13 PM Changeset in webkit [173637] by
-
- 2 edits in trunk/Tools
Unreviewed. Skip yet another ecma/Date test that fails only on Windows.
https://bugs.webkit.org/show_bug.cgi?id=25160
- Scripts/run-javascriptcore-tests:
- 3:58 PM Changeset in webkit [173636] by
-
- 3 edits in trunk/Source/JavaScriptCore
Create a JSCallee for GlobalExec object
https://bugs.webkit.org/show_bug.cgi?id=136840
Reviewed by Geoffrey Garen.
Added m_globalCallee, initialized it and then used it to set the globalExec's callee.
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
- runtime/JSGlobalObject.h:
- 3:52 PM Changeset in webkit [173635] by
-
- 2 edits in trunk/Source/WebCore
Crash when logging in to optionshouse.com
https://bugs.webkit.org/show_bug.cgi?id=136834
Reviewed by Anders Carlsson.
No test, because I couldn't make one. I don't have a way to reproduce first-hand.
- platform/network/cf/SocketStreamHandleCFNet.cpp:
(WebCore::SocketStreamHandle::readStreamCallback):
(WebCore::SocketStreamHandle::writeStreamCallback):
- 3:47 PM Changeset in webkit [173634] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed build fix for 32-bit builds.
Make casts from unsigned long long -> size_t explicit, rather than implicit. Also
make CARingBuffer be protected by USING_MEDIA_TOOLBOX so ports without that flag
won't try to compile unused code.
- platform/audio/mac/CARingBuffer.cpp:
(WebCore::CARingBuffer::fetch):
- platform/audio/mac/CARingBuffer.h:
- platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
(WebCore::AudioSourceProviderAVFObjC::provideInput):
- 3:03 PM Changeset in webkit [173633] by
-
- 2 edits in trunk/LayoutTests
Unreviewed. Skip initial-letter tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=136841
- platform/win/TestExpectations:
- 2:52 PM Changeset in webkit [173632] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed logic fix from r173631. Logic for includeShadowDOM was reversed.
- page/DragController.cpp:
(WebCore::DragController::startDrag):
- 2:47 PM Changeset in webkit [173631] by
-
- 4 edits in trunk/Source/WebCore
Videos with controls enabled never receive 'dragstart' events.
https://bugs.webkit.org/show_bug.cgi?id=136837
Reviewed by Simon Fraser.
When initiating a drag, the DragController checks whether the hit-tested element at a
drag location is a child of the drag source, and bails if early if that is not the case.
For a <video> element with controls, the hit-tested element is an element within the
<video> element's Shadow DOM. Because the DragController uses a method which does not
take Shadow DOM into account when determining a child-parent relationship, this test fails
and all drag operations fail as well.
For <video> elements only, when testing whether the drag source is an ancestor of the
hit-tested element, use containsIncludingShadowDOM() instead of contains(). To ensure that
the controls are still usable when a drag listener is active on a <video> element, mark
the controls as a draggable element, but simply call preventDefault() in the controls'
'dragstart' handler, ensuring the timeline and volume controls are themselves still draggable.
- Modules/mediacontrols/mediaControlsApple.css:
(audio::-webkit-media-controls-panel):
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.createControls):
(Controller.prototype.handlePanelDragStart):
- page/DragController.cpp:
(WebCore::DragController::startDrag):
- 2:40 PM Changeset in webkit [173630] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Add an unimplemented case to handle CSSPropertyWebkitInitialLetter so we don't get an assertion failure.
- css/SVGCSSStyleSelector.cpp:
(WebCore::StyleResolver::applySVGProperty):
- 1:17 PM Changeset in webkit [173629] by
-
- 13 edits in trunk/LayoutTests
Change all snapshotting tests to use quicktime.
- platform/mac-wk2/TestExpectations:
- platform/mac-wk2/plugins/snapshotting/autoplay-similar-to-dominant-expected.txt:
- plugins/snapshotting/autoplay-dominant-blank-plugin-moved-into-view.html:
- plugins/snapshotting/autoplay-dominant.html:
- plugins/snapshotting/autoplay-plugin-blocked-by-image.html:
- plugins/snapshotting/autoplay-plugin-mostly-blocked-by-image.html:
- plugins/snapshotting/autoplay-similar-to-dominant.html:
- plugins/snapshotting/plugin-receives-click-event.html:
- plugins/snapshotting/restart.html:
- plugins/snapshotting/set-plugin-size-to-tiny.html:
- plugins/snapshotting/simple.html:
- plugins/snapshotting/snapshot-plugin-not-quite-blocked-by-image.html:
- 1:05 PM Changeset in webkit [173628] by
-
- 7 edits4 adds in trunk/Source
[Mac] Support audioSourceProvider() in MediaPlayerPrivateAVFoundationObjC
https://bugs.webkit.org/show_bug.cgi?id=135042
Reviewed by Eric Carlson.
Source/WebCore:
Add support for AudioSourceProvider in MediaPlayerPrivateAVFoundationObjC, thereby
supporting MediaElementAudioSourceNode.
Import the CARingBuffer from CoreAudio sample code, making the necessary modifications
for WebKit style and coding conventions. The threading assumptions for this class are
that there will be a single writer thread and a single reader thread.
- platform/audio/mac/CARingBuffer.cpp: Added.
(WebCore::CARingBuffer::create): Create a unique_ptr.
(WebCore::CARingBuffer::CARingBuffer): Simple constructor.
(WebCore::CARingBuffer::~CARingBuffer): Simple destructor.
(WebCore::CARingBuffer::allocate): Initialize the buffers and time bounds structures.
(WebCore::CARingBuffer::deallocate): Destroy same.
(WebCore::ZeroRange): Static utility method.
(WebCore::StoreABL): Ditto.
(WebCore::FetchABL): Ditto.
(WebCore::ZeroABL): Ditto.
(WebCore::CARingBuffer::store): Store the passed in buffer in the ring buffer, wrapping
if necessary.
(WebCore::CARingBuffer::setTimeBounds): Set the new time bounds by incrementing the
bounds index locally, filling in the new values, then atomically incrementing the
reader-visible index.
(WebCore::CARingBuffer::getTimeBounds): Get the new time bounds by masking the time
bounds index, and using it as an offset to the time bounds array. Protect against
CPU starvation on the reading thread by checking the index against the stored
index in the array entry. This check will fail if the writing thread has wrapped
more than the size of the array.
(WebCore::CARingBuffer::clipTimeBounds): Clamp the passed values to the available bounds.
(WebCore::CARingBuffer::startFrame): Simple accessor.
(WebCore::CARingBuffer::endFrame): Ditto.
(WebCore::CARingBuffer::fetch): Read an audio buffer list from the ring buffer, possbily
wrapping around to the start of the ring buffer.
- platform/audio/mac/CARingBuffer.h: Added.
(WebCore::CARingBuffer::numberOfChannels): Simple accessor.
(WebCore::CARingBuffer::frameOffset): Ditto.
(WebCore::CARingBuffer::TimeBounds::TimeBounds): Struct holding the start and end frame values.
Add an implementation of AudioSourceProvider, using AVAudioMix and MTAudioProcessingTap
to tap an AVPlayerItem's audio output and feed it to a MediaElementAudioSourceNode.
- platform/graphics/avfoundation/AudioSourceProviderAVFObjC.h: Added.
- platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm: Added.
(WebCore::AudioSourceProviderAVFObjC::create): Simple factory.
(WebCore::AudioSourceProviderAVFObjC::AudioSourceProviderAVFObjC): Simple constructor.
(WebCore::AudioSourceProviderAVFObjC::~AudioSourceProviderAVFObjC): Simple destructor.
(WebCore::AudioSourceProviderAVFObjC::provideInput): Push audio into the ring buffer.
(WebCore::AudioSourceProviderAVFObjC::setClient): Call destroyMix()/createMix() as appropriate.
(WebCore::AudioSourceProviderAVFObjC::setPlayerItem): Ditto.
(WebCore::AudioSourceProviderAVFObjC::destroyMix): Detach and destroy the AVAudioMix and tap.
(WebCore::AudioSourceProviderAVFObjC::createMix): Set up the AVAudioMix and tap and attach to
the AVPlayerItem.
(WebCore::AudioSourceProviderAVFObjC::initCallback): Pass to class method.
(WebCore::AudioSourceProviderAVFObjC::finalizeCallback): Ditto.
(WebCore::AudioSourceProviderAVFObjC::prepareCallback): Ditto.
(WebCore::AudioSourceProviderAVFObjC::unprepareCallback): Ditto.
(WebCore::AudioSourceProviderAVFObjC::processCallback): Ditto.
(WebCore::AudioSourceProviderAVFObjC::init): Set up the storage pointer for the tap.
(WebCore::AudioSourceProviderAVFObjC::finalize): No-op.
(WebCore::operator==): Compare two AudioStreamBasicDescription objects.
(WebCore::operator!=): Ditto.
(WebCore::AudioSourceProviderAVFObjC::prepare): Create an AudioCoverter object if necessary,
create the ring buffer, and notify the client of format changes.
(WebCore::AudioSourceProviderAVFObjC::unprepare): Destroy same.
(WebCore::AudioSourceProviderAVFObjC::process): Copy samples out of the ring buffer,
format converting them if necessary. Mute original audio.
Create the AudioSourceProviderAVFObjC object and notify it when the current AVPlayerItem changes.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem):
(WebCore::MediaPlayerPrivateAVFoundationObjC::audioSourceProvider):
Enable SOFT_LINK_MAY_FAIL on the Mac platform.
- platform/mac/SoftLinking.h:
Add new files to the project.
- WebCore.xcodeproj/project.pbxproj:
Source/WTF:
- wtf/Platform.h: Add WTF_USE_MEDIATOOLBOX.
- 12:50 PM Changeset in webkit [173627] by
-
- 2 edits in trunk/Tools
Add another Apple build slave to the Mountain Lion Debug WK1 queue
Rubber stamped by Matt Hanson.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- 12:32 PM Changeset in webkit [173626] by
-
- 4 edits in trunk/Source/JavaScriptCore
DFG ref count calculation should be reusable
https://bugs.webkit.org/show_bug.cgi?id=136811
Reviewed by Oliver Hunt.
Henceforth if you call Graph::computeRefCounts(), a nifty O(n) operation, every Node
will be able to tell you how many places it is used from. Currently only DCE uses this,
but it will be useful for https://bugs.webkit.org/show_bug.cgi?id=136330.
- dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::run):
(JSC::DFG::DCEPhase::findTypeCheckRoot): Deleted.
(JSC::DFG::DCEPhase::countNode): Deleted.
(JSC::DFG::DCEPhase::countEdge): Deleted.
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::computeRefCounts):
- dfg/DFGGraph.h:
- 11:45 AM Changeset in webkit [173625] by
-
- 4 edits in branches/safari-600.1.4.11-branch/Source/WebKit2
Merged r173623. <rdar://problem/17897780>
- 11:40 AM Changeset in webkit [173624] by
-
- 8 edits in branches/safari-600.1.4.11-branch/Source
Merge patch for <rdar://problem/18327341>.
- 10:10 AM Changeset in webkit [173623] by
-
- 4 edits in trunk/Source/WebKit2
Should call [BKSProcessAssertion invalidate]
https://bugs.webkit.org/show_bug.cgi?id=136804
<rdar://problem/17897780>
Reviewed by Darin Adler.
We should invalidate the process assertion before releasing it. Fortunately this is really easy,
since there is a simple 1:1 relationship with ProcessAssertion, with their lifetimes matching exactly.
- UIProcess/ProcessAssertion.cpp:
(WebKit::ProcessAssertion::~ProcessAssertion):
- no-op implementation.
- UIProcess/ProcessAssertion.h:
- added destructor.
- UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::ProcessAssertion::~ProcessAssertion):
- destructor invalidates the BKSProcessAssertion.
- 8:59 AM Changeset in webkit [173622] by
-
- 14 edits in trunk/Source/WebCore
Avoid redundant isElementNode() checks in Traversal<HTML*Element> / Traversal<SVG*Element>
https://bugs.webkit.org/show_bug.cgi?id=136719
Reviewed by Darin Adler.
Avoid redundant isElementNode() checks in Traversal<HTML*Element> /
Traversal<SVG*Element>. We used to iterate through Elements, and then
call isElementOfType<HTML*Element>() on each Element. This made sense
because hasTagName() used to be defined on Element. However, after
http://trac.webkit.org/changeset/165699, hasTagName() is now defined on
Node for HTMLQualifiedName / SVGQualifiedName arguments.
Node::hasTagName(HTMLQualifiedName) basically does the following check
"isHTMLElement() && toHTMLElement(*this).hasTagName(tagName)". As a
consequence, doing an isElementNode() check is now redundant as
isHTMLElement() is defined on Node.
This patch adds a template parameter to isElementOfType() so that it can
take any type in argument (particulaly Node, Element, HTMLElement,
SVGElement, MathMLElement), not just an Element. I had to add an
ElementTypeCastTraits struct to support partial specialization as C++
does not support partial specialization of template functions.
This patch also updates Traversal<ElementType> so that the methods use
NodeTraversal internally instead of Traversal<ElementType>. As a result,
we now iterate over Nodes (not Elements) and call the new
isElementOfType<ElementType>(Node) helpers (which are efficient after
r165699).
Before the patch, the code ended up doing the following checks for
Traversal<HTML*element>:
node.isElementNode() && toElement(node).isHTMLElement()
&& toHTMLElement(node).hasTagName(HTMLNames::fooTag)
After the patch, the code only does:
node.isHTMLElement()
&& toHTMLElement(node).hasTagName(HTMLNames::fooTag)
No new tests, no behavior change.
- dom/Element.h:
(WebCore::Element>):
(WebCore::isElementOfType):
Add template parameter to isElementOfType() function so that it can
handle any argument type, not just Elements. Also introduce an
ElementTypeCastTraits struct that is called by isElementOfType()
function so that we can so partial template specialization.
- dom/ElementTraversal.h:
(WebCore::Traversal<ElementType>::firstWithinTemplate):
(WebCore::Traversal<ElementType>::lastWithinTemplate):
(WebCore::Traversal<ElementType>::nextTemplate):
(WebCore::Traversal<ElementType>::previousTemplate):
Use NodeTraversal API internally instead of Traversal<Element> to avoid
redundant isElementNode() checks.
(WebCore::Traversal<Element>::lastWithinTemplate): Deleted.
The code is now identical to the generic version.
(WebCore::Traversal<Element>::previousTemplate): Deleted.
The code is now identical to the generic version.
- dom/make_names.pl:
(printTypeHelpers):
- Generate template specializations for ElementTypeCastTraits struct instead of isElementOfType(). This avoids having to provide overloads for specific argument types (e.g. Node, Element, HTMLElement, ...).
- Share more code between HTML code path and the other path (for SVG, MTHML).
- html/HTMLElement.h:
(WebCore::HTMLElement>):
Provide HTMLElement template specialization for ElementTypeCastTraits
struct instead of isElementOfType().
- html/HTMLFormControlElement.h:
(WebCore::HTMLFormControlElement>):
Provide HTMLFormControlElement template specialization for
ElementTypeCastTraits struct instead of isElementOfType().
- html/HTMLFrameElementBase.h:
(WebCore::isHTMLFrameElementBase):
- Remove helper taking an Element in argument as it does not bring any benefit. Instead, update the overload taking a Node in argument to remove the unnecessary isElementNode() check as isHTMLFrameElement(Node) is now efficient.
- Add an overload taking an HTMLElement in argument so that we can bypass the isHTMLElement() check when we know the input is an HTMLElement.
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement>):
Provide HTMLMediaElement template specialization for ElementTypeCastTraits
struct instead of isElementOfType().
- html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement>):
Provide HTMLPlugInImageElement template specialization for
ElementTypeCastTraits struct instead of isElementOfType().
- html/LabelableElement.h:
(WebCore::LabelableElement>):
Provide LabelableElement template specialization for ElementTypeCastTraits
struct instead of isElementOfType().
- mathml/MathMLElement.h:
(WebCore::MathMLElement>):
Provide MathMLElement template specialization for ElementTypeCastTraits
struct for consistency with HTMLElement / SVGElement.
- svg/SVGElement.h:
(WebCore::SVGElement>):
- Provide SVGElement template specialization for ElementTypeCastTraits struct instead of isElementOfType().
- include SVGElementTypeHelpers.h at the end of the file (similarly to what is already done in HTMLElement.h because isElementOfType(const SVGElement&) needs to be defiend because the include.
- svg/SVGFilterPrimitiveStandardAttributes.h:
(WebCore::SVGFilterPrimitiveStandardAttributes>):
Provide SVGFilterPrimitiveStandardAttributes template specialization for
ElementTypeCastTraits struct instead of isElementOfType().
- svg/animation/SVGSMILElement.h:
(WebCore::SVGSMILElement>):
Provide SVGSMILElement template specialization for ElementTypeCastTraits
struct instead of isElementOfType().
- 7:45 AM Changeset in webkit [173621] by
-
- 4 edits in trunk/Tools
[EFL] Ecore and Eina are initialized twice in TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=136822
Reviewed by Gyuyoung Kim.
In TestWebKitAPI/efl/main.cpp, ecore and eina modules are unnecessarily
initialized as we already does it in PlatformWebView::PlatformWebView
calling ewk_init(). The reason for that was to ensure testing for example,
WTF where creating the view is not mandatory.
Call ewk_init() and ewk_shutdown() in TestWebKitAPI/efl/main.cpp
in order to properly initalize and release EWebKit.
- TestWebKitAPI/PlatformEfl.cmake:
- TestWebKitAPI/efl/PlatformWebView.cpp:
(TestWebKitAPI::PlatformWebView::PlatformWebView):
(TestWebKitAPI::PlatformWebView::~PlatformWebView):
- TestWebKitAPI/efl/main.cpp:
(main):
- 7:20 AM Changeset in webkit [173620] by
-
- 4 edits2 adds in trunk
[CSS Grid Layout] Sort items by span when resolving content-based track sizing functions
https://bugs.webkit.org/show_bug.cgi?id=135701
Reviewed by Darin Adler.
Source/WebCore:
Section 10.4 of the specs mentions that we should first treat non
spanning items and then incrementally proceed with items with
greater spans when resolving the track breaths in the Track Sizing
Algorithm.
As a nice side effect we're removing the multiple processing of
spanning grid items caused by GridIterator (it returns the same
item as many times as the number of cells it spans). This adds a
~4% performance penalty in auto-grid-lots-of-data.html mainly due
to the use of a hash to remove duplicates.
Test: fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution.html
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::gridItemSpan):
(WebCore::gridItemWithSpanSorter):
(WebCore::uniquePointerInPair):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
- rendering/RenderGrid.h:
LayoutTests:
Tests that check that items are sorted by span to resolve content
based track sizing functions instead of directly using DOM order.
- fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution-expected.txt: Added.
- fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution.html: Added.
- 4:35 AM Changeset in webkit [173619] by
-
- 2 edits in trunk/Source/WebCore
[GTK][CMake] Build WebCore with Wayland-specific include directories, libraries
https://bugs.webkit.org/show_bug.cgi?id=136815
Reviewed by Philippe Normand.
- PlatformGTK.cmake: Add the platform/graphics/wayland/ directory to the list of
WebCore's include directories. Add include directories of the Wayland dependency
to the list of WebCore's include directories. Same for the Wayland libraries.
- 4:32 AM Changeset in webkit [173618] by
-
- 2 edits in trunk
[CMake] Remove FIND_PACKAGE_HANDLE_STANDARD_ARGS call for WAYLAND_EGL in FindWayland.cmake
https://bugs.webkit.org/show_bug.cgi?id=136814
Reviewed by Philippe Normand.
- Source/cmake/FindWayland.cmake: This line was committed by mistake.
We bundle the wayland-egl dependency with wayland-client and wayland-server
and store the resulting variables with the WAYLAND_ prefix. Because of this
this line wasn't exporting anything useful.
- 3:04 AM Changeset in webkit [173617] by
-
- 3 edits in trunk/Source/WebKit2
REGRESSION(r170243): [EFL][WK2] Dirty image is shown when new page is loading on fixed layout
https://bugs.webkit.org/show_bug.cgi?id=136568
Reviewed by Csaba Osztrogonác.
r170243 landed wrong didCommitNewPage() since it always returns false. It cause that
PageViewportControllerClientEfl::didChangeVisibleContents() continues to draw dirty image on 0,0 coordinate.
This patch fixes the problem.
- UIProcess/API/efl/EwkView.h:
(EwkView::waitingForNewPage):
(EwkView::didCommitNewPage):
- UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
- 2:45 AM Changeset in webkit [173616] by
-
- 14 edits in trunk
[WinCairo] Make it easier to enable/disable GStreamer.
https://bugs.webkit.org/show_bug.cgi?id=135766
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-15
Reviewed by Brent Fulgham.
Make it possible to enable/disable GStreamer by editing the new user macro ENABLE_GSTREAMER_WINCAIRO.
Source/WebCore:
- WebCore.vcxproj/WebCoreDebugWinCairo.props: Import GStreamer property file.
- WebCore.vcxproj/WebCoreReleaseWinCairo.props: Ditto.
Source/WebKit:
- WebKit.vcxproj/WebKit/WebKitDebugWinCairo.props: Import GStreamer property file.
- WebKit.vcxproj/WebKit/WebKitReleaseWinCairo.props: Ditto.
Source/WTF:
- WTF.vcxproj/WTFDebugWinCairo.props: Import GStreamer property file.
- WTF.vcxproj/WTFReleaseWinCairo.props: Ditto.
- wtf/Platform.h: Enable GStreamer if ENABLE(GSTREAMER_WINCAIRO) is true, otherwise use Media Foundation.
Tools:
- WinLauncher/WinMain.cpp: Compile fix when GStreamer is enabled.
WebKitLibraries:
- win/tools/vsprops/GStreamerCommon.props: Add user macro ENABLE_GSTREAMER_WINCAIRO.
- 2:12 AM Changeset in webkit [173615] by
-
- 6 edits in trunk
[CSS Grid Layout] Crash at CSSParser::parseGridTemplateRowsAndAreas
https://bugs.webkit.org/show_bug.cgi?id=136778
Reviewed by Darin Adler.
Source/WebCore:
An empty list of grid line names (represented by "()") does not
add anything to the list of parsed values. That's why trying to
concatenate an adjacent list of grid line names was failing,
because we were trying to concatenate a list with the last parsed
CSSValue which was not the expected grid line names list.
- css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTemplateRowsAndAreas):
(WebCore::CSSParser::parseGridLineNames):
- css/CSSParser.h:
LayoutTests:
Added some new test cases to verify that we properly handle empty
lists of grid line names.
- fast/css-grid-layout/grid-template-shorthand-get-set-expected.txt:
- fast/css-grid-layout/grid-template-shorthand-get-set.html:
- 1:08 AM Changeset in webkit [173614] by
-
- 3 edits in trunk/Source/WebCore
[GStreamer] don't send transferMode HTTP header
https://bugs.webkit.org/show_bug.cgi?id=136781
Reviewed by Philippe Normand.
No header at all is better than having the wrong header as DLNA
mandates that a missing header has to be tolerated while a wrong
header is an error.
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStart):
- platform/network/HTTPHeaderNames.in: