akling@apple.com [Wed, 4 Dec 2013 05:33:24 +0000 (05:33 +0000)]
Add a CSSProperty::isDirectionAwareProperty() helper.
<https://webkit.org/b/125202>
Move the block of case labels for checking whether a CSS property ID
is a directional property into a separate function. Also removed an
outdated comment about CSS variables.
Reviewed by Antti Koivisto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160070
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 4 Dec 2013 05:25:13 +0000 (05:25 +0000)]
WKContentView should just use InitializeWebKit2()
https://bugs.webkit.org/show_bug.cgi?id=125209
Reviewed by Benjamin Poulain.
Rather than calling an motley selection of init fuctions,
WKContentView should use the one true init function, InitializeWebKit2().
* Shared/WebKit2Initialize.cpp: On iOS, we need to call InitWebCoreThreadSystemInterface().
(WebKit::InitializeWebKit2):
* UIProcess/API/ios/WKContentView.mm: Remove various unused #imports.
(-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160069
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 4 Dec 2013 05:24:15 +0000 (05:24 +0000)]
Revert the inadvertently committed change.
* html/HTMLElement.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160068
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 4 Dec 2013 05:20:48 +0000 (05:20 +0000)]
Remove nodeIsDetachedFromDocument and visualWordMovementEnabled in FrameSelection
https://bugs.webkit.org/show_bug.cgi?id=125210
Reviewed by Antti Koivisto.
Inspired by https://chromium.googlesource.com/chromium/blink/+/
92409870f0ff8fafe31217830db0838a9e1ffb98
Removed some unused code.
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::textWasReplaced):
* editing/FrameSelection.h:
* page/Settings.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160067
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
seokju@webkit.org [Wed, 4 Dec 2013 05:05:29 +0000 (05:05 +0000)]
Web Inspector: Remove '_attachedWindowHeight' property in InspectorFrontendHostStub.js
https://bugs.webkit.org/show_bug.cgi?id=125204
Reviewed by Timothy Hatcher.
'_attachedWindowHeight' property is not used anywhere, so remove it.
* UserInterface/InspectorFrontendHostStub.js:
(.WebInspector.InspectorFrontendHostStub):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160066
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 4 Dec 2013 04:21:51 +0000 (04:21 +0000)]
Potential crash in RenderView::selectionBounds and RenderView::repaintSelection
https://bugs.webkit.org/show_bug.cgi?id=125207
Reviewed by Simon Fraser.
Merge https://chromium.googlesource.com/chromium/blink/+/
f9e6e288a5aa959f05c374806121aaf0fc52d440
Update style in FrameSelection instead of RenderView's member functions. These are the last two
member functions of RenderView that updates the style.
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::focusedOrActiveStateChanged):
(WebCore::FrameSelection::bounds):
* rendering/RenderView.cpp:
(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::repaintSelection):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160065
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 4 Dec 2013 03:23:52 +0000 (03:23 +0000)]
<https://webkit.org/b/125143> Improve the formatting in the generated Objective-C headers.
Add a space between @property and any parenthesized attributes.
Prefer strong over retain when specifying memory management semantics.
Reviewed by Darin Adler.
* bindings/objc/PublicDOMInterfaces.h:
* bindings/scripts/CodeGeneratorObjC.pm:
(GetPropertyAttributes): Generate strong instead of retain. Include a
space before the parenthesis.
* bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
* bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
* bindings/scripts/test/ObjC/DOMTestException.h:
* bindings/scripts/test/ObjC/DOMTestInterface.h:
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/ObjC/DOMTestTypedefs.h:
* bindings/scripts/test/ObjC/DOMattribute.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160064
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Wed, 4 Dec 2013 02:19:09 +0000 (02:19 +0000)]
testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size().
https://bugs.webkit.org/show_bug.cgi?id=121972.
Reviewed by Brent Fulgham.
Source/JavaScriptCore:
* interpreter/JSStack.cpp:
(JSC::JSStack::~JSStack):
- Reverting the change from r160004 since it's better to fix OSAllocatorWin
to be consistent with OSAllocatorPosix.
Source/WTF:
* wtf/OSAllocatorWin.cpp:
(WTF::OSAllocator::decommit):
(WTF::OSAllocator::releaseDecommitted):
- Added a check to ensure that the bytes to decommit / release is not 0.
On Windows, a 0 length passed to VirtualFree() has a special meaning,
and it's not "decommit / release nothing" as one would expect. Adding
this check makes OSAllocatorWin consistent with OSAllocatorPosix for
these 2 functions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160063
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Wed, 4 Dec 2013 01:18:19 +0000 (01:18 +0000)]
Fix LLINT_C_LOOP build for Win64.
https://bugs.webkit.org/show_bug.cgi?id=125186.
Reviewed by Michael Saboff.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* jit/JITOperationsMSVC64.cpp: Added.
(JSC::getHostCallReturnValueWithExecState):
- Win64 will build JITStubMSVC64.asm even when !ENABLE(JIT). This results
in a linkage error due to a missing getHostCallReturnValueWithExecState().
So, we add a stub getHostCallReturnValueWithExecState() here to satisfy
that linkage. This function will never be called.
The alternative to providing such a stub is to make the MSVC project
recognize if the JIT is enabled or not, and exclude JITStubMSVC64.asm
if it's not enabled. We don't currently set ENABLE(JIT) via the MSVC
project and the work to do that is too much trouble for what we're trying
to achieve here. So, we're opting for this simpler workaround instead.
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter.cpp:
(JSC::CLoop::execute):
- Don't build callToJavaScript if we're building the C loop. Otherwise,
the C loop won't build if !ENABLE(COMPUTE_GOTO_OPCODES).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160062
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Wed, 4 Dec 2013 00:51:14 +0000 (00:51 +0000)]
Update WebCrypto JWK mapping to newer proposal
https://bugs.webkit.org/show_bug.cgi?id=124218
Reviewed by Anders Carlsson.
Source/WebCore:
Tests: crypto/subtle/jwk-export-use-values.html
crypto/subtle/jwk-import-use-values.html
1. "extractable" renamed to "ext" in JWK.
2. New values for "use" mapping, which can now be combined into comma separated lists,
and cover all possible WebCrypto usages.
* bindings/js/JSCryptoKeySerializationJWK.cpp:
(WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
(WebCore::JSCryptoKeySerializationJWK::reconcileExtractable):
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
(WebCore::processUseValue):
(WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON):
(WebCore::JSCryptoKeySerializationJWK::serialize):
LayoutTests:
* crypto/subtle/jwk-export-use-values-expected.txt: Added.
* crypto/subtle/jwk-export-use-values.html: Added.
* crypto/subtle/jwk-import-use-values-expected.txt: Added.
* crypto/subtle/jwk-import-use-values.html: Added.
New tests for "use" mapping.
* crypto/subtle/aes-cbc-import-jwk.html:
* crypto/subtle/aes-cbc-unwrap-rsa.html:
* crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html:
* crypto/subtle/aes-cbc-wrap-rsa.html:
* crypto/subtle/aes-export-key-expected.txt:
* crypto/subtle/aes-export-key.html:
* crypto/subtle/hmac-export-key-expected.txt:
* crypto/subtle/hmac-export-key.html:
* crypto/subtle/hmac-import-jwk.html:
* crypto/subtle/import-jwk-expected.txt:
* crypto/subtle/import-jwk.html:
* crypto/subtle/rsa-export-key-expected.txt:
* crypto/subtle/rsa-export-key.html:
* crypto/subtle/rsa-export-private-key-expected.txt:
* crypto/subtle/rsa-export-private-key.html:
* crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
* crypto/subtle/rsa-oaep-key-manipulation.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160061
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 4 Dec 2013 00:36:00 +0000 (00:36 +0000)]
PageOverlayClientImpl should be a proper API::Client
https://bugs.webkit.org/show_bug.cgi?id=125199
Reviewed by Tim Horton.
* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
(PageOverlayClientImpl::PageOverlayClientImpl):
(PageOverlayClientImpl::setAccessibilityClient):
(PageOverlayClientImpl::willMoveToWebPage):
(PageOverlayClientImpl::didMoveToWebPage):
(PageOverlayClientImpl::drawRect):
(PageOverlayClientImpl::mouseEvent):
(PageOverlayClientImpl::copyAccessibilityAttributeValue):
(PageOverlayClientImpl::copyAccessibilityAttributeNames):
(WKBundlePageOverlayCreate):
(WKBundlePageOverlaySetAccessibilityClient):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160059
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 4 Dec 2013 00:13:34 +0000 (00:13 +0000)]
Initialize the PageBannerClientImpl API::Client
https://bugs.webkit.org/show_bug.cgi?id=125198
Reviewed by Tim Horton.
* WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
(PageBannerClientImpl::PageBannerClientImpl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160057
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Tue, 3 Dec 2013 23:56:31 +0000 (23:56 +0000)]
ARM64: Crash in JIT code due to improper reuse of cached memory temp register
https://bugs.webkit.org/show_bug.cgi?id=125181
Reviewed by Geoffrey Garen.
Changed load8() and load() to invalidate the memory temp CachedTempRegister when the
destination of an absolute load is the memory temp register since the source address
is also the memory temp register. Change branch{8,32,64} of an AbsoluteAddress with
a register to use the dataTempRegister as the destinate of the absolute load to
reduce the chance that we need to invalidate the memory temp register cache.
In the process, found and fixed an outright bug in branch8() where we'd load into
the data temp register and then compare and branch on the memory temp register.
* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::load8):
(JSC::MacroAssemblerARM64::branch32):
(JSC::MacroAssemblerARM64::branch64):
(JSC::MacroAssemblerARM64::branch8):
(JSC::MacroAssemblerARM64::load):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160056
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Tue, 3 Dec 2013 23:41:48 +0000 (23:41 +0000)]
[EFL] Disable RTTI for release build
https://bugs.webkit.org/show_bug.cgi?id=125138
Reviewed by Gyuyoung Kim.
Binary size will be reduced about 1M bytes without RTTI.
ewebkit.so : 43,449,275 -> 42,510,224
ewebkit2.so: 46,715,870 -> 45,653,989
* Source/cmake/OptionsEfl.cmake: Added -fno-rtti option to CMAKE_CXX_FLAGS_RELEASE.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160053
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Tue, 3 Dec 2013 23:28:10 +0000 (23:28 +0000)]
Remote Layer Tree: Force repaint
https://bugs.webkit.org/show_bug.cgi?id=125189
<rdar://problem/
15541789>
Reviewed by Anders Carlsson.
* WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
* WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
(WebKit::RemoteLayerTreeContext::forceRepaint):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::forceRepaint):
Implement WebProcess-synchronous force repaint.
We don't need the async variant because it is only needed
to synchronize with the WebProcess-side threaded scrolling
tree, which is not a component of the remote layer tree model.
The UI process will not handle the callback until after
RemoteLayerTreeHost::commit is complete, ensuring that the commit
is actually done.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160052
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 3 Dec 2013 23:26:46 +0000 (23:26 +0000)]
REGRESSION: repro scripts disappear when you rerun tests
https://bugs.webkit.org/show_bug.cgi?id=125184
Reviewed by Mark Hahnenberg.
This bug made it difficult to quickly see if a test that recently failed is still
failing while also running a new batch of tests.
Repro scripts are supposed to stay around until you delete them explicitly. This
patch accomplishes that.
* Scripts/run-jsc-stress-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160051
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Tue, 3 Dec 2013 23:25:19 +0000 (23:25 +0000)]
Remove some iOS-related documentScale code
https://bugs.webkit.org/show_bug.cgi?id=125194
Source/WebCore:
Reviewed by Enrica Casucci.
Remove exports of nonexistent documentScale-related functions on Frame.
* WebCore.exp.in:
Source/WebKit2:
Reviewed by Enrica Casucci.
Upstream bits of removal of Frame::documentScale on iOS.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences): Whitespace.
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::didFinishZooming): Don't call setDocumentScale().
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Remove minimumDocumentScale().
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: Ditto.
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): We delegate page scaling on iOS.
(WebKit::RemoteLayerTreeDrawingArea::setDeviceScaleFactor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160050
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 3 Dec 2013 23:21:03 +0000 (23:21 +0000)]
Layout Test platform/mac/accessibility/search-predicate-element-count.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=125195
* platform/mac/TestExpectations: Marking as such.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160049
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 23:20:08 +0000 (23:20 +0000)]
[Win] run-jsc-stress-tests has a great number of failures (2026/7606) on Windows
https://bugs.webkit.org/show_bug.cgi?id=125111
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-03
Reviewed by Filip Pizlo.
Almost all errors seem to be caused by differences in line ending when diffing test output with expected output.
* Scripts/run-javascriptcore-tests: Enable api test and stress test for WinCairo.
* Scripts/run-jsc-stress-tests: Ignore carriage return when diffing test output with expected output.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160048
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 23:19:40 +0000 (23:19 +0000)]
PageBannerClientImpl should be an API::Client
https://bugs.webkit.org/show_bug.cgi?id=125190
Reviewed by Tim Horton.
* WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
(PageBannerClientImpl::PageBannerClientImpl):
(PageBannerClientImpl::~PageBannerClientImpl):
(WKBundlePageBannerCreateBannerWithCALayer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160047
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Tue, 3 Dec 2013 23:03:09 +0000 (23:03 +0000)]
Fix regression caused by r158599
https://bugs.webkit.org/show_bug.cgi?id=125188
Reviewed by Jer Noble.
* html/HTMLMediaElement.cpp:
(HTMLMediaElement::clearMediaPlayer): Do not clear m_player when PLUGIN_PROXY_FOR_VIDEO
is enabled.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160046
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 22:50:20 +0000 (22:50 +0000)]
Nix Upstream: Updating WebCore files
https://bugs.webkit.org/show_bug.cgi?id=124981
Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-03
Reviewed by Benjamin Poulain.
Just to sync our github repo files and the trunk, as part of the upstream process
No new tests needed.
* PlatformNix.cmake:
* css/mediaControlsNix.css:
(audio):
(video::-webkit-media-controls):
(audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
(video::-webkit-media-controls-enclosure):
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(video:-webkit-full-page-media):
(audio:-webkit-full-page-media, video:-webkit-full-page-media):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-overlay-play-button, video::-webkit-media-controls-overlay-play-button):
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
(input[type="range"]::-webkit-media-slider-container):
(input[type="range"]::-webkit-media-slider-container > div):
(input[type="range"]::-webkit-media-slider-thumb):
(audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
(audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
(audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
(audio::-webkit-media-controls-fullscreen-volume-slider, video::-webkit-media-controls-fullscreen-volume-slider):
(audio::-webkit-media-controls-fullscreen-volume-min-button, video::-webkit-media-controls-fullscreen-volume-min-button):
(audio::-webkit-media-controls-fullscreen-volume-max-button, video::-webkit-media-controls-fullscreen-volume-max-button):
(video::-webkit-media-text-track-container):
(video::cue):
(video::-webkit-media-text-track-region):
(video::-webkit-media-text-track-region-container):
(video::-webkit-media-text-track-region-container.scrolling):
(video::-webkit-media-text-track-display):
(video::cue(:future)):
(video::-webkit-media-text-track-container b):
(video::-webkit-media-text-track-container u):
(video::-webkit-media-text-track-container i):
* editing/Editor.cpp:
(WebCore::Editor::cut):
(WebCore::Editor::copy):
(WebCore::Editor::copyImage):
* editing/Editor.h:
* html/HTMLCanvasElement.h:
* platform/Cursor.h:
* platform/audio/FFTFrame.h:
* platform/audio/nix/AudioBusNix.cpp:
(WebCore::AudioBus::loadPlatformResource):
* platform/graphics/GLContext.h:
* platform/nix/CursorNix.cpp:
(WebCore::Cursor::ensurePlatformCursor):
* platform/nix/GamepadsNix.cpp:
(WebCore::sampleGamepads):
* platform/nix/RenderThemeNix.cpp:
(WebCore::toIntSize):
(WebCore::toNixRect):
(WebCore::RenderThemeNix::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeNix::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeNix::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeNix::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeNix::platformActiveTextSearchHighlightColor):
(WebCore::RenderThemeNix::platformInactiveTextSearchHighlightColor):
(WebCore::RenderThemeNix::platformFocusRingColor):
(WebCore::RenderThemeNix::platformTapHighlightColor):
(WebCore::RenderThemeNix::paintButton):
(WebCore::RenderThemeNix::paintTextField):
(WebCore::RenderThemeNix::paintCheckbox):
(WebCore::RenderThemeNix::setCheckboxSize):
(WebCore::RenderThemeNix::paintRadio):
(WebCore::RenderThemeNix::setRadioSize):
(WebCore::RenderThemeNix::paintMenuList):
(WebCore::RenderThemeNix::paintProgressBar):
(WebCore::RenderThemeNix::paintSliderTrack):
(WebCore::RenderThemeNix::paintSliderThumb):
(WebCore::RenderThemeNix::paintInnerSpinButton):
(WebCore::RenderThemeNix::paintMeter):
(WebCore::RenderThemeNix::extraMediaControlsStyleSheet):
(WebCore::RenderThemeNix::paintMediaPlayButton):
(WebCore::RenderThemeNix::paintMediaMuteButton):
(WebCore::RenderThemeNix::paintMediaSeekBackButton):
(WebCore::RenderThemeNix::paintMediaSeekForwardButton):
(WebCore::RenderThemeNix::paintMediaSliderTrack):
(WebCore::RenderThemeNix::paintMediaVolumeSliderContainer):
(WebCore::RenderThemeNix::paintMediaVolumeSliderTrack):
(WebCore::RenderThemeNix::paintMediaRewindButton):
* platform/nix/RenderThemeNix.h:
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160045
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 22:43:03 +0000 (22:43 +0000)]
Typo: FixedPositionConstaint -> FixedPositionConstraint
https://bugs.webkit.org/show_bug.cgi?id=125171
Patch by Ralph Thomas <ralpht@gmail.com> on 2013-12-03
Reviewed by Simon Fraser.
Source/WebCore:
No new tests, no change in behavior.
* page/scrolling/ScrollingConstraints.h:
* page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
(WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):
Source/WebKit/ios:
* WebCoreSupport/WebFixedPositionContent.mm:
(-[WebFixedPositionContent scrollOrZoomChanged:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160044
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 3 Dec 2013 22:38:20 +0000 (22:38 +0000)]
Add a script to automatically configure a git clone
https://bugs.webkit.org/show_bug.cgi?id=110073
Revert the change to use https for now since git.webkit.org is setup with http.
* Scripts/webkitpy/tool/commands/setupgitclone.py:
(SetupGitClone.execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160043
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Tue, 3 Dec 2013 22:38:13 +0000 (22:38 +0000)]
jit/JITArithmetic.cpp doesn't build for non-X86 ports
https://bugs.webkit.org/show_bug.cgi?id=125185
Rubber stamped by Mark Hahnenberg.
Removed unused declarations and related UNUSED_PARAM().
* jit/JITArithmetic.cpp:
(JSC::JIT::emit_op_mod):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160042
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Tue, 3 Dec 2013 22:35:19 +0000 (22:35 +0000)]
[CSS Regions] Fix Layout/RegionsSelection.html in Mac platform
https://bugs.webkit.org/show_bug.cgi?id=124963
Reviewed by Ryosuke Niwa.
Layout/RegionsSelection.html introduced in r159488 was not working in
Mac platform because of it was trying to use mouse events out of the
window dimensions. Use collapse() and extend() methods from Selection
object to solve the issue.
* Layout/resources/regions.js: Use collapse() and extend() instead of
mouse events.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160041
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 3 Dec 2013 22:32:20 +0000 (22:32 +0000)]
[Cocoa] Give two load delegate methods more conventional names
https://bugs.webkit.org/show_bug.cgi?id=125183
Reviewed by Anders Carlsson.
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(didFailProvisionalLoadWithErrorForFrame): Updated for rename.
(didFailLoadWithErrorForFrame): Ditto.
* UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Renamed
-browsingContextControllerDidFailProvisionalLoad:withError: to
-browsingContextController:didFailProvisionalLoadWithError: and
-browsingContextControllerDidFailLoad:withError: to
-browsingContextController:didFailLoadWithError:.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160040
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 3 Dec 2013 22:29:39 +0000 (22:29 +0000)]
Add a script to automatically configure a git clone
https://bugs.webkit.org/show_bug.cgi?id=110073
Reviewed by Benjamin Poulain.
Added "webkit-patch setup-git-clone" to setup a brand new Git clone.
This command runs various commands listed on http://trac.webkit.org/wiki/UsingGitWithWebKit
* Scripts/webkitpy/tool/commands/__init__.py:
* Scripts/webkitpy/tool/commands/setupgitclone.py: Added.
(SetupGitClone):
(SetupGitClone.execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160039
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 3 Dec 2013 22:24:53 +0000 (22:24 +0000)]
ObjectAllocationProfile is racy and the DFG should be cool with that
https://bugs.webkit.org/show_bug.cgi?id=125172
<rdar://problem/
15233487>
Reviewed by Mark Hahnenberg.
We would previously sometimes get a null Structure because checking if the profile is non-null and loading
the structure from it were two separate operations.
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):
* dfg/DFGAbstractValue.cpp:
(JSC::DFG::AbstractValue::setFuturePossibleStructure):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* runtime/JSFunction.h:
(JSC::JSFunction::allocationProfile):
(JSC::JSFunction::allocationStructure):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160038
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 3 Dec 2013 22:19:32 +0000 (22:19 +0000)]
Import the XHTML parsing and serialization tests for template elements
https://bugs.webkit.org/show_bug.cgi?id=125131
Reviewed by Antti Koivisto.
Import the tests for parsing XHTML documents and fragments at
f744661dbd0c29bb6a54c1530f9843838eec1300
after self-closing link elements in template-child-nodes-div.xhtml and template-child-nodes-nested.xhtml
as these two files would encounter parser errors otherwise (I'll be merging these changes back into
the web-platform-tests repository later).
This completes the importation of W3C tests for the HTML template element.
* html-templates/additions-to-parsing-xhtml-documents: Added.
* html-templates/additions-to-parsing-xhtml-documents/node-document-expected.txt: Added.
* html-templates/additions-to-parsing-xhtml-documents/node-document.html: Added.
* html-templates/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt: Added.
* html-templates/additions-to-parsing-xhtml-documents/template-child-nodes.html: Added.
* html-templates/additions-to-serializing-xhtml-documents: Added.
* html-templates/additions-to-serializing-xhtml-documents/outerhtml-expected.txt: Added.
* html-templates/additions-to-serializing-xhtml-documents/outerhtml.html: Added.
* html-templates/resources/template-child-nodes-div.xhtml:
* html-templates/resources/template-child-nodes-nested.xhtml:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160037
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 21:53:21 +0000 (21:53 +0000)]
Deprecate WKNotificationProvider
https://bugs.webkit.org/show_bug.cgi?id=125178
Reviewed by Sam Weinig.
Source/WebKit2:
* Shared/API/c/WKDeclarationSpecifiers.h:
Add WK_DEPRECATED and WK_ENUM_DEPRECATED macros so we can things as deprecated.
* UIProcess/API/C/WKNotificationManager.cpp:
(WKNotificationManagerSetProvider):
* UIProcess/API/C/WKNotificationManager.h:
WKNotificationManagerSetProvider now takes a WKNotificationProviderBase.
* UIProcess/API/C/WKNotificationProvider.h:
Deprecate WKNotificationProvider and kWKNotificationProviderCurrentVersion.
Tools:
Update for WebKit2 changes.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
* WebKitTestRunner/WebNotificationProvider.cpp:
(WTR::WebNotificationProvider::provider):
* WebKitTestRunner/WebNotificationProvider.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160036
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 3 Dec 2013 21:50:43 +0000 (21:50 +0000)]
[Win] Support 64-bit Application Support Libraries Location
https://bugs.webkit.org/show_bug.cgi?id=125179
Reviewed by Tim Horton.
Enable the user to specify a location for 64-bit support libraries (such as libxml2, ICU, etc.)
on Windows until an official distribution is available that properly creates registry settings
to specify these locations.
* Scripts/webkitdirs.pm:
(setupAppleWinEnv): Notify user to set WEBKIT_64_SUPPORT environment variable if needed.
(setupCygwinEnv): Report WEWBKIT_64_SUPPORT path when running 64-bit builds.
(appleApplicationSupportPath): Add WEBKIT_64_SUPPORT location to runtime environment when
running 64-bit builds.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160035
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 3 Dec 2013 21:21:52 +0000 (21:21 +0000)]
Indexed Database work should be done on a non-main queue
https://bugs.webkit.org/show_bug.cgi?id=125127
Reviewed by Darin Adler.
Add a non-main WorkQueue to the DatabaseProcess:
* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::DatabaseProcess):
(WebKit::DatabaseProcess::queue):
* DatabaseProcess/DatabaseProcess.h:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::UniqueIDBDatabase):
(WebKit::UniqueIDBDatabase::enqueueDatabaseQueueRequest): Add an AsyncRequest to the deque then schedule performing
the requests on the background WorkQueue.
(WebKit::UniqueIDBDatabase::processDatabaseRequestQueue): Processes all enqueued database requests.
(WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): Renamed from getIDBDatabaseMetadata().
(WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadataInternal): For doing i/o on a background queue/thread.
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
Add a creator that takes the abort handler as an argument, and rename requestedCompleted()
to completeRequest(). This makes more sense in more situations:
* Shared/AsyncRequest.cpp:
(WebKit::AsyncRequest::AsyncRequest):
(WebKit::AsyncRequest::setAbortHandler):
* Shared/AsyncRequest.h:
(WebKit::AsyncRequest::completeRequest):
Update for the AsyncRequest rename:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160033
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
samuel_white@apple.com [Tue, 3 Dec 2013 20:58:18 +0000 (20:58 +0000)]
AXPress event coordinates are always sent as (0, 0)
https://bugs.webkit.org/show_bug.cgi?id=76677
Reviewed by Simon Fraser.
Make sure a press targets an element's center point.
* accessibility/press-targets-center-point-expected.txt: Added.
* accessibility/press-targets-center-point.html: Added.
Set the coordinates of a simulated press equal to the center of the target
element when the simulated press does not have a related mouse event.
Test: accessibility/press-targets-center-point.html
* dom/Element.cpp:
(WebCore::Element::clientRect):
(WebCore::Element::screenRect):
* dom/Element.h:
* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchSimulatedClick):
* dom/MouseEvent.cpp:
(WebCore::SimulatedMouseEvent::create):
(WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
* dom/MouseEvent.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160032
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Tue, 3 Dec 2013 20:37:57 +0000 (20:37 +0000)]
Remove TiledCoreAnimationDrawingArea(Proxy)IOS
https://bugs.webkit.org/show_bug.cgi?id=125176
Reviewed by Simon Fraser.
Remove unused code.
* UIProcess/API/ios/WKContentView.mm:
* UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.h: Removed.
* UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm: Removed.
* Shared/DrawingAreaInfo.h:
* WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::create):
* WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.h: Removed.
* WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.mm: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160031
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Tue, 3 Dec 2013 20:21:29 +0000 (20:21 +0000)]
[WebGL] Implement OES texture float linear
https://bugs.webkit.org/show_bug.cgi?id=124871
Reviewed by Brent Fulgham.
Source/WebCore:
Implement the OES_texture_float_linear extension. Generally
we'd also enable OES_texture_half_float_linear at the same
time, but that's blocked on webkit.org/b/110936.
Test: fast/canvas/webgl/oes-texture-float-linear.html
* CMakeLists.txt: Add new files.
* DerivedSources.cpp: Ditto.
* DerivedSources.make: Generate new file from IDL.
* GNUmakefile.list.am: Add new files.
* WebCore.vcxproj/WebCore.vcxproj: Ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear.
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS): Map the new name into the appropriate type.
* html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class
that's mostly empty.
(WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
(WebCore::OESTextureFloatLinear::~OESTextureFloatLinear):
(WebCore::OESTextureFloatLinear::getName):
(WebCore::OESTextureFloatLinear::create):
* html/canvas/OESTextureFloatLinear.h: Added.
* html/canvas/OESTextureFloatLinear.idl: Added.
* html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions.
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::drawArrays): Call new name.
(WebCore::WebGLRenderingContext::drawElements): Call new name.
(WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked.
(WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now
checks for the type of the texture too.
* html/canvas/WebGLRenderingContext.h: Member variable for new extension.
* html/canvas/WebGLTexture.cpp:
(WebCore::WebGLTexture::WebGLTexture):
(WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates
if it has an extension enabled.
(WebCore::WebGLTexture::update): Note it is a float type when updating.
* html/canvas/WebGLTexture.h: New flag to indicate float type.
* platform/graphics/Extensions3D.h: New flag type.
* platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension.
LayoutTests:
Add the Khronos test files for this extension.
Add the JS test file for OES_texture_float_linear and OES_texture_half_float_linear
even though it's only used for the former at the moment.
* fast/canvas/webgl/oes-texture-float-linear.html: Added.
* fast/canvas/webgl/resources/oes-texture-float-and-half-float-linear.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160030
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 3 Dec 2013 20:18:14 +0000 (20:18 +0000)]
Support exporting private WebCrypto RSA keys
https://bugs.webkit.org/show_bug.cgi?id=124483
Reviewed by Anders Carlsson.
Source/WebCore:
Test: crypto/subtle/rsa-export-private-key.html
It might be better to have our own bignum implementation in WTF, but we currently
don't, and the need for this computation is Common Crypto specific anyway.
* crypto/CommonCryptoUtilities.h:
* crypto/CommonCryptoUtilities.cpp:
(WebCore::CCBigNum::CCBigNum):
(WebCore::CCBigNum::~CCBigNum):
(WebCore::CCBigNum::operator=):
(WebCore::CCBigNum::data):
(WebCore::CCBigNum::operator-):
(WebCore::CCBigNum::operator%):
(WebCore::CCBigNum::inverse):
Added a minimal wrapper around CommonCrypto BigNum.
* crypto/mac/CryptoKeyRSAMac.cpp:
(WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum.
(WebCore::CryptoKeyRSA::exportData): Implemented private key case.
LayoutTests:
* crypto/subtle/rsa-export-private-key-expected.txt: Added.
* crypto/subtle/rsa-export-private-key.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160029
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 20:12:09 +0000 (20:12 +0000)]
Remove old WebKit::APIClient cruft
https://bugs.webkit.org/show_bug.cgi?id=125173
Reviewed by Antti Koivisto.
* Shared/APIClient.h:
* Shared/APIClientTraits.cpp: Removed.
* Shared/APIClientTraits.h: Removed.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Plugins/PDF/PDFPlugin.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160028
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 3 Dec 2013 20:05:52 +0000 (20:05 +0000)]
WebCrypto HMAC doesn't check key algorithm's hash
https://bugs.webkit.org/show_bug.cgi?id=125114
Update layout test result for a last minute change in test content.
* crypto/subtle/hmac-check-algorithm-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160027
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Tue, 3 Dec 2013 20:01:24 +0000 (20:01 +0000)]
Build fix for iOS.
Reviewed by Tim Horton.
* Shared/WebCoreArgumentCoders.cpp: Added missing header.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160026
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 19:51:08 +0000 (19:51 +0000)]
Web Inspector: restore navigation panel state across reloads and reopens
https://bugs.webkit.org/show_bug.cgi?id=122125
Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-12-03
Reviewed by Timothy Hatcher.
The previous strategy for restoring content views after inspector
re-open did not consider the active sidebar and its selection, and
tried to recreate the appropriate selection from the saved content
view. However, doesn't work for tree elements in the sidebar panel
that don't change views when selected, such as script breakpoints,
special breakpoints, call stack, timeline sections, etc.
This patch implements a new strategy that saves the navigation
sidebar panel's view state by serializing the identity of the
selected element's represented object. Relevant represented
object classes implement the saveIdentityToCookie() method. Each
represented object class also adds a TypeIdentifier property to
its constructor, to aid inexact matching based on represented
object type, rather than its complete identity.
When restoring, the navigation sidebar attempts to match added
tree elements against the pending cookie, and selects the element
if it matches. A represented object matches if its serialized
identity matches the previously saved serialized identity.
The inspector view state is now only saved on the page hide event
(for saving across reopen) and when the main frame commits its
provisional load (for saving across same-page reloads). It
consolidates similar view state settings into a single setting.
* UserInterface/ApplicationCacheFrame.js:
(WebInspector.ApplicationCacheFrame): Add cookie keys and type identifier.
(WebInspector.ApplicationCacheFrame.prototype.saveIdentityToCookie): Added.
* UserInterface/ApplicationCacheManager.js: remove objectForCookie().
* UserInterface/Breakpoint.js:
(WebInspector.Breakpoint): Add cookie keys and type identifier.
(WebInspector.Breakpoint.prototype.saveIdentityToCookie):
* UserInterface/CookieStorageObject.js:
(WebInspector.CookieStorageObject.prototype.saveIdentityToCookie): Added.
* UserInterface/DOMStorageObject.js:
(WebInspector.DOMStorageObject): Add cookie keys and type identifier.
(WebInspector.DOMStorageObject.prototype.saveIdentityToCookie): Added.
* UserInterface/DatabaseObject.js:
(WebInspector.DatabaseObject): Add cookie keys and type identifier.
(WebInspector.DatabaseObject.prototype.saveIdentityToCookie): Added.
* UserInterface/DatabaseTableObject.js:
(WebInspector.DatabaseTableObject): Add cookie keys and type identifier.
(WebInspector.DatabaseTableObject.prototype.saveIdentityToCookie): Added.
* UserInterface/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie): Added.
(WebInspector.DebuggerSidebarPanel.prototype.restoreStateFromCookie): Added.
* UserInterface/Frame.js:
(WebInspector.Frame): Add cookie keys and type identifier.
(WebInspector.Frame.prototype.saveIdentityToCookie): Added.
* UserInterface/FrameResourceManager.js: remove objectForCookie().
* UserInterface/InstrumentSidebarPanel.js:
(WebInspector.InstrumentSidebarPanel.prototype.showTimelineForRecordType):
Return the shown timeline, if any.
(WebInspector.InstrumentSidebarPanel.prototype.saveStateToCookie): Added.
(WebInspector.InstrumentSidebarPanel.prototype.restoreStateFromCookie): Added.
(WebInspector.InstrumentSidebarPanel.prototype.showProfile):
Return the shown profile, if any.
* UserInterface/Main.js:
(WebInspector): Added cookie keys for the selected sidebar and
typeidentifier of the sidebar's selected tree element.
(WebInspector.contentLoaded): Remove callbacks for
resolveAndShowPendingContentViewCookie(). Consolidate all saved
inspector view state into one Setting. Move special-cased
restoring of the console to the restoration method. Move saving
of last opened navigation panel to the saving method.
(WebInspector._mainResourceDidChange): Try to restore saved view
state when the main resource changes.
(WebInspector._provisionalLoadCommitted): Update the saved view
state when the navigation commits. This is the last chance to save
it before the main resource changes and the navigation panel view
state is discarded and rebuilt.
(WebInspector._pageHidden): Update the saved view state when the
inspector page is hidden, but before state is discarded.
(WebInspector._navigationSidebarPanelSelected): Don't save last
navigation sidebar panel.
(WebInspector._updateCookieForInspectorViewState): Renamed from
_updateCurrentContentViewCookie. It delegates view state
serialization to the currently open navigation sidebar, rather
than the current content view.
(WebInspector._contentBrowserRepresentedObjectsDidChange): Don't
spuriously serialize the current view state cookie on every
ContentView change.
(WebInspector._restoreInspectorViewStateFromCookie): Renamed from
_showContentViewForCookie. It now restores a specific navigation
panel and delegates remaining view state restoration to the panel
itself. Last-resort selection of any tree element with the same
type identifier was moved to the navigation panel's restore method.
* UserInterface/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel):
(WebInspector.NavigationSidebarPanel.prototype.set contentTreeOutline):
(WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):
Save references to all created TreeOutlines in a Set, so we can
restore any tree's selection.
(WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie):
Added. Find the selected tree element from all tree outlines and
ask it to serialize its identity.
(WebInspector.NavigationSidebarPanel.prototype.restoreStateFromCookie):
Added. Eagerly search existing tree elements for a matching
representedObject. If none exists, save the pending cookie and
schedule last-resort matching using the provided timeout interval.
(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
Check if the added tree element matches a pending view state
cookie, if one exists.
(WebInspector.NavigationSidebarPanel.prototype.treeElementMatchesCookie):
Added. Check if the tree element's representedObject matches the
pending view state cookie.
(WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
Added. For each provided tree element, check if the tree
element's represented object produces the same serialized identity
as the pending view state cookie that we are trying to resolve.
If a match is found (possibly by relaxing to matching anything
with the same type), select the tree element and clear both the
pending view state cookie and last-resort selection timer.
* UserInterface/Resource.js:
(WebInspector.Resource): Add cookie keys and type identifier.
(WebInspector.Resource.prototype.saveIdentityToCookie): Added.
* UserInterface/ResourceClusterContentView.js:
(WebInspector.ResourceClusterContentView.prototype.saveToCookie):
(WebInspector.ResourceClusterContentView.prototype.restoreFromCookie):
Since identity state is serialized by the representedObject, these
methods only need to save view-specific state, such as the visible
subview. Remove extraneous state.
* UserInterface/Script.js:
(WebInspector.Script): Add cookie keys and type identifier.
(WebInspector.Script.prototype.saveIdentityToCookie): Added.
* UserInterface/StorageManager.js: remove objectForCookie().
* UserInterface/TimelineManager.js: remove objectForCookie().
* UserInterface/TimelinesContentView.js:
(WebInspector.TimelinesContentView.prototype.saveToCookie):
(WebInspector.TimelinesContentView.prototype.restoreFromCookie):
Since identity state is serialized by the representedObject, these
methods only need to save view-specific state, such as the visible
subview. Remove extraneous state.
* UserInterface/TreeOutline.js: Add TreeOutline.prototype.constructor
so other code can assume the constructor property exists.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160025
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 3 Dec 2013 19:44:55 +0000 (19:44 +0000)]
XML fragment parsing algorithm doesn't use the context element's default namespace URI
https://bugs.webkit.org/show_bug.cgi?id=125132
Reviewed by Darin Adler.
Source/WebCore:
Always use the context element's namespace as the default namespace URI when one is not specified by xmlns.
The new behavior matches that of Internet Explorer and the specified behavior in HTML5:
http://www.w3.org/TR/2013/CR-html5-
20130806/the-xhtml-syntax.html#parsing-xhtml-fragments
"The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would
return true."
Test: fast/parser/fragment-parsing-in-document-without-xmlns.html
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):
LayoutTests:
Added a test for parsing a markup fragment inside a XHTML document without xmlns.
The parsed fragment should use the context element's namespace as the default namespace.
* fast/parser/fragment-parsing-in-document-without-xmlns-expected.txt: Added.
* fast/parser/fragment-parsing-in-document-without-xmlns.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160024
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 19:43:25 +0000 (19:43 +0000)]
Remove some CSS Variables leftovers
https://bugs.webkit.org/show_bug.cgi?id=125167
Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-03
Reviewed by Darin Adler.
Source/WebCore:
No new tests needed. Only removing leftover code.
* css/CSSBasicShapes.cpp:
* css/CSSBasicShapes.h:
Source/WebKit/blackberry:
* WebCoreSupport/AboutDataEnableFeatures.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 19:37:35 +0000 (19:37 +0000)]
Remove WTF:: prefix from types in messages.in files.
https://bugs.webkit.org/show_bug.cgi?id=124578
Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Anders Carlsson.
The WTF:: prefixes are removed from the messages.in files, and the
messages.py now handles unprefixed non-template WTF classes (only
the WTF::String class is used currently). Tests are also updated.
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* NetworkProcess/NetworkProcess.messages.in:
* PluginProcess/PluginControllerProxy.messages.in:
* PluginProcess/PluginProcess.messages.in:
* Scripts/webkit2/messages.py:
(forward_declarations_and_headers):
(class_template_headers):
(argument_coder_headers_for_type):
* Scripts/webkit2/messages_unittest.py:
(std):
* Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
* UIProcess/Downloads/DownloadProxy.messages.in:
* UIProcess/Plugins/PluginProcessProxy.messages.in:
* UIProcess/Storage/StorageManager.messages.in:
* UIProcess/WebContext.messages.in:
* UIProcess/WebCookieManagerProxy.messages.in:
* UIProcess/WebDatabaseManagerProxy.messages.in:
* UIProcess/WebIconDatabase.messages.in:
* UIProcess/WebInspectorProxy.messages.in:
* UIProcess/WebMediaCacheManagerProxy.messages.in:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessProxy.messages.in:
* WebProcess/Cookies/WebCookieManager.messages.in:
* WebProcess/Geolocation/WebGeolocationManager.messages.in:
* WebProcess/MediaCache/WebMediaCacheManager.messages.in:
* WebProcess/Notifications/WebNotificationManager.messages.in:
* WebProcess/Plugins/PluginProcessConnection.messages.in:
* WebProcess/Plugins/PluginProxy.messages.in:
* WebProcess/Storage/StorageAreaMap.messages.in:
* WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
* WebProcess/WebPage/WebInspector.messages.in:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebProcess.messages.in:
* WebProcess/soup/WebSoupRequestManager.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160022
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 19:37:24 +0000 (19:37 +0000)]
Checking second-to-last bit in address is a typo
https://bugs.webkit.org/show_bug.cgi?id=125162
Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-03
Reviewed by Darin Adler.
After talking with the original author of this line,
is was a typo to make sure that the second-to-last bit
in an address is 0. Instead, we want to make sure that
the address is aligned to a 4-byte boundary
No behavior change, so no test is necessary
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::ImageBuffer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160021
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 19:36:06 +0000 (19:36 +0000)]
Tweak build fixes.
* Shared/APIClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Tue, 3 Dec 2013 19:31:21 +0000 (19:31 +0000)]
ANGLE fails to build with trunk clang: unused constant kTraceBufferLen
https://bugs.webkit.org/show_bug.cgi?id=125164
https://code.google.com/p/angleproject/issues/detail?id=534
Reviewed by Darin Adler.
Move the definition of the constant kTraceBufferLen under the macro
guard TRACE_ENABLED since it's only referenced in code guarded by
TRACE_ENABLED.
* src/compiler/debug.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160018
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 3 Dec 2013 19:26:56 +0000 (19:26 +0000)]
[Win] WebKit.make Makefile doesn't copy resource bundle to DSTROOT
https://bugs.webkit.org/show_bug.cgi?id=125160
Reviewed by Tim Horton.
* WebKit.vcxproj/WebKit.make: Add copy command for resource bundle.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160017
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Tue, 3 Dec 2013 18:51:12 +0000 (18:51 +0000)]
run-jsc-stress-tests only supports host environments that have make installed
https://bugs.webkit.org/show_bug.cgi?id=124550
Reviewed by Darin Adler.
This might not be the case for all hosts, so this patch implements an alternate "backend"
for run-jsc-stress-tests to use normal shell commands rather than Makefiles. To remain at
least somewhat competitive with the make-based test runner, the shell backend uses subshells
run in the background to allow tests to run in parallel. Since the concurrency primitives
in shell scripting are rather coarse, the overhead of this parallelism is higher than that
of the make-based runner.
* Scripts/jsc-stress-test-helpers/shell-runner.sh: Added. This is the runner that is copied into
the bundle and controls all of the parallel aspects of the shell-based test runner.
* Scripts/run-jsc-stress-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160016
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 3 Dec 2013 18:44:32 +0000 (18:44 +0000)]
AX: Crash in accessibilityRoot when Document goes away
https://bugs.webkit.org/show_bug.cgi?id=125113
Reviewed by Tim Horton.
The AXObjectCache can sometimes be null if the render tree has been detached from the document.
* WebView/WebFrame.mm:
(-[WebFrame accessibilityRoot]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160015
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
stavila@adobe.com [Tue, 3 Dec 2013 18:28:54 +0000 (18:28 +0000)]
The overflow border of a relatively positioned element inside a region is not painted
https://bugs.webkit.org/show_bug.cgi?id=124919
Source/WebCore:
Relative positioned elements have self-painting layers that don't propagate the visual overflow
so the layer's position should be used when determining the clipping rectangle for box decorations.
Reviewed by Mihnea Ovidenie.
Test: fast/regions/relative-borders-overflow.html
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
LayoutTests:
Added new tests for correct painting of the borders of a relatively positioned element inside a region.
Reviewed by Mihnea Ovidenie.
* fast/regions/relative-borders-overflow-expected.html: Added.
* fast/regions/relative-borders-overflow.html: Added.
* fast/regions/relative-in-absolute-borders-overflow-expected.html: Added.
* fast/regions/relative-in-absolute-borders-overflow.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
seokju@webkit.org [Tue, 3 Dec 2013 18:09:28 +0000 (18:09 +0000)]
Web Inspector: Get rid of 'hasFrontend()' in InspectorController and WorkerInspectorController
https://bugs.webkit.org/show_bug.cgi?id=125135
Reviewed by Darin Adler.
Remove 'hasFrontend()' from InspectorController and WorkerInspectorController
as it's never called.
No new tests, no behavior changes.
* inspector/InspectorController.h:
* inspector/WorkerInspectorController.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
seokju@webkit.org [Tue, 3 Dec 2013 18:08:34 +0000 (18:08 +0000)]
Web Inspector: webViewResized() is not used anywhere in WebInspectorUI
https://bugs.webkit.org/show_bug.cgi?id=125137
Reviewed by Darin Adler.
Remove leftover code.
No new tests, no behavior changes.
* inspector/InspectorController.cpp:
* inspector/InspectorController.h:
* inspector/InspectorOverlay.cpp:
* inspector/InspectorOverlay.h:
* inspector/InspectorPageAgent.cpp:
* inspector/InspectorPageAgent.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160012
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 3 Dec 2013 17:40:37 +0000 (17:40 +0000)]
AX: aria-hidden=false does not work as expected
https://bugs.webkit.org/show_bug.cgi?id=98787
Reviewed by Beth Dakin.
These tests were part of this patch added over a year ago, but the patch was rolled out, and when it was rolled back in
the tests were never added. So I'm adding them back again.
* accessibility/aria-hidden-negates-no-visibility.html: Added.
* platform/mac/accessibility/aria-hidden-negates-no-visibility-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160011
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 17:29:22 +0000 (17:29 +0000)]
ASSERTION FAILED: !value || (value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue.
https://bugs.webkit.org/show_bug.cgi?id=125146
Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-03
Reviewed by Darin Adler.
Source/WebCore:
Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer.
An implicit y-value can become explicit if specified as a separate longhand.
At the same time, its new value can be non-primitive.
Backported from Blink:
http://src.chromium.org/viewvc/blink?view=rev&rev=153678
Test: fast/css/webkit-mask-crash-implicit.html
* css/StyleProperties.cpp:
(WebCore::StyleProperties::getLayeredShorthandValue):
LayoutTests:
* fast/css/webkit-mask-crash-implicit-expected.txt: Added.
* fast/css/webkit-mask-crash-implicit.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Tue, 3 Dec 2013 17:26:36 +0000 (17:26 +0000)]
Fix build break after r160007.
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShape::canBlend):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 17:25:54 +0000 (17:25 +0000)]
Fix EFL build error in WK2 (159965)
https://bugs.webkit.org/show_bug.cgi?id=125153
Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-03
Reviewed by Darin Adler.
* Shared/APIClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Tue, 3 Dec 2013 17:18:01 +0000 (17:18 +0000)]
[css shapes] layout for new ellipse syntax
https://bugs.webkit.org/show_bug.cgi?id=124621
Source/WebCore:
Reviewed by Dirk Schulze.
Implement support for doing layout with the new ellipse shape syntax,
including basic animation support.
Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape): Convert new ellipse to a layout shape.
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShape::canBlend): Ignore ellipses with values that
cannot be interpolated.
(WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate
either radiusX or radiusY, shared by clip-path and shape code paths.
(WebCore::BasicShapeEllipse::path):
* rendering/style/BasicShapes.h:
LayoutTests:
Add a new test for the new ellipse syntax. Also update existing shape-inside, animation, and clip-path tests to
test the new ellipse syntax for clipping and shape-inside.
Reviewed by Dirk Schulze.
* animations/resources/animation-test-helpers.js:
(parseBasicShape):
* css3/masking/clip-path-animation-expected.txt:
* css3/masking/clip-path-animation.html:
* css3/masking/clip-path-ellipse.html:
* fast/shapes/shape-inside/shape-inside-animation-expected.txt:
* fast/shapes/shape-inside/shape-inside-animation.html:
* fast/shapes/shape-inside/shape-inside-ellipse-padding.html:
* fast/shapes/shape-inside/shape-inside-ellipse.html:
* fast/shapes/shape-inside/shape-inside-empty-expected.html:
* fast/shapes/shape-inside/shape-inside-empty.html:
* fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
* fast/shapes/shape-outside-floats/shape-outside-animation.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 17:15:18 +0000 (17:15 +0000)]
Remove function from TextChecker
https://bugs.webkit.org/show_bug.cgi?id=125148
Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Darin Adler.
The process_file_data is used only from the unit tests, so it is simply moved there.
* Scripts/webkitpy/style/checkers/text.py:
(TextChecker.check):
* Scripts/webkitpy/style/checkers/text_unittest.py:
(TextStyleTestCase.process_file_data):
(TextStyleTestCase.assertNoError):
(TextStyleTestCase.assertError):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160006
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 17:12:38 +0000 (17:12 +0000)]
Add an MathMLSelectElement class to implement <maction> and <semantics>.
<https://webkit.org/b/120058>
Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-03
Reviewed by Chris Fleizach.
Source/WebCore:
Tests: mathml/presentation/maction-dynamic.html
mathml/presentation/maction.html
mathml/presentation/semantics.html
This adds a new MathMLSelectElement class to prepare the implementation
of the <maction> and <semantics> elements, for which only one "selected"
child is visible. We now simply display the first child of the
<semantics> element instead of hiding the annotations and this allows to
handle the use case of SVG-in-MathML as generated by Instiki when
bug 124128 is fixed ; Gecko's selection algorithm will be implemented
later (bug 100626). We now also rely on the @actiontype and @selection
attributes to select the visible <maction> child ; It remains to deal
with the user interaction (bug 85734).
* CMakeLists.txt: add the new files.
* GNUmakefile.list.am: ditto
* Target.pri: ditto
* WebCore.vcxproj/WebCore.vcxproj: ditto
* WebCore.vcxproj/WebCore.vcxproj.filters: ditto
* WebCore.xcodeproj/project.pbxproj: ditto
* css/mathml.css: remove the CSS rule for annotation/annotation-xml.
* mathml/MathMLAllInOne.cpp: add the new cpp file.
* mathml/MathMLSelectElement.cpp: Added.
(WebCore::MathMLSelectElement::MathMLSelectElement):
(WebCore::MathMLSelectElement::create):
(WebCore::MathMLSelectElement::createRenderer):
(WebCore::MathMLSelectElement::childShouldCreateRenderer):
(WebCore::MathMLSelectElement::finishParsingChildren):
(WebCore::MathMLSelectElement::childrenChanged):
(WebCore::MathMLSelectElement::attributeChanged):
(WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection.
* mathml/MathMLSelectElement.h: Added.
* mathml/mathattrs.in: add actiontype and selection attributes.
* mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml.
LayoutTests:
New tests for the selection of the visible child in the <maction> and <semantics> elements.
* mathml/presentation/maction-dynamic-expected.html: Added.
* mathml/presentation/maction-dynamic.html: Added.
* mathml/presentation/maction-expected.html: Added.
* mathml/presentation/maction.html: Added.
* mathml/presentation/semantics-expected.html: Added.
* mathml/presentation/semantics.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160005
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 17:09:54 +0000 (17:09 +0000)]
testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size()
https://bugs.webkit.org/show_bug.cgi?id=121972
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-03
Reviewed by Michael Saboff.
The reason for the crash is that the wrong memory block is decommitted.
This can happen if no memory has been committed in the reserved block before the JSStack object is destroyed.
In the JSStack destructor, the pointer to decommit then points to the end of the block (or the start of the next), and the decommit size is zero.
If there is a block just after the block we are trying to decommit, this block will be decommitted, since Windows will decommit the whole block,
if the decommit size is zero (see VirtualFree). When somebody tries to read/write to this block later, we crash.
* interpreter/JSStack.cpp:
(JSC::JSStack::~JSStack): Don't decommit memory if nothing has been committed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160004
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 15:53:32 +0000 (15:53 +0000)]
Guard JIT include.
https://bugs.webkit.org/show_bug.cgi?id=125063
Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-03
Reviewed by Filip Pizlo.
* llint/LLIntThunks.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160003
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
seokju@webkit.org [Tue, 3 Dec 2013 15:02:03 +0000 (15:02 +0000)]
Debug build fix : Add '<algorithm>' for 'std::is_sorted' after r159965.
https://bugs.webkit.org/show_bug.cgi?id=125140
Reviewed by Csaba Osztrogonác.
* Shared/APIClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 14:24:50 +0000 (14:24 +0000)]
Nix Upstream: Adding missing nix new files to WebCore
https://bugs.webkit.org/show_bug.cgi?id=124987
Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-03
Reviewed by Benjamin Poulain.
No new tests needed.
* PlatformNix.cmake:
* platform/nix/ErrorsNix.cpp: Added.
* platform/nix/ErrorsNix.h: Added.
* platform/nix/FileSystemNix.cpp: Added.
* platform/nix/MIMETypeRegistryNix.cpp: Added.
* platform/nix/SharedTimerNix.cpp: Added.
* platform/nix/TemporaryLinkStubs.cpp: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 12:44:27 +0000 (12:44 +0000)]
Fix EFL build with INPUT_TYPE_COLOR disabled.
https://bugs.webkit.org/show_bug.cgi?id=125065
Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Zoltan Herczeg.
* UIProcess/API/efl/ewk_color_picker.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 12:42:29 +0000 (12:42 +0000)]
Correct broken build on efl port with --no-netscape-plugin-api
configuration.
https://bugs.webkit.org/show_bug.cgi?id=123997
Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-12-03
Reviewed by Zoltan Herczeg.
Build failed on efl port with --no-netscape-plugin-api configuration
as ld did not found some methods. The configuration uses a minimal
empty implementation of the class, which is now extended with empty
method implementations.
* plugins/PluginPackageNone.cpp:
(WebCore::PluginPackage::createPackage):
Returns NULL pointer.
(WebCore::PluginPackage::hash):
Returns 0.
(WebCore::PluginPackage::equal):
Returns true (equals).
(WebCore::PluginPackage::compare):
Returns 0 (equals).
(WebCore::PluginPackage::~PluginPackage):
Do nothing.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 12:40:31 +0000 (12:40 +0000)]
Remove get_test() and reference test names directly instead.
https://bugs.webkit.org/show_bug.cgi?id=124962
Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-03
Reviewed by Csaba Osztrogonác.
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(Base.__init__):
(Base.get_basic_tests):
(assert_exp):
(MiscTests.test_multiple_results):
(MiscTests.test_category_expectations):
(MiscTests.test_get_modifiers):
(MiscTests.test_get_expectations_string):
(MiscTests.test_get_test_set):
(MiscTests.test_parse_warning):
(MiscTests.test_pixel_tests_flag.match):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Tue, 3 Dec 2013 12:30:22 +0000 (12:30 +0000)]
Style Checker false pass.
https://bugs.webkit.org/show_bug.cgi?id=112456
Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-03
Reviewed by Csaba Osztrogonác.
* Scripts/webkitpy/style/checkers/changelog.py:
(ChangeLogChecker.check_entry):
simple regex fix to check "No new tests (...)."
* Scripts/webkitpy/style/checkers/changelog_unittest.py:
(ChangeLogCheckerTest.test_no_new_tests):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 10:29:47 +0000 (10:29 +0000)]
Add spatial navigation API in EFL port
https://bugs.webkit.org/show_bug.cgi?id=125002
Patch by Dariusz Frankiewicz <d.frankiewic@samsung.com> on 2013-12-03
Reviewed by Gyuyoung Kim.
API enables capability of turning on and off spatial navigation
and check is state.
Spatial navigation is the ability to navigate between focusable
elements by keyboard.
* UIProcess/API/efl/ewk_settings.cpp:
(ewk_settings_spatial_navigation_enabled_set):
(ewk_settings_spatial_navigation_enabled_get):
* UIProcess/API/efl/ewk_settings.h:
* UIProcess/API/efl/tests/test_ewk2_settings.cpp:
(TEST_F):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 10:28:21 +0000 (10:28 +0000)]
Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.
https://bugs.webkit.org/show_bug.cgi?id=125067
Patch by Julien Brianceau <jbriance@cisco.com> on 2013-12-03
Reviewed by Michael Saboff.
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTINativeCall):
* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Tue, 3 Dec 2013 08:01:17 +0000 (08:01 +0000)]
Build fixes for GCC-using ports after r159965 and later
https://bugs.webkit.org/show_bug.cgi?id=125136
GCC doesn't process API::ClientTraits template instantiations unless they're done
inside the API namespace.
* Shared/WebConnectionClient.h:
* UIProcess/Notifications/WebNotificationProvider.h:
* UIProcess/WebContextClient.h:
* UIProcess/WebContextConnectionClient.h:
* UIProcess/WebContextInjectedBundleClient.h:
* UIProcess/WebCookieManagerProxyClient.h:
* UIProcess/WebDatabaseManagerProxyClient.h:
* UIProcess/WebDownloadClient.h:
* UIProcess/WebFindClient.h:
* UIProcess/WebFormClient.h:
* UIProcess/WebGeolocationProvider.h:
* UIProcess/WebHistoryClient.h:
* UIProcess/WebIconDatabaseClient.h:
* UIProcess/WebLoaderClient.h:
* UIProcess/WebOriginDataManagerProxyChangeClient.h:
* UIProcess/WebPageContextMenuClient.h:
* UIProcess/WebPolicyClient.h:
* UIProcess/WebUIClient.h:
* WebProcess/InjectedBundle/InjectedBundleClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
* WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159994
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 3 Dec 2013 06:20:39 +0000 (06:20 +0000)]
Build fix.
* UIProcess/API/ios/WKGeolocationProviderIOS.mm:
(-[WKGeolocationProviderIOS initWithContext:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159993
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 3 Dec 2013 05:53:32 +0000 (05:53 +0000)]
Add ability to iterate over API::Array
https://bugs.webkit.org/show_bug.cgi?id=124533
Patch by Martin Hock <mhock@apple.com> on 2013-12-02
Reviewed by Sam Weinig.
* GNUmakefile.list.am:
* Shared/APIArray.h:
* Shared/FilterIterator.h:
* Shared/IteratorPair.h:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::toStringVector):
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159992
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Tue, 3 Dec 2013 04:25:07 +0000 (04:25 +0000)]
[Cocoa] WebProtectionSpace has a generic wrapper
https://bugs.webkit.org/show_bug.cgi?id=125125
Reviewed by Anders Carlsson.
Added WKNSURLProtectionSpace.
* Shared/Cocoa/APIObject.mm:
(API::Object::newObject): Allocate a WKNSURLProtectionSpace if the object is a
WebProtectionSpace.
* Shared/Cocoa/WKNSURLProtectionSpace.h: Added.
(WebKit::wrapper): Added. Returns a WebProtecitonSpace’s wrapper as an NSURLProtectionSpace.
* Shared/Cocoa/WKNSURLProtectionSpace.mm: Added.
(-[WKNSURLProtectionSpace copyWithZone:]): Retains self.
* UIProcess/Authentication/WebProtectionSpace.h:
(WebKit::WebProtectionSpace::protectionSpace): Added an accessor for the
WebCore::ProtectionSpace.
* WebKit2.xcodeproj/project.pbxproj: Added references to new files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159991
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Tue, 3 Dec 2013 04:19:07 +0000 (04:19 +0000)]
run-jsc-stress-tests should allow for tests that have a directory containing .js files nested within a directory containing the data
https://bugs.webkit.org/show_bug.cgi?id=125130
Reviewed by Geoffrey Garen.
* Scripts/run-jsc-stress-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 3 Dec 2013 03:19:08 +0000 (03:19 +0000)]
Avoid setting style twice for generated image content.
<https://webkit.org/b/125128>
Take care of a FIXME I added in r158097 and avoid redundant work in
ImageContentData::createRenderer().
I changed the inheritance helper RenderImage::setPseudoStyle() into
a new createStyleInheritingFromPseudoStyle() function instead so it
can be used from both PseudoElement and ImageContentData.
Reviewed by Antti Koivisto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 02:36:08 +0000 (02:36 +0000)]
Replace uses of WebKit::APIClient with API::Client
https://bugs.webkit.org/show_bug.cgi?id=125129
Reviewed by Andreas Kling.
* Shared/API/c/WKConnectionRef.cpp:
(WKConnectionSetConnectionClient):
* Shared/WebConnection.cpp:
(WebKit::WebConnection::initializeConnectionClient):
* Shared/WebConnection.h:
* Shared/WebConnectionClient.cpp:
(WebKit::WebConnectionClient::didReceiveMessage):
(WebKit::WebConnectionClient::didClose):
* Shared/WebConnectionClient.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextSetClient):
(WKContextSetInjectedBundleClient):
(WKContextSetHistoryClient):
(WKContextSetDownloadClient):
(WKContextSetConnectionClient):
* UIProcess/API/C/WKCookieManager.cpp:
(WKCookieManagerSetClient):
* UIProcess/API/C/WKDatabaseManager.cpp:
(WKDatabaseManagerSetClient):
* UIProcess/API/C/WKGeolocationManager.cpp:
(WKGeolocationManagerSetProvider):
* UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseSetIconDatabaseClient):
* UIProcess/API/C/WKNotificationManager.cpp:
(WKNotificationManagerSetProvider):
* UIProcess/API/C/WKOriginDataManager.cpp:
(WKOriginDataManagerSetChangeClient):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageContextMenuClient):
(WKPageSetPageFindClient):
(WKPageSetPageFindMatchesClient):
(WKPageSetPageFormClient):
(WKPageSetPagePolicyClient):
(WKPageSetPageUIClient):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(setUpPagePolicyClient):
* UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::initializeProvider):
* UIProcess/Notifications/WebNotificationManagerProxy.h:
* UIProcess/Notifications/WebNotificationProvider.cpp:
(WebKit::WebNotificationProvider::show):
(WebKit::WebNotificationProvider::cancel):
(WebKit::WebNotificationProvider::didDestroyNotification):
(WebKit::WebNotificationProvider::clearNotifications):
(WebKit::WebNotificationProvider::addNotificationManager):
(WebKit::WebNotificationProvider::removeNotificationManager):
(WebKit::WebNotificationProvider::notificationPermissions):
* UIProcess/Notifications/WebNotificationProvider.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::initializeClient):
(WebKit::WebContext::initializeInjectedBundleClient):
(WebKit::WebContext::initializeConnectionClient):
(WebKit::WebContext::initializeHistoryClient):
(WebKit::WebContext::initializeDownloadClient):
* UIProcess/WebContext.h:
* UIProcess/WebContextClient.cpp:
(WebKit::WebContextClient::plugInAutoStartOriginHashesChanged):
(WebKit::WebContextClient::networkProcessDidCrash):
(WebKit::WebContextClient::plugInInformationBecameAvailable):
* UIProcess/WebContextClient.h:
* UIProcess/WebContextConnectionClient.cpp:
(WebKit::WebContextConnectionClient::didCreateConnection):
* UIProcess/WebContextConnectionClient.h:
* UIProcess/WebContextInjectedBundleClient.cpp:
(WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):
(WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
(WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):
* UIProcess/WebContextInjectedBundleClient.h:
* UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::initializeClient):
* UIProcess/WebCookieManagerProxy.h:
* UIProcess/WebCookieManagerProxyClient.cpp:
(WebKit::WebCookieManagerProxyClient::cookiesDidChange):
* UIProcess/WebCookieManagerProxyClient.h:
* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::initializeClient):
* UIProcess/WebDatabaseManagerProxy.h:
* UIProcess/WebDatabaseManagerProxyClient.cpp:
(WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
(WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):
* UIProcess/WebDatabaseManagerProxyClient.h:
* UIProcess/WebDownloadClient.cpp:
(WebKit::WebDownloadClient::didStart):
(WebKit::WebDownloadClient::didReceiveAuthenticationChallenge):
(WebKit::WebDownloadClient::didReceiveResponse):
(WebKit::WebDownloadClient::didReceiveData):
(WebKit::WebDownloadClient::shouldDecodeSourceDataOfMIMEType):
(WebKit::WebDownloadClient::decideDestinationWithSuggestedFilename):
(WebKit::WebDownloadClient::didCreateDestination):
(WebKit::WebDownloadClient::didFinish):
(WebKit::WebDownloadClient::didFail):
(WebKit::WebDownloadClient::didCancel):
(WebKit::WebDownloadClient::processDidCrash):
* UIProcess/WebDownloadClient.h:
* UIProcess/WebFindClient.cpp:
(WebKit::WebFindClient::didFindString):
(WebKit::WebFindClient::didFailToFindString):
(WebKit::WebFindClient::didCountStringMatches):
(WebKit::WebFindMatchesClient::didFindStringMatches):
(WebKit::WebFindMatchesClient::didGetImageForMatchResult):
* UIProcess/WebFindClient.h:
* UIProcess/WebFormClient.cpp:
(WebKit::WebFormClient::willSubmitForm):
* UIProcess/WebFormClient.h:
* UIProcess/WebGeolocationManagerProxy.cpp:
(WebKit::WebGeolocationManagerProxy::initializeProvider):
* UIProcess/WebGeolocationManagerProxy.h:
* UIProcess/WebGeolocationProvider.cpp:
(WebKit::WebGeolocationProvider::startUpdating):
(WebKit::WebGeolocationProvider::stopUpdating):
(WebKit::WebGeolocationProvider::setEnableHighAccuracy):
* UIProcess/WebGeolocationProvider.h:
* UIProcess/WebHistoryClient.cpp:
(WebKit::WebHistoryClient::didNavigateWithNavigationData):
(WebKit::WebHistoryClient::didPerformClientRedirect):
(WebKit::WebHistoryClient::didPerformServerRedirect):
(WebKit::WebHistoryClient::didUpdateHistoryTitle):
(WebKit::WebHistoryClient::populateVisitedLinks):
* UIProcess/WebHistoryClient.h:
* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::initializeIconDatabaseClient):
* UIProcess/WebIconDatabase.h:
* UIProcess/WebIconDatabaseClient.cpp:
(WebKit::WebIconDatabaseClient::didChangeIconForPageURL):
(WebKit::WebIconDatabaseClient::didRemoveAllIcons):
(WebKit::WebIconDatabaseClient::iconDataReadyForPageURL):
* UIProcess/WebIconDatabaseClient.h:
* UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::createInspectorPage):
* UIProcess/WebLoaderClient.h:
* UIProcess/WebOriginDataManagerProxy.cpp:
(WebKit::WebOriginDataManagerProxy::setChangeClient):
* UIProcess/WebOriginDataManagerProxy.h:
* UIProcess/WebOriginDataManagerProxyChangeClient.cpp:
(WebKit::WebOriginDataManagerProxyChangeClient::didChange):
* UIProcess/WebOriginDataManagerProxyChangeClient.h:
* UIProcess/WebPageContextMenuClient.cpp:
(WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
(WebKit::WebPageContextMenuClient::customContextMenuItemSelected):
(WebKit::WebPageContextMenuClient::contextMenuDismissed):
(WebKit::WebPageContextMenuClient::showContextMenu):
(WebKit::WebPageContextMenuClient::hideContextMenu):
* UIProcess/WebPageContextMenuClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializePolicyClient):
(WebKit::WebPageProxy::initializeFormClient):
(WebKit::WebPageProxy::initializeUIClient):
(WebKit::WebPageProxy::initializeFindClient):
(WebKit::WebPageProxy::initializeFindMatchesClient):
(WebKit::WebPageProxy::initializeContextMenuClient):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPolicyClient.cpp:
(WebKit::WebPolicyClient::decidePolicyForNavigationAction):
(WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
(WebKit::WebPolicyClient::decidePolicyForResponse):
(WebKit::WebPolicyClient::unableToImplementPolicy):
* UIProcess/WebPolicyClient.h:
* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::createNewPage):
(WebKit::WebUIClient::showPage):
(WebKit::WebUIClient::close):
(WebKit::WebUIClient::takeFocus):
(WebKit::WebUIClient::focus):
(WebKit::WebUIClient::unfocus):
(WebKit::WebUIClient::runJavaScriptAlert):
(WebKit::WebUIClient::runJavaScriptConfirm):
(WebKit::WebUIClient::runJavaScriptPrompt):
(WebKit::WebUIClient::setStatusText):
(WebKit::WebUIClient::mouseDidMoveOverElement):
(WebKit::WebUIClient::unavailablePluginButtonClicked):
(WebKit::WebUIClient::didNotHandleKeyEvent):
(WebKit::WebUIClient::didNotHandleWheelEvent):
(WebKit::WebUIClient::toolbarsAreVisible):
(WebKit::WebUIClient::setToolbarsAreVisible):
(WebKit::WebUIClient::menuBarIsVisible):
(WebKit::WebUIClient::setMenuBarIsVisible):
(WebKit::WebUIClient::statusBarIsVisible):
(WebKit::WebUIClient::setStatusBarIsVisible):
(WebKit::WebUIClient::isResizable):
(WebKit::WebUIClient::setIsResizable):
(WebKit::WebUIClient::setWindowFrame):
(WebKit::WebUIClient::windowFrame):
(WebKit::WebUIClient::runBeforeUnloadConfirmPanel):
(WebKit::WebUIClient::didDraw):
(WebKit::WebUIClient::pageDidScroll):
(WebKit::WebUIClient::exceededDatabaseQuota):
(WebKit::WebUIClient::runOpenPanel):
(WebKit::WebUIClient::decidePolicyForGeolocationPermissionRequest):
(WebKit::WebUIClient::decidePolicyForNotificationPermissionRequest):
(WebKit::WebUIClient::headerHeight):
(WebKit::WebUIClient::footerHeight):
(WebKit::WebUIClient::drawHeader):
(WebKit::WebUIClient::drawFooter):
(WebKit::WebUIClient::printFrame):
(WebKit::WebUIClient::runModal):
(WebKit::WebUIClient::saveDataToFileInDownloadsFolder):
(WebKit::WebUIClient::shouldInterruptJavaScript):
(WebKit::WebUIClient::showColorPicker):
(WebKit::WebUIClient::hideColorPicker):
* UIProcess/WebUIClient.h:
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetClient):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetContextMenuClient):
(WKBundlePageSetEditorClient):
(WKBundlePageSetFormClient):
(WKBundlePageSetPageLoaderClient):
(WKBundlePageSetResourceLoadClient):
(WKBundlePageSetPolicyClient):
(WKBundlePageSetUIClient):
(WKBundlePageSetFullScreenClient):
(WKBundlePageSetDiagnosticLoggingClient):
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::initializeClient):
* WebProcess/InjectedBundle/InjectedBundle.h:
* WebProcess/InjectedBundle/InjectedBundleClient.cpp:
(WebKit::InjectedBundleClient::didCreatePage):
(WebKit::InjectedBundleClient::willDestroyPage):
(WebKit::InjectedBundleClient::didInitializePageGroup):
(WebKit::InjectedBundleClient::didReceiveMessage):
(WebKit::InjectedBundleClient::didReceiveMessageToPage):
* WebProcess/InjectedBundle/InjectedBundleClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
(WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
* WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
(WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):
* WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
(WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
(WebKit::InjectedBundlePageEditorClient::shouldEndEditing):
(WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
(WebKit::InjectedBundlePageEditorClient::shouldInsertText):
(WebKit::InjectedBundlePageEditorClient::shouldDeleteRange):
(WebKit::InjectedBundlePageEditorClient::shouldChangeSelectedRange):
(WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
(WebKit::InjectedBundlePageEditorClient::didBeginEditing):
(WebKit::InjectedBundlePageEditorClient::didEndEditing):
(WebKit::InjectedBundlePageEditorClient::didChange):
(WebKit::InjectedBundlePageEditorClient::didChangeSelection):
(WebKit::InjectedBundlePageEditorClient::willWriteToPasteboard):
(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
(WebKit::InjectedBundlePageEditorClient::didWriteToPasteboard):
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
(WebKit::InjectedBundlePageFormClient::didFocusTextField):
(WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
(WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
(WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField):
(WebKit::InjectedBundlePageFormClient::willSendSubmitEvent):
(WebKit::InjectedBundlePageFormClient::willSubmitForm):
(WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
(WebKit::InjectedBundlePageFormClient::shouldNotifyOnFormChanges):
* WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::willLoadURLRequest):
(WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):
(WebKit::InjectedBundlePageLoaderClient::shouldGoToBackForwardListItem):
(WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
(WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishProgress):
(WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
(WebKit::InjectedBundlePageLoaderClient::didSameDocumentNavigationForFrame):
(WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
(WebKit::InjectedBundlePageLoaderClient::didRemoveFrameFromHierarchy):
(WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
(WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
(WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFirstLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didLayout):
(WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
(WebKit::InjectedBundlePageLoaderClient::didCancelClientRedirectForFrame):
(WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
(WebKit::InjectedBundlePageLoaderClient::didHandleOnloadEventsForFrame):
(WebKit::InjectedBundlePageLoaderClient::globalObjectIsAvailableForFrame):
(WebKit::InjectedBundlePageLoaderClient::willDisconnectDOMWindowExtensionFromGlobalObject):
(WebKit::InjectedBundlePageLoaderClient::didReconnectDOMWindowExtensionToGlobalObject):
(WebKit::InjectedBundlePageLoaderClient::willDestroyGlobalObjectForDOMWindowExtension):
(WebKit::InjectedBundlePageLoaderClient::shouldForceUniversalAccessFromLocalURL):
(WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
(WebKit::InjectedBundlePageLoaderClient::willDestroyFrame):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
* WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
(WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy):
* WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
(WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::shouldCacheResponse):
(WebKit::InjectedBundlePageResourceLoadClient::shouldUseCredentialStorage):
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
(WebKit::InjectedBundlePageUIClient::willSetStatusbarText):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptAlert):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptConfirm):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptPrompt):
(WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
(WebKit::InjectedBundlePageUIClient::pageDidScroll):
(WebKit::InjectedBundlePageUIClient::shouldGenerateFileForUpload):
(WebKit::InjectedBundlePageUIClient::generateFileForUpload):
(WebKit::InjectedBundlePageUIClient::statusBarIsVisible):
(WebKit::InjectedBundlePageUIClient::menuBarIsVisible):
(WebKit::InjectedBundlePageUIClient::toolbarsAreVisible):
(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
(WebKit::InjectedBundlePageUIClient::plugInStartLabelTitle):
(WebKit::InjectedBundlePageUIClient::plugInStartLabelSubtitle):
(WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
(WebKit::InjectedBundlePageUIClient::plugInExtraScript):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::initializeInjectedBundleContextMenuClient):
(WebKit::WebPage::initializeInjectedBundleEditorClient):
(WebKit::WebPage::initializeInjectedBundleFormClient):
(WebKit::WebPage::initializeInjectedBundleLoaderClient):
(WebKit::WebPage::initializeInjectedBundlePolicyClient):
(WebKit::WebPage::initializeInjectedBundleResourceLoadClient):
(WebKit::WebPage::initializeInjectedBundleUIClient):
(WebKit::WebPage::initializeInjectedBundleFullScreenClient):
(WebKit::WebPage::initializeInjectedBundleDiagnosticLoggingClient):
* WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159988
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Tue, 3 Dec 2013 01:32:43 +0000 (01:32 +0000)]
Build failure when disabling JIT, YARR_JIT, and ASSEMBLER.
https://bugs.webkit.org/show_bug.cgi?id=123809.
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
Also fixed build when disabling the DISASSEMBLER.
Added some needed #if's and some comments.
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::finalizeCodeWithDisassembly):
* dfg/DFGDisassembler.cpp:
* dfg/DFGDisassembler.h:
(JSC::DFG::Disassembler::Disassembler):
(JSC::DFG::Disassembler::setStartOfCode):
(JSC::DFG::Disassembler::setForBlockIndex):
(JSC::DFG::Disassembler::setForNode):
(JSC::DFG::Disassembler::setEndOfMainPath):
(JSC::DFG::Disassembler::setEndOfCode):
(JSC::DFG::Disassembler::dump):
(JSC::DFG::Disassembler::reportToProfiler):
* disassembler/Disassembler.cpp:
* disassembler/X86Disassembler.cpp:
* jit/FPRInfo.h:
* jit/GPRInfo.h:
* jit/JITDisassembler.cpp:
* jit/JITDisassembler.h:
(JSC::JITDisassembler::JITDisassembler):
(JSC::JITDisassembler::setStartOfCode):
(JSC::JITDisassembler::setForBytecodeMainPath):
(JSC::JITDisassembler::setForBytecodeSlowPath):
(JSC::JITDisassembler::setEndOfSlowPath):
(JSC::JITDisassembler::setEndOfCode):
(JSC::JITDisassembler::dump):
(JSC::JITDisassembler::reportToProfiler):
Source/WTF:
* wtf/Platform.h:
- Ensure that the ASSEMBLER is enabled when the DISASSEMBLER is enabled.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Tue, 3 Dec 2013 01:27:06 +0000 (01:27 +0000)]
Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
https://bugs.webkit.org/show_bug.cgi?id=125110
Reviewed by Darin Adler.
FrameLoader::loadProgressingStatusChanged() might be called while the Frame has a null FrameView.
It’s unclear how to reproduce, but there’s no harm in a null check.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadProgressingStatusChanged):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Tue, 3 Dec 2013 01:12:51 +0000 (01:12 +0000)]
Merging some more iOS WebKit2 stuff.
https://bugs.webkit.org/show_bug.cgi?id=125119
Reviewed by Tim Horton.
* Shared/EditorState.h:
* Shared/NativeWebKeyboardEvent.h:
* Shared/NativeWebMouseEvent.h:
* Shared/NativeWebTouchEvent.h:
* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerTreePropertyApplier.mm:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
* UIProcess/PageClient.h:
* UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
* UIProcess/mac/SecItemShimProxy.messages.in:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 01:11:47 +0000 (01:11 +0000)]
Add versioned structs for the remaining clients
https://bugs.webkit.org/show_bug.cgi?id=125123
Reviewed by Andreas Kling.
* UIProcess/API/C/WKContext.h:
* UIProcess/API/C/WKContextConnectionClient.h:
* UIProcess/API/C/WKContextDownloadClient.h:
* UIProcess/API/C/WKContextHistoryClient.h:
* UIProcess/API/C/WKContextInjectedBundleClient.h:
* UIProcess/API/C/WKOriginDataManager.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 00:54:12 +0000 (00:54 +0000)]
Move WKContext clients to separate files
https://bugs.webkit.org/show_bug.cgi?id=125121
Reviewed by Andreas Kling.
* UIProcess/API/C/WKContext.h:
* UIProcess/API/C/WKContextConnectionClient.h: Added.
* UIProcess/API/C/WKContextDownloadClient.h: Added.
* UIProcess/API/C/WKContextHistoryClient.h: Added.
* UIProcess/API/C/WKContextInjectedBundleClient.h: Added.
* WebKit2.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 3 Dec 2013 00:43:27 +0000 (00:43 +0000)]
WebPageGroups should keep track of what processes they are being used by
https://bugs.webkit.org/show_bug.cgi?id=124556
Reviewed by Anders Carlsson.
* UIProcess/WebContextUserMessageCoders.h:
(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):
* UIProcess/WebPageGroup.cpp:
(WebKit::WebPageGroup::addProcess):
(WebKit::WebPageGroup::disconnectProcess):
* UIProcess/WebPageGroup.h:
(WebKit::WebPageGroup::sendToAllProcessesInGroup):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeWebPage):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::webPageGroup):
(WebKit::WebProcessProxy::addWebPageGroup):
* UIProcess/WebProcessProxy.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::webPageGroup):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 3 Dec 2013 00:40:33 +0000 (00:40 +0000)]
Add versioned structs for all clients except the ones in WKContext.h
https://bugs.webkit.org/show_bug.cgi?id=125120
Reviewed by Andreas Kling.
* Shared/API/c/WKConnectionRef.h:
* UIProcess/API/C/WKCookieManager.h:
* UIProcess/API/C/WKDatabaseManager.h:
* UIProcess/API/C/WKGeolocationManager.h:
* UIProcess/API/C/WKIconDatabase.h:
* UIProcess/API/C/WKNotificationProvider.h:
* UIProcess/API/C/WKPageContextMenuClient.h:
* UIProcess/API/C/WKPageFindClient.h:
* UIProcess/API/C/WKPageFindMatchesClient.h:
* UIProcess/API/C/WKPageFormClient.h:
* UIProcess/API/C/WKPageLoaderClient.h:
* UIProcess/API/C/WKPagePolicyClient.h:
* UIProcess/API/C/WKPageUIClient.h:
* WebProcess/InjectedBundle/API/c/WKBundle.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
* WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159981
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
samuel_white@apple.com [Tue, 3 Dec 2013 00:36:23 +0000 (00:36 +0000)]
AX: Add AXUIElementCountForSearchPredicate parameterized attribute.
https://bugs.webkit.org/show_bug.cgi?id=124561
Reviewed by Chris Fleizach.
Added test to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute
works as it should and updated existing test that has exposes this new attribute.
* platform/mac/accessibility/bounds-for-range-expected.txt:
* platform/mac/accessibility/search-predicate-element-count-expected.txt: Added.
* platform/mac/accessibility/search-predicate-element-count.html: Added.
Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
exist on a page, and then fetch them in chunks as needed.
Test: platform/mac/accessibility/search-predicate-element-count.html
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
(-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
Added function to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute works as it should.
* DumpRenderTree/AccessibilityUIElement.cpp:
(uiElementCountForSearchPredicateCallback):
(uiElementForSearchPredicateCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::uiElementCountForSearchPredicate):
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::uiElementCountForSearchPredicate):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(searchPredicateParameterizedAttributeForSearchCriteria):
(AccessibilityUIElement::uiElementCountForSearchPredicate):
(AccessibilityUIElement::uiElementForSearchPredicate):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::uiElementCountForSearchPredicate):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::searchPredicateParameterizedAttributeForSearchCriteria):
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159980
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bjonesbe@adobe.com [Tue, 3 Dec 2013 00:10:21 +0000 (00:10 +0000)]
[css shapes] Layout support for new circle shape syntax
https://bugs.webkit.org/show_bug.cgi?id=124619
Reviewed by Dirk Schulze.
Source/WebCore:
Implement support for doing layout with the new circle shape syntax,
inclduing basic animation support.
Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html
* css/BasicShapeFunctions.cpp:
(WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes
layout code and the clip path code.
* css/BasicShapeFunctions.h:
* css/CSSBasicShapes.cpp:
(WebCore::buildCircleString): Update to use appendLiteral, and remove
call to reserveCapacity - if we find that it's actually slow when
doing performance tests, we can hopefully do something smarter and
less ugly than that.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused
the radius keywords not to work properly.
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape): Convert new circle to a layout shape.
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShape::canBlend): Ignore circles with values that
cannot be interpolated.
(WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle
radius keywords to a float value.
(WebCore::BasicShapeCircle::path):
(WebCore::BasicShapeCircle::blend):
* rendering/style/BasicShapes.h:
(WebCore::BasicShapeCenterCoordinate::canBlend):
(WebCore::BasicShapeRadius::canBlend):
LayoutTests:
Add a few tests for the new circle syntax. The old tests in
LayoutTests/csswg will be removed when the old syntax is removed.
Also update existing shape-inside, animation, and clip-path tests to
test the new syntax.
* animations/resources/animation-test-helpers.js:
(parseBasicShape):
* LayoutTests/animations/resources/animation-test-helpers.js:
* LayoutTests/css3/masking/clip-path-animation-expected.txt:
* LayoutTests/css3/masking/clip-path-animation.html:
* LayoutTests/css3/masking/clip-path-circle-filter.html:
* LayoutTests/css3/masking/clip-path-circle-overflow-hidden.html:
* LayoutTests/css3/masking/clip-path-circle-overflow.html:
* LayoutTests/css3/masking/clip-path-circle-relative-overflow.html:
* LayoutTests/css3/masking/clip-path-circle.html:
* LayoutTests/css3/masking/clip-path-restore.html:
* LayoutTests/fast/shapes/parsing/parsing-shape-inside-expected.txt:
* LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt:
* LayoutTests/fast/shapes/parsing/parsing-test-utils.js:
* LayoutTests/fast/shapes/shape-inside/shape-inside-animation-expected.txt:
* LayoutTests/fast/shapes/shape-inside/shape-inside-animation.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt:
* LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-circle-padding.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-circle.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-dynamic-nested.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-empty-expected.html:
* LayoutTests/fast/shapes/shape-inside/shape-inside-empty.html:
* fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
* fast/shapes/shape-outside-floats/shape-outside-animation.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-000-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-001-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-002-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-003-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-004-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-005-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159979
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 2 Dec 2013 23:55:06 +0000 (23:55 +0000)]
Instead of a large 'if' block, each failure class should write it's own result in test_result_writer.py
https://bugs.webkit.org/show_bug.cgi?id=124714
Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-02
Reviewed by Ryosuke Niwa.
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(write_test_result):
* Scripts/webkitpy/layout_tests/models/test_failures.py:
(TestFailure.write_failure):
(FailureText):
(FailureText.write_failure):
(FailureAudio):
(FailureAudio.write_failure):
(FailureCrash.write_failure):
(FailureMissingResult):
(FailureTextMismatch):
(FailureMissingImageHash.write_failure):
(FailureMissingImage.write_failure):
(FailureImageHashMismatch.write_failure):
(FailureReftestMismatch.write_failure):
(FailureReftestMismatchDidNotOccur.write_failure):
(FailureMissingAudio):
(FailureAudioMismatch):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 2 Dec 2013 23:52:34 +0000 (23:52 +0000)]
Remove the stderr_write attribute from StyleProcessorConfiguration
https://bugs.webkit.org/show_bug.cgi?id=124703
Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-02
Reviewed by Ryosuke Niwa.
Remove the stderr_write attribute from this class in checker and
replace its use with calls to a logging module logger. We Should
use logging module instead of writing to stderr directly.
* Scripts/webkitpy/style/checker.py: Change stderr_write attribute to logging module logger.
(check_webkit_style_configuration):
(CheckerDispatcher.dispatch): Remove FIXME comment.
(StyleProcessorConfiguration):
(StyleProcessorConfiguration.__init__):
(StyleProcessorConfiguration.write_style_error):
* Scripts/webkitpy/style/checker_unittest.py: Update test to the modification.
There is an "ERROR" prefix in log messiges from now.
(StyleProcessorConfigurationTest):
(StyleProcessorConfigurationTest._style_checker_configuration):
(StyleProcessorConfigurationTest.test_init):
(StyleProcessorConfigurationTest.test_write_style_error_emacs):
(StyleProcessorConfigurationTest.test_write_style_error_vs7):
(StyleProcessor_EndToEndTest.with):
(StyleProcessor_EndToEndTest.test_init):
(StyleProcessor_EndToEndTest.test_process):
(StyleProcessor_CodeCoverageTest.setUp):
* Scripts/webkitpy/style/error_handlers.py: Remove stderr_write usage and replace with logging module logger.
(DefaultStyleErrorHandler.__call__):
* Scripts/webkitpy/style/error_handlers_unittest.py: Update test to the modification.
There is an "ERROR" prefix in log messiges from now.
(DefaultStyleErrorHandlerTest):
(DefaultStyleErrorHandlerTest.setUp):
(DefaultStyleErrorHandlerTest._mock_increment_error_count):
(DefaultStyleErrorHandlerTest._style_checker_configuration):
(DefaultStyleErrorHandlerTest._check_initialized):
(DefaultStyleErrorHandlerTest.test_non_reportable_error):
(DefaultStyleErrorHandlerTest.test_max_reports_per_category):
(DefaultStyleErrorHandlerTest.test_line_numbers):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159977
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 2 Dec 2013 23:48:35 +0000 (23:48 +0000)]
Split bundle page clients out into separate headers
https://bugs.webkit.org/show_bug.cgi?id=125115
Reviewed by Andreas Kling.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h: Added.
* WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159976
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 2 Dec 2013 23:43:01 +0000 (23:43 +0000)]
WebCrypto HMAC doesn't check key algorithm's hash
https://bugs.webkit.org/show_bug.cgi?id=125114
Reviewed by Anders Carlsson.
Source/WebCore:
Test: crypto/subtle/hmac-check-algorithm.html
* crypto/algorithms/CryptoAlgorithmHMAC.cpp:
(WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it.
LayoutTests:
* crypto/subtle/hmac-check-algorithm-expected.txt: Added.
* crypto/subtle/hmac-check-algorithm.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159975
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Mon, 2 Dec 2013 23:30:53 +0000 (23:30 +0000)]
Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
https://bugs.webkit.org/show_bug.cgi?id=125110
Reviewed by Darin Adler.
It’s possible to have a null m_originatingProgressFrame when the heartbeat timer fires.
On the surface this seems impossible because the only time m_originatingProgressFrame is cleared
out the heartbeat timer is also stopped.
But there’s likely still a race condition in multi-threaded environments.
There’s no harm in null-checking m_originatingProgressFrame before accessing its loader.
* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::progressHeartbeatTimerFired):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159974
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Mon, 2 Dec 2013 23:17:53 +0000 (23:17 +0000)]
Baseline JIT calls to CommonSlowPaths shouldn't restore the last result
https://bugs.webkit.org/show_bug.cgi?id=125107
Reviewed by Mark Hahnenberg.
Just killing dead code.
* jit/JITArithmetic.cpp:
(JSC::JIT::emitSlow_op_negate):
(JSC::JIT::emitSlow_op_lshift):
(JSC::JIT::emitSlow_op_rshift):
(JSC::JIT::emitSlow_op_urshift):
(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_inc):
(JSC::JIT::emitSlow_op_dec):
(JSC::JIT::emitSlow_op_mod):
(JSC::JIT::emit_op_mod):
(JSC::JIT::compileBinaryArithOpSlowCase):
(JSC::JIT::emitSlow_op_div):
* jit/JITArithmetic32_64.cpp:
(JSC::JIT::emitSlow_op_negate):
(JSC::JIT::emitSlow_op_lshift):
(JSC::JIT::emitRightShiftSlowCase):
(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitSlow_op_inc):
(JSC::JIT::emitSlow_op_dec):
(JSC::JIT::emitSlow_op_add):
(JSC::JIT::emitSlow_op_sub):
(JSC::JIT::emitSlow_op_mul):
(JSC::JIT::emitSlow_op_div):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_strcat):
(JSC::JIT::emitSlow_op_get_callee):
(JSC::JIT::emitSlow_op_create_this):
(JSC::JIT::emitSlow_op_to_this):
(JSC::JIT::emitSlow_op_to_primitive):
(JSC::JIT::emitSlow_op_not):
(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_stricteq):
(JSC::JIT::emitSlow_op_nstricteq):
(JSC::JIT::emitSlow_op_to_number):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emitSlow_op_to_primitive):
(JSC::JIT::emitSlow_op_not):
(JSC::JIT::emitSlow_op_stricteq):
(JSC::JIT::emitSlow_op_nstricteq):
(JSC::JIT::emitSlow_op_to_number):
(JSC::JIT::emitSlow_op_get_callee):
(JSC::JIT::emitSlow_op_create_this):
(JSC::JIT::emitSlow_op_to_this):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159973
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 2 Dec 2013 23:03:53 +0000 (23:03 +0000)]
[WK2] Improve readability of 'generate_message_handler' function
https://bugs.webkit.org/show_bug.cgi?id=125085
Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-02
Reviewed by Sam Weinig.
* Scripts/webkit2/messages.py:
(generate_message_handler):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159972
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 2 Dec 2013 22:59:05 +0000 (22:59 +0000)]
Nix Upstream: Updating Platform files
https://bugs.webkit.org/show_bug.cgi?id=124982
Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-02
Reviewed by Benjamin Poulain.
Adding new Platform files that are missing in the trunk.
* PlatformNix.cmake:
* nix/public/AudioDestinationConsumer.h: Added.
(Nix::AudioDestinationConsumer::~AudioDestinationConsumer):
* nix/public/MediaConstraints.h: Added.
* nix/public/MediaStream.h: Added.
* nix/public/MediaStreamAudioSource.h: Added.
* nix/public/MediaStreamCenter.h: Added.
* nix/public/MediaStreamSource.h: Added.
* nix/public/PrivatePtr.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159971
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Mon, 2 Dec 2013 22:56:01 +0000 (22:56 +0000)]
Add more CachedPage null checks
https://bugs.webkit.org/show_bug.cgi?id=125106
Reviewed by Sam Weinig.
Only some functions in PageCache.cpp null-check the CachedPages in HistoryItems.
Every part that manipulates the CachedPage should.
* history/PageCache.cpp:
(WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
(WebCore::PageCache::markPagesForFullStyleRecalc):
(WebCore::PageCache::markPagesForDeviceScaleChanged):
(WebCore::PageCache::markPagesForCaptionPreferencesChanged):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159970
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 2 Dec 2013 22:53:15 +0000 (22:53 +0000)]
Add JavaScript style checker and teach checker.py about .js files
https://bugs.webkit.org/show_bug.cgi?id=125049
Patch by Brian J. Burg <burg@cs.washington.edu> on 2013-12-02
Reviewed by Joseph Pecoraro.
Add a JavaScript file type, extension, and checker (JSChecker).
Use TextChecker for JavaScript tests, libraries, website resources,
etc. and use JSChecker for files within WebInspectorUI/UserInterface.
Amended tests for TextChecker to reflect the rule above.
* Scripts/webkitpy/style/checker.py:
(_all_categories): Add categories defined by JSChecker.
(FileType): Add file type for JS and re-number the enum.
(CheckerDispatcher._file_type): Detect .js files as JavaScript.
(CheckerDispatcher._create_checker):
Create a JSChecker or TextChecker depending on the file's path.
* Scripts/webkitpy/style/checker_unittest.py:
(CheckerDispatcherDispatchTest.assert_checker_js): Added.
(CheckerDispatcherDispatchTest.test_js_paths): Added.
(CheckerDispatcherDispatchTest.test_text_paths): Add new test paths
that end in .js but should be checked with TextChecker.
* Scripts/webkitpy/style/checkers/js.py: Added.
(JSChecker):
(JSChecker.__init__):
(JSChecker.check):
* Scripts/webkitpy/style/checkers/js_unittest.py: Added.
(JSTestCase):
(JSTestCase.assertNoError):
(JSTestCase.assertNoError.error_for_test):
(JSTestCase.assertError):
(JSTestCase.assertError.error_for_test):
(JSTestCase.test_no_error):
(JSTestCase.test_error):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159969
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Mon, 2 Dec 2013 22:48:54 +0000 (22:48 +0000)]
[CSS Shapes] Support inset parsing
https://bugs.webkit.org/show_bug.cgi?id=124903
Reviewed by David Hyatt.
Source/WebCore:
In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined
by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes).
Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside.
No new tests, I updated existing tests to cover the changes.
* css/BasicShapeFunctions.cpp:
(WebCore::valueForBasicShape): Add support for inset.
(WebCore::basicShapeForValue): Add support for inset.
* css/CSSBasicShapes.cpp:
(WebCore::buildInsetString): Create inset css string.
(WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string.
(WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles.
(WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved.
(WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references.
* css/CSSBasicShapes.h: Add inset class.
(WebCore::CSSBasicShapeInset::create):
(WebCore::CSSBasicShapeInset::top):
(WebCore::CSSBasicShapeInset::right):
(WebCore::CSSBasicShapeInset::bottom):
(WebCore::CSSBasicShapeInset::left):
(WebCore::CSSBasicShapeInset::topLeftRadius):
(WebCore::CSSBasicShapeInset::topRightRadius):
(WebCore::CSSBasicShapeInset::bottomRightRadius):
(WebCore::CSSBasicShapeInset::bottomLeftRadius):
(WebCore::CSSBasicShapeInset::setTop):
(WebCore::CSSBasicShapeInset::setRight):
(WebCore::CSSBasicShapeInset::setBottom):
(WebCore::CSSBasicShapeInset::setLeft):
(WebCore::CSSBasicShapeInset::setTopLeftRadius):
(WebCore::CSSBasicShapeInset::setTopRightRadius):
(WebCore::CSSBasicShapeInset::setBottomRightRadius):
(WebCore::CSSBasicShapeInset::setBottomLeftRadius):
(WebCore::CSSBasicShapeInset::CSSBasicShapeInset):
* css/CSSParser.cpp:
(WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius.
(WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners
(WebCore::CSSParser::parseBasicShapeInset): Parse inset.
(WebCore::CSSParser::parseBasicShape): Add call to parse inset.
* css/CSSParser.h:
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize.
(WebCore::CSSPrimitiveValue::init): Initialize LengthSize.
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize.
* css/CSSValuePool.h:
(WebCore::CSSValuePool::createValue): Add support for LengthSize.
* platform/LengthSize.h:
(WebCore::LengthSize::blend): Add blend for LengthSize.
* rendering/shapes/ShapeInsideInfo.cpp:
(WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now.
* rendering/style/BasicShapes.cpp:
(WebCore::BasicShapeInset::path): Calculate path for an inset.
(WebCore::BasicShapeInset::blend): Blend two insets.
* rendering/style/BasicShapes.h: Add higher level inset.
(WebCore::BasicShapeInset::create):
(WebCore::BasicShapeInset::top):
(WebCore::BasicShapeInset::right):
(WebCore::BasicShapeInset::bottom):
(WebCore::BasicShapeInset::left):
(WebCore::BasicShapeInset::topLeftRadius):
(WebCore::BasicShapeInset::topRightRadius):
(WebCore::BasicShapeInset::bottomRightRadius):
(WebCore::BasicShapeInset::bottomLeftRadius):
(WebCore::BasicShapeInset::setTop):
(WebCore::BasicShapeInset::setRight):
(WebCore::BasicShapeInset::setBottom):
(WebCore::BasicShapeInset::setLeft):
(WebCore::BasicShapeInset::setTopLeftRadius):
(WebCore::BasicShapeInset::setTopRightRadius):
(WebCore::BasicShapeInset::setBottomRightRadius):
(WebCore::BasicShapeInset::setBottomLeftRadius):
(WebCore::BasicShapeInset::BasicShapeInset):
LayoutTests:
* fast/shapes/parsing/parsing-shape-inside-expected.txt:
* fast/shapes/parsing/parsing-shape-lengths-expected.txt:
* fast/shapes/parsing/parsing-shape-lengths.html:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-test-utils.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159968
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 2 Dec 2013 22:42:34 +0000 (22:42 +0000)]
Remote Layer Tree: Support cloning layers
https://bugs.webkit.org/show_bug.cgi?id=124874
<rdar://problem/
15349468>
Reviewed by Simon Fraser.
We use PlatformCALayer::clone for CSS reflections, so implement it.
Also, since many reflections testcases also use masks,
working on this revealed that masks weren't working, because
we weren't flushing mask layers.
* Shared/mac/RemoteLayerTreePropertyApplier.mm:
(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
Rename maskLayer->maskLayerID since it's a LayerID.
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::commit):
Don't try to look up the layer if it's null.
* Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
Keep track of all properties that have ever been changed on a layer.
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::create):
(PlatformCALayerRemote::PlatformCALayerRemote):
(PlatformCALayerRemote::clone):
Copy all of the layer properties from the original to the clone,
and mark all properties that have ever been modified as
needing to be flushed to the UI process.
(PlatformCALayerRemote::recursiveBuildTransaction):
Flush our mask layer, if we have one.
(PlatformCALayerRemote::setMask):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
Store the mask layer we're given. Our owning GraphicsLayer will
hold on to it for us.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159967
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 2 Dec 2013 22:36:07 +0000 (22:36 +0000)]
Support WebCrypto AES-KW
https://bugs.webkit.org/show_bug.cgi?id=125105
Reviewed by Sam Weinig.
Source/WebCore:
Tests: crypto/subtle/aes-kw-key-manipulation.html
crypto/subtle/aes-kw-wrap-unwrap-aes.html
* WebCore.xcodeproj/project.pbxproj: Added new files.
* crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW.
It's not standardized yet, but there appears to be a consensus that it will be specified.
* bindings/js/JSCryptoAlgorithmDictionary.cpp:
(WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
Added AES-KW cases everywhere.
* bindings/js/JSCryptoKeySerializationJWK.cpp:
(WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
(WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
Support importing/exporting AES-KW keys in JWK.
* bindings/js/JSSubtleCryptoCustom.cpp:
(WebCore::JSSubtleCrypto::importKey):
(WebCore::JSSubtleCrypto::exportKey):
(WebCore::JSSubtleCrypto::wrapKey):
(WebCore::JSSubtleCrypto::unwrapKey):
Added some accidentally forgotten std::moves.
* crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added.
* crypto/algorithms/CryptoAlgorithmAES_KW.h: Added.
* crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added.
* crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW
as valid algorithm for AES keys.
* crypto/mac/CryptoAlgorithmRegistryMac.cpp:
(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW.
LayoutTests:
* crypto/subtle/aes-kw-key-manipulation-expected.txt: Added.
* crypto/subtle/aes-kw-key-manipulation.html: Added.
* crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt: Added.
* crypto/subtle/aes-kw-wrap-unwrap-aes.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159966
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 2 Dec 2013 22:35:51 +0000 (22:35 +0000)]
WKPageLoaderClient should be versioned
https://bugs.webkit.org/show_bug.cgi?id=125104
Reviewed by Sam Weinig.
Add multiple versions of the WKPageLoaderClient struct. In a subsequent patch,
WKPageLoaderClient and kWKPageLoaderClientCurrentVersion will be deprecated. Instead,
users of the API are supposed to explicitly choose a version and a versioned struct.
* Shared/APIClient.h:
Add a new API::Client class with a new ClientTraits template that uses std::tuple for versions.
* Shared/APIClientTraits.cpp:
* Shared/APIClientTraits.h:
Remove WKPageLoaderClient interface sizes.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageLoaderClient):
Add an explicit cast to WKPageLoaderClientBase. In an upcoming patch, WKPageSetPageLoaderClient
will be changed to take a WKPageLoaderClientBase instead.
* UIProcess/API/C/WKPageLoaderClient.h:
Add new versions.
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(setUpPageLoaderClient):
Use an explicit version.
* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::didStartProvisionalLoadForFrame):
(WebKit::WebLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
(WebKit::WebLoaderClient::didCommitLoadForFrame):
(WebKit::WebLoaderClient::didFinishDocumentLoadForFrame):
(WebKit::WebLoaderClient::didFinishLoadForFrame):
(WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
(WebKit::WebLoaderClient::didSameDocumentNavigationForFrame):
(WebKit::WebLoaderClient::didReceiveTitleForFrame):
(WebKit::WebLoaderClient::didFirstLayoutForFrame):
(WebKit::WebLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
(WebKit::WebLoaderClient::didLayout):
(WebKit::WebLoaderClient::didRemoveFrameFromHierarchy):
(WebKit::WebLoaderClient::didDisplayInsecureContentForFrame):
(WebKit::WebLoaderClient::didRunInsecureContentForFrame):
(WebKit::WebLoaderClient::didDetectXSSForFrame):
(WebKit::WebLoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
(WebKit::WebLoaderClient::didReceiveAuthenticationChallengeInFrame):
(WebKit::WebLoaderClient::didStartProgress):
(WebKit::WebLoaderClient::didChangeProgress):
(WebKit::WebLoaderClient::didFinishProgress):
(WebKit::WebLoaderClient::processDidBecomeUnresponsive):
(WebKit::WebLoaderClient::interactionOccurredWhileProcessUnresponsive):
(WebKit::WebLoaderClient::processDidBecomeResponsive):
(WebKit::WebLoaderClient::processDidCrash):
(WebKit::WebLoaderClient::didChangeBackForwardList):
(WebKit::WebLoaderClient::shouldGoToBackForwardListItem):
(WebKit::WebLoaderClient::willGoToBackForwardListItem):
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
Go through client.base everywhere.
* UIProcess/WebLoaderClient.h:
Add API::ClientTraits specialization. Change WebLoaderClient to derive from API::Client<WKPageLoaderClientBase>.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeLoaderClient):
This now takes a WKPageLoaderClientBase*.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@159965
268f45cc-cd09-0410-ab3c-
d52691b4dbfc