vsevik@chromium.org [Fri, 6 Jul 2012 12:14:24 +0000 (12:14 +0000)]
Web Inspector: Implement snippets removing.
https://bugs.webkit.org/show_bug.cgi?id=90674
Reviewed by Pavel Feldman.
* inspector/front-end/NavigatorView.js:
(WebInspector.NavigatorView.prototype.rename.afterEditing):
* inspector/front-end/ScriptsNavigator.js:
(WebInspector.ScriptsNavigator.prototype.removeUISourceCode):
(WebInspector.SnippetsNavigatorView.prototype._handleRemoveSnippet):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._addUISourceCode):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._revealExecutionLine):
* inspector/front-end/TabbedEditorContainer.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121955
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Fri, 6 Jul 2012 12:02:37 +0000 (12:02 +0000)]
Unreviewed GTK gardening, adding a test expectation for a failing
http multipart test after r121912.
* platform/gtk/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121954
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Fri, 6 Jul 2012 11:45:36 +0000 (11:45 +0000)]
Not reviewed: fix inspector front-end compilation.
* inspector/front-end/ElementsTreeOutline.js:
* inspector/front-end/SearchController.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121953
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yurys@chromium.org [Fri, 6 Jul 2012 11:25:28 +0000 (11:25 +0000)]
Web Inspector: add memory reporting routine to Document
https://bugs.webkit.org/show_bug.cgi?id=90668
Reviewed by Pavel Feldman.
Added methods for reporting HashSet, ListHashSet and Vector memory
footprint. Made Document report its size along with its internal
collections sizes.
* dom/Document.cpp:
(WebCore::Document::reportMemoryUsage):
(WebCore):
* dom/Document.h:
(Document):
* dom/MemoryInstrumentation.h:
(MemoryInstrumentation):
(MemoryObjectInfo):
(WebCore::MemoryObjectInfo::reportHashMap):
(WebCore::MemoryObjectInfo::reportHashSet):
(WebCore::MemoryObjectInfo::reportListHashSet):
(WebCore::MemoryObjectInfo::reportVector):
(WebCore::MemoryObjectInfo::memoryInstrumentation):
(WebCore::MemoryInstrumentation::reportHashMap):
(WebCore):
(WebCore::MemoryInstrumentation::reportHashSet):
(WebCore::MemoryInstrumentation::reportListHashSet):
(WebCore::MemoryInstrumentation::reportVector):
* inspector/InspectorMemoryAgent.cpp:
(WebCore):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121952
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rgabor@webkit.org [Fri, 6 Jul 2012 10:05:07 +0000 (10:05 +0000)]
Fixing defines for NEON intrinsics.
https://bugs.webkit.org/show_bug.cgi?id=90666
Reviewed by Zoltan Herczeg.
Existing tests cover this issue.
* platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::platformApplyGeneric):
* platform/graphics/filters/arm/FEGaussianBlurNEON.h:
* platform/graphics/filters/arm/NEONHelpers.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121951
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
toyoshim@chromium.org [Fri, 6 Jul 2012 10:04:56 +0000 (10:04 +0000)]
[Inspector][WebSocket][NRWT] layout tests which requires websocket server must be in a websocket subdirectory.
https://bugs.webkit.org/show_bug.cgi?id=90524
Reviewed by Pavel Feldman.
* http/tests/inspector/websocket/web-socket-frame-expected.txt: Renamed from LayoutTests/http/tests/inspector/web-socket-frame-expected.txt.
* http/tests/inspector/websocket/web-socket-frame.html: Renamed from LayoutTests/http/tests/inspector/web-socket-frame.html.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121950
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Fri, 6 Jul 2012 09:46:35 +0000 (09:46 +0000)]
Web Inspector: Workspace should dispatch WorkspaceReset event on navigation.
https://bugs.webkit.org/show_bug.cgi?id=90616
Reviewed by Pavel Feldman.
Source/WebCore:
Workspace UISourceCodeProviders are now reset on navigation.
UISourceCodeRemoved event is not dispatched from UISourceCodeProviders on reset (page navigation) anymore.
* inspector/front-end/CompilerScriptMapping.js:
(WebInspector.CompilerScriptMapping.prototype.reset):
* inspector/front-end/DebuggerScriptMapping.js:
(WebInspector.DebuggerScriptMapping):
* inspector/front-end/ResourceScriptMapping.js:
(WebInspector.ResourceScriptMapping.prototype._uiSourceCodeRemoved):
* inspector/front-end/ScriptSnippetModel.js:
(WebInspector.ScriptSnippetModel.prototype._reset):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._loadUISourceCodes):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
(WebInspector.ScriptsPanel.prototype._toggleFormatSource):
(WebInspector.ScriptsPanel.prototype.showGoToSourceDialog):
* inspector/front-end/StylesPanel.js:
(WebInspector.StylesUISourceCodeProvider):
(WebInspector.StylesUISourceCodeProvider.prototype.reset):
* inspector/front-end/Workspace.js:
(WebInspector.CompositeUISourceCodeProvider.prototype.uiSourceCodeProviders):
(WebInspector.Workspace):
(WebInspector.Workspace.prototype.registerUISourceCodeProvider):
(WebInspector.Workspace.prototype._reset):
LayoutTests:
* http/tests/inspector/debugger-test.js:
(initialize_DebuggerTest):
* inspector/debugger/linkifier.html:
* inspector/debugger/scripts-panel.html:
* inspector/styles/edit-inspector-stylesheet.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121949
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zherczeg@webkit.org [Fri, 6 Jul 2012 08:42:29 +0000 (08:42 +0000)]
[Qt][ARM] REGRESSION(r121885): It broke 30 jsc tests, 500+ layout tests
https://bugs.webkit.org/show_bug.cgi?id=90656
Reviewed by Csaba Osztrogonác.
Typo fixes.
* assembler/MacroAssemblerARM.cpp:
(JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
Rename getOp2Byte() -> getOp2Half()
* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::convertibleLoadPtr):
Add a necessary space.
* jit/JITStubs.cpp:
(JSC):
Revert INLINE_ARM_FUNCTION macro.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121948
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 07:17:22 +0000 (07:17 +0000)]
[EFL] Add Web Inspector to WebKit-EFL
https://bugs.webkit.org/show_bug.cgi?id=83865
Patch by Seokju Kwon <seokju.kwon@samsung.com> on 2012-07-06
Reviewed by Pavel Feldman.
Source/WebKit:
EFL port implementation for Web Inspector.
Prepare Web Inspector resources.
* PlatformEfl.cmake:
Source/WebKit/efl:
EFL port implementation for Web Inspector.
Implementation of InspectorClientEfl and InspectorFrontendClientEfl
for using the Web Inspector in WebKit-EFL with new EWK APIs.
* WebCoreSupport/InspectorClientEfl.cpp:
(WebCore::notifyWebInspectorDestroy):
(WebCore):
(InspectorFrontendSettingsEfl):
(WebCore::InspectorFrontendSettingsEfl::getProperty):
(WebCore::InspectorFrontendSettingsEfl::setProperty):
(WebCore::InspectorClientEfl::InspectorClientEfl):
(WebCore::InspectorClientEfl::~InspectorClientEfl):
(WebCore::InspectorClientEfl::inspectorDestroyed):
(WebCore::InspectorClientEfl::openInspectorFrontend):
(WebCore::InspectorClientEfl::closeInspectorFrontend):
(WebCore::InspectorClientEfl::bringFrontendToFront):
(WebCore::InspectorClientEfl::sendMessageToFrontend):
(WebCore::InspectorClientEfl::releaseFrontendPage):
(WebCore::InspectorClientEfl::inspectorFilesPath):
(WebCore::InspectorFrontendClientEfl::InspectorFrontendClientEfl):
(WebCore::InspectorFrontendClientEfl::~InspectorFrontendClientEfl):
(WebCore::InspectorFrontendClientEfl::localizedStringsURL):
(WebCore::InspectorFrontendClientEfl::hiddenPanels):
(WebCore::InspectorFrontendClientEfl::bringToFront):
(WebCore::InspectorFrontendClientEfl::closeWindow):
(WebCore::InspectorFrontendClientEfl::inspectedURLChanged):
(WebCore::InspectorFrontendClientEfl::attachWindow):
(WebCore::InspectorFrontendClientEfl::detachWindow):
(WebCore::InspectorFrontendClientEfl::setAttachedWindowHeight):
(WebCore::InspectorFrontendClientEfl::destroyInspectorWindow):
* WebCoreSupport/InspectorClientEfl.h:
(WebCore):
(InspectorClientEfl):
(InspectorFrontendClientEfl):
(WebCore::InspectorFrontendClientEfl::disconnectInspectorClient):
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_web_inspector_show):
(ewk_view_web_inspector_close):
(ewk_view_web_inspector_view_get):
(ewk_view_web_inspector_view_set):
* ewk/ewk_view.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121947
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Fri, 6 Jul 2012 07:01:35 +0000 (07:01 +0000)]
REGRESSION(r121925): It broke 5 sputnik tests on x86 platforms
https://bugs.webkit.org/show_bug.cgi?id=90658
Reviewed by Zoltan Herczeg.
Under the new object model, out-of-line property accesses such as those
in ResolveGlobal must account for the fact that the offset to the Kth
property is represented by K + inlineStorageCapacity. Hence, the property
loads in ResolveGlobal must have an additional -inlineStorageCapacity *
sizeof(JSValue) offset.
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121946
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 06:27:30 +0000 (06:27 +0000)]
[GTK] Showing the context menu in the Web Inspector can crash the browser
https://bugs.webkit.org/show_bug.cgi?id=88800
Patch by Arnaud Renevier <arno@renevier.net> on 2012-07-05
Reviewed by Carlos Garcia Campos.
Remove ContextMenuItem from its parent before appending it again to a
new parent
No new tests, behavior is unchanged.
* platform/gtk/ContextMenuGtk.cpp:
(WebCore::ContextMenu::appendItem):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121945
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 06:07:52 +0000 (06:07 +0000)]
[WK2][EFL] Ewk_View needs to report load status changes
https://bugs.webkit.org/show_bug.cgi?id=90566
Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Add new "load,finished", "load,provisional,failed",
"load,provisional,redirect" and "load,provisional,started"
signals on the Ewk_View to notify the client of different
load state changes.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_load_finished):
(ewk_view_load_provisional_failed):
(ewk_view_load_provisional_redirect):
(ewk_view_load_provisional_started):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/ewk_view_loader_client.cpp:
(didFinishLoadForFrame):
(didFailLoadWithErrorForFrame):
(didStartProvisionalLoadForFrame):
(didReceiveServerRedirectForProvisionalLoadForFrame):
(didFailProvisionalLoadWithErrorForFrame):
(ewk_view_loader_client_attach):
* UIProcess/API/efl/ewk_view_private.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121944
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 6 Jul 2012 04:52:26 +0000 (04:52 +0000)]
[Qt] Unreviewed 64 bit buildfix after r121925.
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121943
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 04:31:26 +0000 (04:31 +0000)]
[Qt] Transform should be applied to the clip rect in QRawWebView::paint
https://bugs.webkit.org/show_bug.cgi?id=90652
Patch by Luiz Agostini <luiz.agostini@nokia.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Applying the transformation matrix to the clip rect in QRawWebView::paint.
* UIProcess/API/qt/raw/qrawwebview.cpp:
(QRawWebView::paint):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121942
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jason.liu@torchmobile.com.cn [Fri, 6 Jul 2012 04:25:11 +0000 (04:25 +0000)]
Add Jason Liu to committers.py.
https://bugs.webkit.org/show_bug.cgi?id=90654
Unreviewed.
* Scripts/webkitpy/common/config/committers.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121941
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Fri, 6 Jul 2012 04:09:40 +0000 (04:09 +0000)]
Unreviewed Chromium gardening. Roll Chromium DEPS
* DEPS: 145501 => 145569
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121940
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Fri, 6 Jul 2012 03:57:04 +0000 (03:57 +0000)]
Unreviewed Chromium gardening - Rebaseline for r121917.
* platform/chromium-linux/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Removed.
* platform/chromium-linux/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt: Removed.
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
* platform/chromium-mac/fast/html/details-marker-style-expected.png:
* platform/chromium-mac/fast/html/details-marker-style-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
* platform/chromium-win/fast/html/details-marker-style-expected.png:
* platform/chromium-win/fast/html/details-marker-style-expected.txt:
* platform/chromium-win/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/chromium-win/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
* platform/chromium-win/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121939
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 03:47:27 +0000 (03:47 +0000)]
[EFL] Unreviewed, Fix build break when WEB_AUDIO is enabled.
https://bugs.webkit.org/show_bug.cgi?id=90653
Unreviewed build fix.
A new file, AudioFIFO.cpp, is added for the Web Audio fearure.
This file should be included into the CMakeLists.txt file.
Patch by Dongwoo Im <dw.im@samsung.com> on 2012-07-05
* CMakeLists.txt: Add the newly created file into the CMakeLists.txt
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121938
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Fri, 6 Jul 2012 03:33:47 +0000 (03:33 +0000)]
Unreviewed Chromium gardening - Disable WebAnimationTest for Linux and Windows.
https://bugs.webkit.org/show_bug.cgi?id=90651
* tests/WebAnimationTest.cpp:
(WebKit):
(WebKit::TEST):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121937
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 02:50:57 +0000 (02:50 +0000)]
Multiple Content Security Policy headers are correctly processed as separate headers.
https://bugs.webkit.org/show_bug.cgi?id=90629
Source/WebCore:
Headers of the same name are normalized into a single, comma-separated
string as per RFC2616, section 4.2. We didn't correctly account for this
in ContentSecurityPolicy::didReceiveHeader. Now we do by walking through
the header string, looking for commas and processing each block in turn.
This oversight bit Firefox as well, and was patched in February:
https://bugzilla.mozilla.org/show_bug.cgi?id=717511
Patch by Mike West <mkwst@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
Test: http/tests/security/contentSecurityPolicy/directive-parsing-multiple-headers.html
* page/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::didReceiveHeader):
LayoutTests:
Patch by Mike West <mkwst@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
* http/tests/security/contentSecurityPolicy/directive-parsing-multiple-headers-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/directive-parsing-multiple-headers.html: Added.
* http/tests/security/contentSecurityPolicy/resources/echo-multiple-headers.pl: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121936
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Fri, 6 Jul 2012 01:55:14 +0000 (01:55 +0000)]
Unreviewed, skipping failing tests.
* platform/mac/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121935
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 01:47:55 +0000 (01:47 +0000)]
[WK2][EFL] Ewk_View should provide API to set/get device pixel ratio
https://bugs.webkit.org/show_bug.cgi?id=90590
Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Add API to Ewk_View so retrieve and set the device
pixel ratio.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_device_pixel_ratio_set):
(ewk_view_device_pixel_ratio_get):
* UIProcess/API/efl/ewk_view.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121934
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 6 Jul 2012 01:27:35 +0000 (01:27 +0000)]
Unreviewed, rolling out r121921.
http://trac.webkit.org/changeset/121921
https://bugs.webkit.org/show_bug.cgi?id=90648
caused hundreds of crashes on Mac (Requested by pizlo on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-05
Source/WebCore:
* editing/SurroundingText.cpp:
(WebCore::SurroundingText::SurroundingText):
* editing/TextIterator.cpp:
(WebCore::CharacterIterator::advance):
(WebCore::BackwardsCharacterIterator::advance):
LayoutTests:
* platform/chromium/editing/surrounding-text/surrounding-text-expected.txt:
* platform/chromium/editing/surrounding-text/surrounding-text.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121933
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 6 Jul 2012 01:24:38 +0000 (01:24 +0000)]
Type-ahead doesn't work in options inside optgroups
https://bugs.webkit.org/show_bug.cgi?id=90647
<rdar://problem/5604894>
Reviewed by Dan Bernstein.
Set the title of the menu item to a string that doesn't contain any leading or trailing whitespace.
Source/WebCore:
* platform/mac/PopupMenuMac.mm:
(WebCore::PopupMenuMac::populate):
Source/WebKit2:
* UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::populate):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121932
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
charles.wei@torchmobile.com.cn [Fri, 6 Jul 2012 01:05:46 +0000 (01:05 +0000)]
[BlackBerry] Fix the build error introduced by enabling CUSTOM_THEME_HANDLER
https://bugs.webkit.org/show_bug.cgi?id=90588
Reviewed by Rob Buis.
Fix the build error introduced by enabling CUSTOM_THEME_HANDLER.
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::isProtocolHandlerRegistered):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121931
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Fri, 6 Jul 2012 00:26:39 +0000 (00:26 +0000)]
t/fuzzer-mouse-crash
<patch description>
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121930
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Fri, 6 Jul 2012 00:20:44 +0000 (00:20 +0000)]
Double release of resources if the load is canceled in a callback of ResourceLoader::didFinishLoading
https://bugs.webkit.org/show_bug.cgi?id=90431
Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-07-05
Reviewed by Anders Carlsson.
Source/WebCore:
In ResourceLoader::didFinishLoadingOnePart(), we invoke didFinishLoad() on the WebKit client. If WebKit
causes the current frame to cancel the load synchronously, the resources are already freed when
ResourceLoader::didFinishLoadingOnePart() ends.
When ResourceLoader::didFinishLoading() subsequently invokes releaseResources(), we are releasing the
resources a second time.
This patch add a second check for cancellation after invoking ResourceLoader::didFinishLoadingOnePart() to
avoid such issues.
The previous check at the beginning of ResourceLoader::didFinishLoading() has been removed because it is
redundant with ResourceLoader::didFinishLoadingOnePart().
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::didFinishLoading):
(WebCore::ResourceLoader::didFinishLoadingOnePart):
Tools:
Add a Mac API test.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/CancelLoadFromResourceLoadDelegate.html: Added.
* TestWebKitAPI/Tests/mac/CancelLoadFromResourceLoadDelegate.mm: Added.
(-[CancelLoadFromResourceLoadDelegate webView:resource:didFinishLoadingFromDataSource:]):
(-[CancelLoadFromResourceLoadDelegateFrameLoadDelegate webView:didFinishLoadForFrame:]):
(TestWebKitAPI):
(TestWebKitAPI::TEST):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121929
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Fri, 6 Jul 2012 00:04:05 +0000 (00:04 +0000)]
JSString::tryHashConstLock() fails to get exclusive lock
https://bugs.webkit.org/show_bug.cgi?id=90639
Reviewed by Oliver Hunt.
Added check that the string is already locked even before compare and swap.
* heap/MarkStack.cpp:
(JSC::JSString::tryHashConstLock):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121928
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 5 Jul 2012 23:31:00 +0000 (23:31 +0000)]
INLINE_ARM_FUNCTION(thingy) should make thingy be thumb2 if we're using thumb2
https://bugs.webkit.org/show_bug.cgi?id=90644
Reviewed by Mark Hahnenberg.
Fix breakage introduced in http://trac.webkit.org/changeset/121885
* wtf/InlineASM.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121927
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Thu, 5 Jul 2012 23:14:29 +0000 (23:14 +0000)]
Add a utility method for hasOverflowClip() or hasClip()
https://bugs.webkit.org/show_bug.cgi?id=90635
Reviewed by Dean Jackson.
Add RenderObject::hasClipOrOverflowClip() as a convenience method
since we end up calling hasOverfFlowClip() || hasClip() a lot in the layer code.
No new tests; refactoring only.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::calculateRects):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::enclosingNonStackingClippingLayer):
(WebCore::RenderLayerCompositor::clipsCompositingDescendants):
* rendering/RenderObject.h:
(WebCore::RenderObject::hasClipOrOverflowClip):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121926
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 5 Jul 2012 22:55:51 +0000 (22:55 +0000)]
Inline property storage should not be wasted when it is exhausted
https://bugs.webkit.org/show_bug.cgi?id=90347
Reviewed by Gavin Barraclough.
Previously, if we switched an object from using inline storage to out-of-line
storage, we would abandon the inline storage. This would have two main implications:
(i) all accesses to the object, even for properties that were previously in inline
storage, must now take an extra indirection; and (ii) we waste a non-trivial amount
of space since we must allocate additional out-of-line storage to hold properties
that would have fit in the inline storage. There's also the copying cost when
switching to out-of-line storage - we must copy all inline properties into ouf-of-line
storage.
This patch changes the way that object property storage works so that we can use both
inline and out-of-line storage concurrently. This is accomplished by introducing a
new notion of property offset. This PropertyOffset is a 32-bit signed integer and it
behaves as follows:
offset == -1: invalid offset, indicating a property that does not exist.
0 <= offset <= inlineStorageCapacity: offset into inline storage.
inlineStorageCapacity < offset: offset into out-of-line storage.
Because non-final objects don't have inline storage, the only valid PropertyOffsets
for those objects' properties are -1 or > inlineStorageCapacity.
This now means that the decision to use inline or out-of-line storage for an access is
made based on the offset, rather than the structure. It also means that any access
where the offset is a variable must have an extra branch, unless the type of the
object is also known (if it's known to be a non-final object then we can just assert
that the offset is >= inlineStorageCapacity).
This looks like a big Kraken speed-up and a slight V8 speed-up.
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/ARMv7Assembler.h:
(ARMv7Assembler):
(JSC::ARMv7Assembler::ldrWide8BitImmediate):
(JSC::ARMv7Assembler::replaceWithLoad):
(JSC::ARMv7Assembler::replaceWithAddressComputation):
* assembler/AbstractMacroAssembler.h:
(AbstractMacroAssembler):
(ConvertibleLoadLabel):
(JSC::AbstractMacroAssembler::ConvertibleLoadLabel::ConvertibleLoadLabel):
(JSC::AbstractMacroAssembler::ConvertibleLoadLabel::isSet):
(JSC::AbstractMacroAssembler::labelIgnoringWatchpoints):
(JSC::AbstractMacroAssembler::replaceWithLoad):
(JSC::AbstractMacroAssembler::replaceWithAddressComputation):
* assembler/CodeLocation.h:
(JSC):
(CodeLocationCommon):
(CodeLocationConvertibleLoad):
(JSC::CodeLocationConvertibleLoad::CodeLocationConvertibleLoad):
(JSC::CodeLocationCommon::convertibleLoadAtOffset):
* assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::finalizeCodeWithDisassembly):
* assembler/LinkBuffer.h:
(LinkBuffer):
(JSC::LinkBuffer::locationOf):
* assembler/MacroAssemblerARMv7.h:
(MacroAssemblerARMv7):
(JSC::MacroAssemblerARMv7::convertibleLoadPtr):
* assembler/MacroAssemblerX86.h:
(JSC::MacroAssemblerX86::convertibleLoadPtr):
(MacroAssemblerX86):
* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::convertibleLoadPtr):
(MacroAssemblerX86_64):
* assembler/RepatchBuffer.h:
(RepatchBuffer):
(JSC::RepatchBuffer::replaceWithLoad):
(JSC::RepatchBuffer::replaceWithAddressComputation):
(JSC::RepatchBuffer::setLoadInstructionIsActive):
* assembler/X86Assembler.h:
(JSC::X86Assembler::replaceWithLoad):
(X86Assembler):
(JSC::X86Assembler::replaceWithAddressComputation):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::dump):
(JSC::CodeBlock::finalizeUnconditionally):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeForChain):
(JSC::GetByIdStatus::computeFor):
* bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::offset):
(GetByIdStatus):
* bytecode/Opcode.h:
(JSC):
(JSC::padOpcodeName):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
(JSC::PutByIdStatus::computeFor):
* bytecode/PutByIdStatus.h:
(JSC::PutByIdStatus::PutByIdStatus):
(JSC::PutByIdStatus::offset):
(PutByIdStatus):
* bytecode/ResolveGlobalStatus.cpp:
(JSC):
(JSC::computeForStructure):
* bytecode/ResolveGlobalStatus.h:
(JSC::ResolveGlobalStatus::ResolveGlobalStatus):
(JSC::ResolveGlobalStatus::offset):
(ResolveGlobalStatus):
* bytecode/StructureSet.h:
(StructureSet):
* bytecode/StructureStubInfo.h:
* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::PropertyAccessRecord::PropertyAccessRecord):
(PropertyAccessRecord):
* dfg/DFGRepatch.cpp:
(JSC::DFG::dfgRepatchByIdSelfAccess):
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryBuildGetByIDProtoList):
(JSC::DFG::emitPutReplaceStub):
(JSC::DFG::emitPutTransitionStub):
(JSC::DFG::tryCachePutByID):
(JSC::DFG::tryBuildPutByIdList):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* heap/MarkStack.cpp:
(JSC::visitChildren):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::tryCacheGetByID):
(JSC::Interpreter::privateExecute):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::PropertyStubCompilationInfo::copyToStubInfo):
* jit/JIT.h:
(JSC::PropertyStubCompilationInfo::PropertyStubCompilationInfo):
(JSC::JIT::compileGetByIdProto):
(JSC::JIT::compileGetByIdSelfList):
(JSC::JIT::compileGetByIdProtoList):
(JSC::JIT::compileGetByIdChainList):
(JSC::JIT::compileGetByIdChain):
(JSC::JIT::compilePutByIdTransition):
(JIT):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_resolve_global):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_resolve_global):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::patchGetByIdSelf):
(JSC::JIT::patchPutByIdReplace):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::patchGetByIdSelf):
(JSC::JIT::patchPutByIdReplace):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):
(JSC::JIT::emit_op_get_by_pname):
* jit/JITStubs.cpp:
(JSC::JITThunks::tryCacheGetByID):
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* offlineasm/x86.rb:
* runtime/JSGlobalObject.h:
(JSGlobalObject):
(JSC::JSGlobalObject::functionNameOffset):
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren):
(JSC):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::getPropertySpecificValue):
(JSC::JSObject::removeDirect):
(JSC::JSObject::growOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/JSObject.h:
(JSObject):
(JSC::JSObject::getDirect):
(JSC::JSObject::getDirectLocation):
(JSC::JSObject::hasInlineStorage):
(JSC::JSObject::inlineStorageUnsafe):
(JSC::JSObject::inlineStorage):
(JSC::JSObject::outOfLineStorage):
(JSC::JSObject::locationForOffset):
(JSC::JSObject::offsetForLocation):
(JSC::JSObject::getDirectOffset):
(JSC::JSObject::putDirectOffset):
(JSC::JSObject::putUndefinedAtDirectOffset):
(JSC::JSObject::addressOfOutOfLineStorage):
(JSC::JSObject::finishCreation):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC::JSNonFinalObject::finishCreation):
(JSFinalObject):
(JSC::JSFinalObject::finishCreation):
(JSC::JSFinalObject::JSFinalObject):
(JSC::JSObject::offsetOfOutOfLineStorage):
(JSC::JSObject::setOutOfLineStorage):
(JSC::JSObject::JSObject):
(JSC):
(JSC::JSCell::fastGetOwnProperty):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::offsetRelativeToPatchedStorage):
(JSC::indexRelativeToBase):
(JSC::offsetRelativeToBase):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::create):
* runtime/JSPropertyNameIterator.h:
(JSPropertyNameIterator):
(JSC::JSPropertyNameIterator::getOffset):
(JSC::JSPropertyNameIterator::finishCreation):
* runtime/JSValue.cpp:
(JSC::JSValue::putToPrimitive):
* runtime/Operations.h:
(JSC::normalizePrototypeChain):
* runtime/Options.cpp:
(JSC):
(JSC::Options::initialize):
* runtime/PropertyMapHashTable.h:
(PropertyMapEntry):
(JSC::PropertyMapEntry::PropertyMapEntry):
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::getDeletedOffset):
(JSC::PropertyTable::addDeletedOffset):
(JSC::PropertyTable::nextOffset):
(JSC):
(JSC::PropertyTable::sizeInMemory):
* runtime/PropertyOffset.h: Added.
(JSC):
(JSC::checkOffset):
(JSC::validateOffset):
(JSC::isValidOffset):
(JSC::isInlineOffset):
(JSC::isOutOfLineOffset):
(JSC::offsetInInlineStorage):
(JSC::offsetInOutOfLineStorage):
(JSC::offsetInRespectiveStorage):
(JSC::numberOfOutOfLineSlotsForLastOffset):
(JSC::numberOfSlotsForLastOffset):
(JSC::nextPropertyOffsetFor):
(JSC::firstPropertyOffsetFor):
* runtime/PropertySlot.h:
(JSC::PropertySlot::cachedOffset):
(JSC::PropertySlot::setValue):
(JSC::PropertySlot::setCacheableGetterSlot):
(JSC::PropertySlot::clearOffset):
* runtime/PutPropertySlot.h:
(JSC::PutPropertySlot::setExistingProperty):
(JSC::PutPropertySlot::setNewProperty):
(JSC::PutPropertySlot::cachedOffset):
(PutPropertySlot):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::nextOutOfLineStorageCapacity):
(JSC::Structure::growOutOfLineCapacity):
(JSC::Structure::suggestedNewOutOfLineStorageCapacity):
(JSC::Structure::addPropertyTransitionToExistingStructure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::removePropertyTransition):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::addPropertyWithoutTransition):
(JSC::Structure::removePropertyWithoutTransition):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::get):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
* runtime/Structure.h:
(Structure):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::previousID):
(JSC::Structure::outOfLineCapacity):
(JSC::Structure::outOfLineSizeForKnownFinalObject):
(JSC::Structure::outOfLineSizeForKnownNonFinalObject):
(JSC::Structure::outOfLineSize):
(JSC::Structure::hasInlineStorage):
(JSC::Structure::inlineCapacity):
(JSC::Structure::inlineSizeForKnownFinalObject):
(JSC::Structure::inlineSize):
(JSC::Structure::totalStorageSize):
(JSC::Structure::totalStorageCapacity):
(JSC::Structure::firstValidOffset):
(JSC::Structure::lastValidOffset):
(JSC::Structure::isValidOffset):
(JSC::Structure::isEmpty):
(JSC::Structure::transitionCount):
(JSC::Structure::get):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121925
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Thu, 5 Jul 2012 20:36:37 +0000 (20:36 +0000)]
JSObjectCallAsFunction should thisConvert the provided thisObject
https://bugs.webkit.org/show_bug.cgi?id=90628
Reviewed by Gavin Barraclough.
Perform this conversion on the provided this object.
* API/JSObjectRef.cpp:
(JSObjectCallAsFunction):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121924
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 20:19:08 +0000 (20:19 +0000)]
Code refactoring: move mimeTypeFromUTITree to a separate file.
https://bugs.webkit.org/show_bug.cgi?id=90619
We should move UTI handling related code to a separate file.
Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-07-05
Reviewed by David Kilzer.
* WebCore.xcodeproj/project.pbxproj: Add UTIUtilities.h/UTIUtilities.mm to xcode project, and drive-by fix
that happened when editing the Xcode project file.
* platform/network/mac/UTIUtilities.h: Added.
(WebCore):
* platform/network/mac/UTIUtilities.mm: Added. move mimeTypeFromUTITree to UTIUtilities.mm.
(WebCore):
(WebCore::mimeTypeFromUTITree):
* platform/network/mac/WebCoreURLResponse.mm: include UTIUtilities.h to use mimeTypeFromUTITree.
(WebCore):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121923
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vollick@chromium.org [Thu, 5 Jul 2012 20:07:55 +0000 (20:07 +0000)]
[chromium] Create a WebKit::Web* wrapper for the cc animation classes
https://bugs.webkit.org/show_bug.cgi?id=90303
Reviewed by James Robinson.
Source/Platform:
* Platform.gypi:
* chromium/public/WebAnimation.h: Added.
(WebCore):
(WebKit):
(WebAnimation):
(WebKit::WebAnimation::WebAnimation):
(WebKit::WebAnimation::~WebAnimation):
* chromium/public/WebAnimationCurve.h: Added.
(WebCore):
(WebKit):
(WebAnimationCurve):
(WebKit::WebAnimationCurve::~WebAnimationCurve):
(WebKit::WebAnimationCurve::WebAnimationCurve):
* chromium/public/WebFloatAnimationCurve.h: Added.
(WebCore):
(WebKit):
(WebFloatAnimationCurve):
(WebKit::WebFloatAnimationCurve::WebFloatAnimationCurve):
(WebKit::WebFloatAnimationCurve::~WebFloatAnimationCurve):
* chromium/public/WebFloatKeyframe.h: Added.
(WebKit):
(WebKit::WebFloatKeyframe::WebFloatKeyframe):
(WebFloatKeyframe):
* chromium/public/WebTransformAnimationCurve.h: Added.
(WebCore):
(WebKit):
(WebTransformAnimationCurve):
(WebKit::WebTransformAnimationCurve::WebTransformAnimationCurve):
(WebKit::WebTransformAnimationCurve::~WebTransformAnimationCurve):
* chromium/public/WebTransformKeyframe.h: Added.
(WebKit):
(WebKit::WebTransformKeyframe::WebTransformKeyframe):
(WebTransformKeyframe):
Source/WebKit/chromium:
* WebKit.gyp:
* WebKit.gypi:
* src/WebAnimation.cpp: Added.
(WebKit):
(WebKit::WebAnimation::iterations):
(WebKit::WebAnimation::setIterations):
(WebKit::WebAnimation::startTime):
(WebKit::WebAnimation::setStartTime):
(WebKit::WebAnimation::timeOffset):
(WebKit::WebAnimation::setTimeOffset):
(WebKit::WebAnimation::alternatesDirection):
(WebKit::WebAnimation::setAlternatesDirection):
(WebKit::WebAnimation::toCCActiveAnimation):
(WebKit::WebAnimation::initialize):
(WebKit::WebAnimation::destroy):
* src/WebAnimationCurveCommon.cpp: Added.
(WebKit):
(WebKit::createTimingFunction):
* src/WebAnimationCurveCommon.h: Added.
(WebCore):
(WebKit):
* src/WebFloatAnimationCurve.cpp: Added.
(WebKit):
(WebKit::WebFloatAnimationCurve::add):
(WebKit::WebFloatAnimationCurve::toCCAnimationCurve):
(WebKit::WebFloatAnimationCurve::initialize):
(WebKit::WebFloatAnimationCurve::destroy):
* src/WebTransformAnimationCurve.cpp: Added.
(WebKit):
(WebKit::WebTransformAnimationCurve::add):
(WebKit::WebTransformAnimationCurve::toCCAnimationCurve):
(WebKit::WebTransformAnimationCurve::initialize):
(WebKit::WebTransformAnimationCurve::destroy):
* tests/WebAnimationTest.cpp: Added.
* tests/WebFloatAnimationCurveTest.cpp: Added.
* tests/WebTransformAnimationCurveTest.cpp: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121922
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leandrogracia@chromium.org [Thu, 5 Jul 2012 20:03:40 +0000 (20:03 +0000)]
Character iterators should not advance if they are at end
https://bugs.webkit.org/show_bug.cgi?id=90560
Reviewed by Ryosuke Niwa.
Source/WebCore:
CharacterIterator and BackwardsCharacterIterator try to advance their
internal TextIterator without checking if they already are at end.
This can cause crashes in TextIterator::advance.
Test: platform/chromium/editing/surrounding-text/surrounding-text.html
* editing/SurroundingText.cpp:
(WebCore::SurroundingText::SurroundingText):
* editing/TextIterator.cpp:
(WebCore::CharacterIterator::advance):
(WebCore::BackwardsCharacterIterator::advance):
LayoutTests:
Add a new test case where character iterators are already at end when
trying to advance. This was caught by Chromium's address sanitizer
here: http://code.google.com/p/chromium/issues/detail?id=135705
* platform/chromium/editing/surrounding-text/surrounding-text-expected.txt:
* platform/chromium/editing/surrounding-text/surrounding-text.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121921
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 19:57:22 +0000 (19:57 +0000)]
Text Autosizing: Add basic framework
https://bugs.webkit.org/show_bug.cgi?id=88655
Follow-up patch tweaking method signatures.
Patch by John Mellor <johnme@chromium.org> on 2012-07-05
Reviewed by Simon Fraser.
No functional change, so no new tests.
* page/FrameView.cpp:
(WebCore::FrameView::layout):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processSubtree):
(WebCore::TextAutosizer::processBlock):
(WebCore::TextAutosizer::processText):
(WebCore):
* rendering/TextAutosizer.h:
(TextAutosizer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121920
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 19:49:56 +0000 (19:49 +0000)]
[WK2] Add C API for Battery Status API
https://bugs.webkit.org/show_bug.cgi?id=90545
Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
Reviewed by Anders Carlsson.
Add C API for WKBatteryManager and WKBatteryStatus
so that clients can support the Battery Status API
in WebKit2.
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* UIProcess/API/C/WKBatteryManager.cpp:
(WKBatteryManagerProviderDidChangeBatteryStatus):
(WKBatteryManagerProviderUpdateBatteryStatus):
* UIProcess/API/C/WKBatteryStatus.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
(WKBatteryStatusGetTypeID):
(WKBatteryStatusCreate):
* UIProcess/API/C/WKBatteryStatus.h: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121919
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Thu, 5 Jul 2012 19:44:04 +0000 (19:44 +0000)]
Web Inspector: move cursor to the current search match.
https://bugs.webkit.org/show_bug.cgi?id=90621
Reviewed by Vsevolod Vlasov.
After closing the search dialog, the cursor should be at the latest search match location.
* inspector/front-end/TextEditor.js:
(WebInspector.TextEditor.prototype.markAndRevealRange):
(WebInspector.TextEditor.prototype._handleFocused):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121918
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 18:20:42 +0000 (18:20 +0000)]
Subpixel layout broken with spans with CSS position other than static
https://bugs.webkit.org/show_bug.cgi?id=90097
Patch by Behdad Esfahbod <behdad@behdad.org> on 2012-07-05
Reviewed by Eric Seidel.
In InlineBox, don't truncate size to integers when returning.
In RenderBlock, don't round-up width to next integer. Round-up to
next LayoutUnit instead.
Test: Added fast/sub-pixel/size-of-span-with-different-positions.html
Adjust expected outputs affected by the rounding changes.
* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::fromFloatCeil):
(FractionalLayoutUnit):
* rendering/InlineBox.h:
(WebCore::InlineBox::size):
* rendering/RenderBlock.cpp:
(WebCore::updatePreferredWidth):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121917
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 18:01:10 +0000 (18:01 +0000)]
Unreviewed, rolling out r121899.
http://trac.webkit.org/changeset/121899
https://bugs.webkit.org/show_bug.cgi?id=90623
Unauthorized WK2 API breakage (Requested by andersca on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-05
* Shared/API/c/WKSharedAPICast.h:
(WebKit::toCopiedURLAPI):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121916
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dtharp@codeaurora.org [Thu, 5 Jul 2012 17:54:46 +0000 (17:54 +0000)]
Adding myself as committer to committers.py
Unreviewed.
* Scripts/webkitpy/common/config/committers.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121915
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Thu, 5 Jul 2012 17:46:09 +0000 (17:46 +0000)]
[CMake] Fix some CMake warnings
https://bugs.webkit.org/show_bug.cgi?id=90558
Fix WebKit options so they match with FeatureList.pm.
Reviewed by Dan Bates.
* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121914
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 5 Jul 2012 17:37:35 +0000 (17:37 +0000)]
[Mac][WK2] Enable HTTPS tests
https://bugs.webkit.org/show_bug.cgi?id=90600
Reviewed by Brady Eidson.
Tools:
* DumpRenderTree/mac/DumpRenderTree.mm: (dumpRenderTree): Removed a misleading comment.
It explained why we were doing this here instead of a frame load delegate, but that's
just history, not an explanation of why we need this code.
* WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm: (WTR::InjectedBundle::platformInitialize):
Ignore certificate errors for localhost and 127.0.0.1. Since this is only needed
for tests, it seems appropriate to have platform specific solutions in every WTR,
and not add a WebKit2 API.
LayoutTests:
Unskip in common wk2 skipped file, re-skip everywhere besides Mac.
* platform/gtk-wk2/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/win-wk2/Skipped:
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121913
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
japhet@chromium.org [Thu, 5 Jul 2012 17:19:13 +0000 (17:19 +0000)]
Source/WebCore: REGRESSION (r115654): Sometimes does not replace content for multipart/x-mixed-replace
https://bugs.webkit.org/show_bug.cgi?id=88436
Reviewed by Brady Eidson.
Test: http/tests/multipart/multipart-replace-non-html-content.php
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::commitData): We should only send receivedFirstData() once per main resource load,
rather than multiple times in a multipart load.
(WebCore::DocumentLoader::setupForReplaceByMIMEType): m_gotFirstByte isn't set to true until data is
actually committed, and multipart data is often not committed until the part is finished. Check
whether the SharedBuffer is non-null instead.
* testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::resetInternalsObject): The JSInternals object my have already been cleared if the window shell
was cleared as part of creation of a new Document. Check it before using it.
LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=88436.
Reviewed by Brady Eidson.
* http/tests/multipart/multipart-replace-non-html-content-expected.txt: Added.
* http/tests/multipart/multipart-replace-non-html-content.php: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121912
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Thu, 5 Jul 2012 16:44:46 +0000 (16:44 +0000)]
Web Inspector: move search field to the bottom of the page.
https://bugs.webkit.org/show_bug.cgi?id=90610
Reviewed by Vsevolod Vlasov.
This is the first step in the Search/replace implementation. This change moves search
field from the inspector toolbar to the inspector view footer that is visible upon Cmd/Ctrl+F.
* English.lproj/localizedStrings.js:
* inspector/front-end/InspectorView.js:
(WebInspector.InspectorView):
(WebInspector.InspectorView.prototype._pushToHistory):
(WebInspector.InspectorView.prototype.panelsElement):
(WebInspector.InspectorView.prototype.setFooterElement):
* inspector/front-end/Panel.js:
(WebInspector.Panel.prototype.show):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfilesPanel.prototype._reset):
* inspector/front-end/SearchController.js:
(WebInspector.SearchController):
(WebInspector.SearchController.prototype.updateSearchLabel):
(WebInspector.SearchController.prototype.cancelSearch):
(WebInspector.SearchController.prototype._updateSearchNavigationButtonState):
(WebInspector.SearchController.prototype.focusSearchField):
(WebInspector.SearchController.prototype._onKeyDown):
(WebInspector.SearchController.prototype._onNextButtonSearch):
(WebInspector.SearchController.prototype._onPrevButtonSearch):
(WebInspector.SearchController.prototype._performSearch):
* inspector/front-end/inspector.css:
(#search):
(.toolbar-search-container):
(.toolbar-search-navigation):
(.toolbar-search-navigation:hover):
(.toolbar-search-navigation.toolbar-search-navigation-prev):
(.toolbar-search-navigation.toolbar-search-navigation-next):
(.toolbar-search-navigation-hidden):
(.status-bar):
(.search-drawer-header input[type="search"].search-config-search):
(.inspector-footer):
(.inspector-footer > div):
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector.get _setCompactMode):
(WebInspector.postDocumentKeyDown):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121911
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Thu, 5 Jul 2012 16:39:54 +0000 (16:39 +0000)]
[Qt] Move Webkit1 before WebKit2 in the build order
Reviewed by Csaba Osztrogonác.
* WebKit.pro:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121910
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
scheib@chromium.org [Thu, 5 Jul 2012 16:21:43 +0000 (16:21 +0000)]
[Chromium] Clear m_currentInputEvent after handled by pointerLockMouseEvent().
https://bugs.webkit.org/show_bug.cgi?id=90391
Source/WebKit/chromium:
WebViewImpl::handleInputEvent was keeping a pointer to an input event that would
later be accessed. When in pointer lock, that pointer was not being cleared.
Code modified to use TemporaryChange to automatically clear the pointer at all
method exit points.
Reviewed by Abhishek Arya.
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleInputEvent):
LayoutTests:
Test that reproduces bug 90391:
Enable pointer lock, receive mouse move, call window.open, don't crash.
Reviewed by Abhishek Arya.
* pointer-lock/bug90391-move-then-window-open-crash-expected.txt: Added.
* pointer-lock/bug90391-move-then-window-open-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121909
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Thu, 5 Jul 2012 16:13:48 +0000 (16:13 +0000)]
Web Inspector: added low-level instrumentation support for TimelineAgent
https://bugs.webkit.org/show_bug.cgi?id=90264
Patch by Sergey Rogulenko <rogulenko@google.com> on 2012-07-05
Reviewed by Pavel Feldman.
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::timelineAgentForOrphanEvents):
(WebCore::InspectorInstrumentation::setTimelineAgentForOrphanEvents):
(WebCore::InspectorInstrumentation::threadSpecificTimelineAgentForOrphanEvents):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121908
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 15:38:10 +0000 (15:38 +0000)]
Text Autosizing: Add test framework and simple test.
https://bugs.webkit.org/show_bug.cgi?id=90561
Source/WebCore:
Exposes methods allowing Layout Tests to enable Text Autosizing and
get the same results as if they were running on a mobile device.
Patch by John Mellor <johnme@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
Test: fast/text-autosizing/simple-paragraph.html
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore):
(WebCore::Settings::setTextAutosizingWindowSizeOverride):
* page/Settings.h:
(Settings):
(WebCore::Settings::textAutosizingWindowSizeOverride):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::boostSubtree):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::restoreTo):
(WebCore::InternalSettings::setTextAutosizingEnabled):
(WebCore):
(WebCore::InternalSettings::setTextAutosizingWindowSizeOverride):
* testing/InternalSettings.h:
(InternalSettings):
* testing/InternalSettings.idl:
Source/WebKit/chromium:
ENABLE(TEXT_AUTOSIZING) is now on in Chromium (but disabled at runtime).
This allows it to be used in Layout Tests (and in future by Web
Inspector's mobile device emulation).
Patch by John Mellor <johnme@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
* features.gypi:
LayoutTests:
Added a RefTest checking that Text Autosizing is active.
Skipped the text-autosizing test directory on platforms that
currently disable ENABLE(TEXT_AUTOSIZING).
Patch by John Mellor <johnme@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
* fast/text-autosizing/simple-paragraph-expected.html: Added.
* fast/text-autosizing/simple-paragraph.html: Added.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121907
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Thu, 5 Jul 2012 15:27:26 +0000 (15:27 +0000)]
Web Inspector: timeline events in the vicinity of event dividers some times are tricky to expand
https://bugs.webkit.org/show_bug.cgi?id=90572
Reviewed by Pavel Feldman.
- do not use resources-event-divider-padding;
- make dividers larger and use border-color to visualize them;
- move resources-<color>-divider to timelinePanel.css, as they're not used outside of timeline;
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.createEventDivider):
* inspector/front-end/inspectorCommon.css:
* inspector/front-end/timelinePanel.css:
(.timeline .resources-event-divider):
(.resources-red-divider):
(.resources-blue-divider):
(.resources-orange-divider):
(.resources-divider.last):
(.timeline .resources-event-divider.timeline-frame-divider):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121906
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Thu, 5 Jul 2012 15:17:43 +0000 (15:17 +0000)]
Web Inspector: incorrect height of main timeline pane after switching to memory mode
https://bugs.webkit.org/show_bug.cgi?id=90387
Reviewed by Pavel Feldman.
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._splitterDragging):
(WebInspector.TimelinePanel.prototype.set _setSplitterPosition):
(WebInspector.TimelinePanel.prototype._overviewModeChanged):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121905
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 14:23:45 +0000 (14:23 +0000)]
[chromium] Add a method didChangeFormState to WebViewClient.
https://bugs.webkit.org/show_bug.cgi?id=90563
Patch by Oli Lan <olilan@chromium.org> on 2012-07-05
Reviewed by Adam Barth.
This patch adds a new method didChangeFormState to WebViewClient,
and calls it from ChromeClientImpl::formStateDidChange with the changed node.
This new method can be used for example by the Android port to update the browser's
IME when the state of the currently focused text node has changed. To facilitate this
usage, a focused() method has been added to WebNode.
A new test has been added to WebViewTest. This test checks that didChangeFormState
is called when an input's value is changed, and also checks that WebNode::focused() returns
the correct value for the provided node, in both the focused and non-focused cases.
* public/WebNode.h:
* public/WebViewClient.h:
(WebKit::WebViewClient::didChangeFormState):
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::formStateDidChange):
* src/WebNode.cpp:
(WebKit::WebNode::focused):
(WebKit):
* tests/WebViewTest.cpp:
(FormChangeWebViewClient):
(WebKit::FormChangeWebViewClient::didChangeFormState):
(WebKit::FormChangeWebViewClient::reset):
(WebKit::FormChangeWebViewClient::called):
(WebKit::FormChangeWebViewClient::focused):
(WebKit):
(WebKit::TEST_F):
* tests/data/input_field_set_value_while_focused.html: Added.
* tests/data/input_field_set_value_while_not_focused.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121904
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Thu, 5 Jul 2012 14:20:53 +0000 (14:20 +0000)]
[CMAKE] Unreviewd typo fix after r121857
* Source/cmake/WebKitMacros.cmake:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121903
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 14:19:54 +0000 (14:19 +0000)]
Web Inspector: Add support for keyboard increment / decrement on numbers in attributes in Elements Panel
https://bugs.webkit.org/show_bug.cgi?id=89586
Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-07-05
Reviewed by Pavel Feldman
Refactoring the key events while editing style property values. Migrated the code to UIUtils.js and referred
from StylesSidebarPane.js, ElementsTreeOutline.js and MetricsSidebarPane.js.
No new tests as code refactoring and UI feature added to ElementsTreeOutline.js
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._startEditingAttribute.handleKeyDownEvents):
(WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
* inspector/front-end/MetricsSidebarPane.js:
(WebInspector.MetricsSidebarPane.prototype._handleKeyDown.finishHandler):
(WebInspector.MetricsSidebarPane.prototype._handleKeyDown.customNumberHandler):
(WebInspector.MetricsSidebarPane.prototype._handleKeyDown):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._handleNameOrValueUpDown.finishHandler):
(WebInspector.StylesSidebarPane.prototype._handleNameOrValueUpDown):
* inspector/front-end/UIUtils.js:
(WebInspector._modifiedHexValue):
(WebInspector._modifiedFloatNumber):
(WebInspector.handleElementValueModifications):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121902
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Thu, 5 Jul 2012 13:10:04 +0000 (13:10 +0000)]
[Qt] Remove rpath-hacks in qt_webkit.pri
Having it in qt_webkit.pri meant that all client apps would inherit the rpath,
even if they were not using QtWebKit.
This is a regression for people who build client apps against a non-installed
QtWebKit, as the client app will be missing a rpath to the standalone WebKit
build dir. This can be solved by LD_LIBRARY_PATH or custom QMAKE_RPATHDIR
logic, until the real issue is fixed in Qt.
Reviewed by Csaba Osztrogonác.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121901
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rgabor@webkit.org [Thu, 5 Jul 2012 12:31:56 +0000 (12:31 +0000)]
NEON intrinsics should be used with gaussian blur filter
https://bugs.webkit.org/show_bug.cgi?id=90166
Reviewed by Zoltan Herczeg.
Rewrite inline assembly to NEON intrinsics for better portabilty
and readibility. Remove unnecessary FEGaussianBlurNEON.cpp and add
NEONHelpers.h to the project which will contains the shared
NEON code of the filters.
Existing tests cover this issue.
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::platformApplyGeneric):
(WebCore::FEGaussianBlur::platformApplyWorker):
* platform/graphics/filters/FEGaussianBlur.h:
(FEGaussianBlur):
* platform/graphics/filters/arm/FEGaussianBlurNEON.cpp: Removed.
* platform/graphics/filters/arm/FEGaussianBlurNEON.h:
(WebCore::boxBlurNEON):
* platform/graphics/filters/arm/NEONHelpers.h: Added.
(WebCore):
(WebCore::loadRGBA8AsFloat):
(WebCore::storeFloatAsRGBA8):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121900
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kbalazs@webkit.org [Thu, 5 Jul 2012 11:21:47 +0000 (11:21 +0000)]
[Qt] WTR crashes if a URL is passed as a parameter
https://bugs.webkit.org/show_bug.cgi?id=88093
Reviewed by Zoltan Herczeg.
* Shared/API/c/WKSharedAPICast.h:
(WebKit::toCopiedURLAPI):
Don't special case null string. It's handled
fine by WebURL and passing 0 is not suitable
to the API.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121899
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 10:54:01 +0000 (10:54 +0000)]
[EFL] Change class name from NotificationClientEfl to NotificationPresenterClientEfl.
https://bugs.webkit.org/show_bug.cgi?id=90542
Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Source/WebKit:
NotificationClientEfl.cpp is changed to NotificationPresenterClientEfl.cpp
to be in line with other ports(qt, chromium, gtk).
* PlatformEfl.cmake:
Source/WebKit/efl:
Change class name from NotificationClientEfl to NotificationPresenterClientEfl
to be in line with other ports.(qt, chromium, blackberry)
* WebCoreSupport/ChromeClientEfl.cpp:
* WebCoreSupport/NotificationPresenterClientEfl.cpp: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationClientEfl.cpp.
(WebCore):
(WebCore::NotificationPresenterClientEfl::NotificationPresenterClientEfl):
(WebCore::NotificationPresenterClientEfl::~NotificationPresenterClientEfl):
(WebCore::NotificationPresenterClientEfl::show):
(WebCore::NotificationPresenterClientEfl::cancel):
(WebCore::NotificationPresenterClientEfl::notificationObjectDestroyed):
(WebCore::NotificationPresenterClientEfl::notificationControllerDestroyed):
(WebCore::NotificationPresenterClientEfl::requestPermission):
(WebCore::NotificationPresenterClientEfl::checkPermission):
(WebCore::NotificationPresenterClientEfl::cancelRequestsForPermission):
* WebCoreSupport/NotificationPresenterClientEfl.h: Renamed from Source/WebKit/efl/WebCoreSupport/NotificationClientEfl.h.
(WebCore):
(NotificationPresenterClientEfl):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121898
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 10:52:48 +0000 (10:52 +0000)]
[EFL] Enable the CUSTOM_SCHEME_HANDLER feature as default.
https://bugs.webkit.org/show_bug.cgi?id=88608
Patch by Dongwoo Im <dw.im@samsung.com> on 2012-07-05
Reviewed by Hajime Morita.
.:
* Source/cmake/OptionsEfl.cmake: Enable the CUSTOM_SCHEME_HANDLER feature as default.
Source/WebKit2:
* WebProcess/WebCoreSupport/WebChromeClient.h:
(WebKit::WebChromeClient::isProtocolHandlerRegistered): Add a stub function.
(WebKit::WebChromeClient::unregisterProtocolHandler): Add a stub function.
(WebChromeClient):
Tools:
* Scripts/webkitperl/FeatureList.pm: Enable the CUSTOM_SCHEME_HANDLER feature as default.
LayoutTests:
* platform/efl/fast/dom/unregister-protocol-handler-expected.txt: Expected result of the EFL port.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121897
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 10:33:54 +0000 (10:33 +0000)]
Web Inspector: Having a "Scroll into view" for nodes through web inspector.
https://bugs.webkit.org/show_bug.cgi?id=89554
Added options for scrolling-into-view the element node through web
inspector.
Patch by Sam D <dsam2912@gmail.com> on 2012-07-05
Reviewed by Pavel Feldman.
No new tests. UI change.
* English.lproj/localizedStrings.js:
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
(.):
* inspector/front-end/RemoteObject.js:
(WebInspector.RemoteObject.prototype.callFunction):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121896
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Thu, 5 Jul 2012 09:34:46 +0000 (09:34 +0000)]
Add Gamepad logging channel
https://bugs.webkit.org/show_bug.cgi?id=90570
Reviewed by Carlos Garcia Campos.
Add a new logging channel for logging significant
events that are related to Gamepad API implementation.
No new tests - no new testable functionality.
* platform/Logging.cpp:
(WebCore):
(WebCore::getChannelFromName):
* platform/Logging.h:
(WebCore):
* platform/gtk/GamepadsGtk.cpp: Log when a device is
registered or unregistered.
(WebCore::GamepadsGtk::registerDevice):
(WebCore::GamepadsGtk::unregisterDevice):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121895
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kkristof@inf.u-szeged.hu [Thu, 5 Jul 2012 09:22:58 +0000 (09:22 +0000)]
[Qt] Unreviewed gardening after r121891.
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121894
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Thu, 5 Jul 2012 08:47:49 +0000 (08:47 +0000)]
[Wk2][EFL] EFL needs a WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=87659
Reviewed by Kenneth Rohde Christiansen.
.:
* Source/CMakeLists.txt:
Set compiler flags for WebCoreTestSupport to be linked into TestRunnerInjectedBundle
shared library.
* Source/cmake/WebKitMacros.cmake: Remove unnecessary dependency.
Source/WebKit2:
* PlatformEfl.cmake: Added WKImageCairo.cpp in source list.
Tools:
Add an implementation of WebKitTestRunner for Efl port.
* CMakeLists.txt: Includes WebKitTestRunner build script.
* Scripts/build-webkittestrunner: Added knowledge of WebKitTestRunner/Efl.
* Scripts/webkitpy/layout_tests/port/efl.py: Ditto.
(EflPort.setup_environ_for_server):
* WebKitTestRunner/CMakeLists.txt: Added.
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
* WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Added.
* WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Added.
* WebKitTestRunner/InjectedBundle/efl/LayoutTestControllerEfl.cpp: Added.
* WebKitTestRunner/PlatformEfl.cmake: Added.
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/TestController.cpp:
* WebKitTestRunner/config.h: Added knowledge of WebKitTestRunner/Efl.
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Added.
* WebKitTestRunner/efl/TestControllerEfl.cpp: Added.
* WebKitTestRunner/efl/main.cpp: Added.
(main):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121893
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 08:36:39 +0000 (08:36 +0000)]
[EFL][WK2] Add ewk_view_reload_bypass_cache API.
https://bugs.webkit.org/show_bug.cgi?id=89413
Patch by Hyerim Bae <hyerim.bae@samsung.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Add API, which is for reloading documents without cache.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_reload_bypass_cache):
* UIProcess/API/efl/ewk_view.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121892
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 08:19:51 +0000 (08:19 +0000)]
Web Inspector: [JSC] support JS execution in the context of an isolated world
https://bugs.webkit.org/show_bug.cgi?id=85709
Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-07-05
Reviewed by Gavin Barraclough.
No new test case for this bug.
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::collectIsolatedContexts):
(WebCore):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121891
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 08:14:58 +0000 (08:14 +0000)]
[WK2][EFL] Ewk_View needs API to load HTML data
https://bugs.webkit.org/show_bug.cgi?id=90540
Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Source/WebKit2:
Add method to Ewk_View to load provided HTML data.
This is used for e.g. when an URL cannot be reached
and we need to display an error page.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_html_load):
* UIProcess/API/efl/ewk_view.h:
Tools:
Update EFL MiniBrowser to catch the "load,error" signal
on the view and display an error page.
* MiniBrowser/efl/main.c:
(on_error):
(browserCreate):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121890
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 07:59:25 +0000 (07:59 +0000)]
[WK2][EFL] Ewk_View needs to report new resource requests
https://bugs.webkit.org/show_bug.cgi?id=90577
Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-05
Reviewed by Kenneth Rohde Christiansen.
Add new "resource,request,new" signal to Ewk_View to
notify clients of the resource requests being initiated.
New Ewk_Url_Request and Ewk_Web_Resource types are
introduced in order to provide the clients with the
needed information regarding the resource requests.
* PlatformEfl.cmake:
* UIProcess/API/efl/EWebKit2.h:
* UIProcess/API/efl/ewk_url_request.cpp: Added.
(_Ewk_Url_Request):
(ewk_url_request_ref):
(ewk_url_request_unref):
(ewk_url_request_url_get):
(ewk_request_first_party_get):
(ewk_url_request_http_method_get):
(ewk_url_request_new):
* UIProcess/API/efl/ewk_url_request.h: Added.
* UIProcess/API/efl/ewk_url_request_private.h: Added.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_base_add):
(ewk_view_resource_load_initiated):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/ewk_view_private.h:
* UIProcess/API/efl/ewk_view_resource_load_client.cpp: Added.
(didInitiateLoadForResource):
(ewk_view_resource_load_client_attach):
* UIProcess/API/efl/ewk_view_resource_load_client_private.h: Added.
* UIProcess/API/efl/ewk_web_resource.cpp: Added.
(_Ewk_Web_Resource):
(ewk_web_resource_ref):
(ewk_web_resource_unref):
(ewk_web_resource_uri_get):
(ewk_web_resource_new):
(ewk_web_resource_main_get):
* UIProcess/API/efl/ewk_web_resource.h: Added.
* UIProcess/API/efl/ewk_web_resource_private.h: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121889
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Thu, 5 Jul 2012 07:58:58 +0000 (07:58 +0000)]
Unreviewed GTK gardening, marking a test as a flaky crasher after r121869.
* platform/gtk/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121888
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zherczeg@webkit.org [Thu, 5 Jul 2012 07:53:51 +0000 (07:53 +0000)]
[Qt] Unreviewed buildfix after r121886. Typo fix.
* assembler/MacroAssemblerARM.cpp:
(JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121887
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sergio@webkit.org [Thu, 5 Jul 2012 07:24:21 +0000 (07:24 +0000)]
Hidden dirs are not copied when creating the built product archive
https://bugs.webkit.org/show_bug.cgi?id=90559
Reviewed by Carlos Garcia Campos.
Hidden dirs are not copied inside the built product archive
because the recursive copy command was ignoring them. We need those
hidden directories for the GTK WebKit2 testing bot to work fine.
* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct): replaced "*" by "." to include hidden
dirs/files.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121886
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zherczeg@webkit.org [Thu, 5 Jul 2012 07:04:16 +0000 (07:04 +0000)]
Port DFG JIT to traditional ARM
https://bugs.webkit.org/show_bug.cgi?id=90198
Reviewed by Filip Pizlo.
Source/JavaScriptCore:
This patch contains the macro assembler part of the
DFG JIT support on ARM systems with fixed 32 bit instruction
width. A large amount of old code was refactored, and the ARMv4
or lower support is removed from the macro assembler.
Sunspider is improved by 8%, and V8 is 92%.
* assembler/ARMAssembler.cpp:
(JSC::ARMAssembler::dataTransfer32):
(JSC::ARMAssembler::baseIndexTransfer32):
(JSC):
(JSC::ARMAssembler::dataTransfer16):
(JSC::ARMAssembler::baseIndexTransfer16):
(JSC::ARMAssembler::dataTransferFloat):
(JSC::ARMAssembler::baseIndexTransferFloat):
(JSC::ARMAssembler::executableCopy):
* assembler/ARMAssembler.h:
(JSC::ARMAssembler::ARMAssembler):
(JSC::ARMAssembler::emitInst):
(JSC::ARMAssembler::vmov_f64_r):
(ARMAssembler):
(JSC::ARMAssembler::vabs_f64_r):
(JSC::ARMAssembler::vneg_f64_r):
(JSC::ARMAssembler::ldr_imm):
(JSC::ARMAssembler::ldr_un_imm):
(JSC::ARMAssembler::dtr_u):
(JSC::ARMAssembler::dtr_ur):
(JSC::ARMAssembler::dtr_d):
(JSC::ARMAssembler::dtr_dr):
(JSC::ARMAssembler::dtrh_u):
(JSC::ARMAssembler::dtrh_ur):
(JSC::ARMAssembler::dtrh_d):
(JSC::ARMAssembler::dtrh_dr):
(JSC::ARMAssembler::fdtr_u):
(JSC::ARMAssembler::fdtr_d):
(JSC::ARMAssembler::push_r):
(JSC::ARMAssembler::pop_r):
(JSC::ARMAssembler::poke_r):
(JSC::ARMAssembler::peek_r):
(JSC::ARMAssembler::vmov_vfp64_r):
(JSC::ARMAssembler::vmov_arm64_r):
(JSC::ARMAssembler::vmov_vfp32_r):
(JSC::ARMAssembler::vmov_arm32_r):
(JSC::ARMAssembler::vcvt_u32_f64_r):
(JSC::ARMAssembler::vcvt_f64_f32_r):
(JSC::ARMAssembler::vcvt_f32_f64_r):
(JSC::ARMAssembler::clz_r):
(JSC::ARMAssembler::bkpt):
(JSC::ARMAssembler::bx):
(JSC::ARMAssembler::blx):
(JSC::ARMAssembler::labelIgnoringWatchpoints):
(JSC::ARMAssembler::labelForWatchpoint):
(JSC::ARMAssembler::label):
(JSC::ARMAssembler::getLdrImmAddress):
(JSC::ARMAssembler::replaceWithJump):
(JSC::ARMAssembler::maxJumpReplacementSize):
(JSC::ARMAssembler::getOp2Byte):
(JSC::ARMAssembler::getOp2Half):
(JSC::ARMAssembler::RM):
(JSC::ARMAssembler::RS):
(JSC::ARMAssembler::RD):
(JSC::ARMAssembler::RN):
* assembler/AssemblerBufferWithConstantPool.h:
(JSC::AssemblerBufferWithConstantPool::ensureSpaceForAnyInstruction):
* assembler/MacroAssemblerARM.cpp:
(JSC::MacroAssemblerARM::load32WithUnalignedHalfWords):
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::add32):
(MacroAssemblerARM):
(JSC::MacroAssemblerARM::and32):
(JSC::MacroAssemblerARM::lshift32):
(JSC::MacroAssemblerARM::mul32):
(JSC::MacroAssemblerARM::neg32):
(JSC::MacroAssemblerARM::rshift32):
(JSC::MacroAssemblerARM::urshift32):
(JSC::MacroAssemblerARM::xor32):
(JSC::MacroAssemblerARM::load8):
(JSC::MacroAssemblerARM::load8Signed):
(JSC::MacroAssemblerARM::load16):
(JSC::MacroAssemblerARM::load16Signed):
(JSC::MacroAssemblerARM::load32):
(JSC::MacroAssemblerARM::load32WithAddressOffsetPatch):
(JSC::MacroAssemblerARM::store32WithAddressOffsetPatch):
(JSC::MacroAssemblerARM::store8):
(JSC::MacroAssemblerARM::store16):
(JSC::MacroAssemblerARM::store32):
(JSC::MacroAssemblerARM::move):
(JSC::MacroAssemblerARM::jump):
(JSC::MacroAssemblerARM::branchAdd32):
(JSC::MacroAssemblerARM::mull32):
(JSC::MacroAssemblerARM::branchMul32):
(JSC::MacroAssemblerARM::nearCall):
(JSC::MacroAssemblerARM::compare32):
(JSC::MacroAssemblerARM::test32):
(JSC::MacroAssemblerARM::sub32):
(JSC::MacroAssemblerARM::call):
(JSC::MacroAssemblerARM::loadFloat):
(JSC::MacroAssemblerARM::loadDouble):
(JSC::MacroAssemblerARM::storeFloat):
(JSC::MacroAssemblerARM::storeDouble):
(JSC::MacroAssemblerARM::moveDouble):
(JSC::MacroAssemblerARM::addDouble):
(JSC::MacroAssemblerARM::divDouble):
(JSC::MacroAssemblerARM::subDouble):
(JSC::MacroAssemblerARM::mulDouble):
(JSC::MacroAssemblerARM::absDouble):
(JSC::MacroAssemblerARM::negateDouble):
(JSC::MacroAssemblerARM::convertInt32ToDouble):
(JSC::MacroAssemblerARM::convertFloatToDouble):
(JSC::MacroAssemblerARM::convertDoubleToFloat):
(JSC::MacroAssemblerARM::branchTruncateDoubleToInt32):
(JSC::MacroAssemblerARM::branchTruncateDoubleToUint32):
(JSC::MacroAssemblerARM::truncateDoubleToInt32):
(JSC::MacroAssemblerARM::truncateDoubleToUint32):
(JSC::MacroAssemblerARM::branchConvertDoubleToInt32):
(JSC::MacroAssemblerARM::branchDoubleNonZero):
(JSC::MacroAssemblerARM::branchDoubleZeroOrNaN):
(JSC::MacroAssemblerARM::invert):
(JSC::MacroAssemblerARM::replaceWithJump):
(JSC::MacroAssemblerARM::maxJumpReplacementSize):
(JSC::MacroAssemblerARM::call32):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::label):
* dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::debugCall):
(JSC::DFG::AssemblyHelpers::boxDouble):
(JSC::DFG::AssemblyHelpers::unboxDouble):
* dfg/DFGCCallHelpers.h:
(CCallHelpers):
(JSC::DFG::CCallHelpers::setupArguments):
* dfg/DFGFPRInfo.h:
(DFG):
* dfg/DFGGPRInfo.h:
(DFG):
(GPRInfo):
* dfg/DFGOperations.cpp:
(JSC):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):
* jit/JITStubs.cpp:
(JSC):
* jit/JITStubs.h:
(JITStackFrame):
* jit/JSInterfaceJIT.h:
(JSInterfaceJIT):
Source/WTF:
Enabling DFG JIT on ARM systems with 32 bit instruction set.
* wtf/InlineASM.h:
* wtf/Platform.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121885
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 06:53:59 +0000 (06:53 +0000)]
Add virtual keyword to ~BitmapImage and ~StillImage because ~Image is virtual.
https://bugs.webkit.org/show_bug.cgi?id=90447
Patch by Huang Dongsung <luxtella@company100.net> on 2012-07-04
Reviewed by Alexey Proskuryakov.
No new tests. This patch doesn't change behavior.
* platform/graphics/BitmapImage.h:
(BitmapImage):
* platform/graphics/qt/StillImageQt.h:
(StillImage):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121884
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 06:45:37 +0000 (06:45 +0000)]
Implement the script-nonce Content Security Policy directive.
https://bugs.webkit.org/show_bug.cgi?id=89577
Patch by Mike West <mkwst@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
Source/WebCore:
This patch implements the (experimental) script-nonce Content Security
Policy directive from the 1.1 spec, which allows for selective
execution of script by specifying a "nonce" attribute for the
script tag. Script is only loaded and executed if it both matches the
nonce and matches the script-src whitelist (if present).
The implementation is gated on the ENABLE_CSP_NEXT flag, which is
currently disabled for all ports other than Chromium.
Spec: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#script-nonce--experimental
Tests: http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed.html
http/tests/security/contentSecurityPolicy/1.1/scriptnonce-badnonce.html
http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html
http/tests/security/contentSecurityPolicy/1.1/scriptnonce-emptynonce.html
http/tests/security/contentSecurityPolicy/1.1/scriptnonce-scriptsrc-blocked.html
* dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestScript):
(WebCore::ScriptElement::executeScript):
Passing the nonce attribute through to check against CSP.
* html/HTMLAttributeNames.in:
* html/HTMLScriptElement.idl:
Adding the `nonce` attribute to the script tag.
* page/ContentSecurityPolicy.cpp:
(CSPDirectiveList):
(WebCore::CSPDirectiveList::logInvalidNonce):
(WebCore):
(WebCore::CSPDirectiveList::checkNonceAndReportViolation):
(WebCore::CSPDirectiveList::allowJavaScriptURLs):
(WebCore::CSPDirectiveList::allowInlineEventHandlers):
If a nonce is set, deny JavaScript URLs and inline event handlers.
(WebCore::CSPDirectiveList::allowScriptNonce):
(WebCore::CSPDirectiveList::parseScriptNonce):
(WebCore::CSPDirectiveList::addDirective):
(WebCore::isAllowedByAllWithNonce):
(WebCore::ContentSecurityPolicy::allowScriptNonce):
* page/ContentSecurityPolicy.h:
(WebCore):
LayoutTests:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-badnonce-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-badnonce.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-emptynonce-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-emptynonce.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-scriptsrc-blocked-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-scriptsrc-blocked.html: Added.
* http/tests/security/contentSecurityPolicy/resources/echo-script-src.pl:
Adding noncy goodness to the echo script.
* http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:
(test):
* platform/gtk/TestExpectations:
Skipping 1.1 tests on GTK (missed it in r121879).
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121883
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Thu, 5 Jul 2012 06:02:37 +0000 (06:02 +0000)]
Notifications should be in Modules/notifications
https://bugs.webkit.org/show_bug.cgi?id=82121
Reviewed by Adam Barth.
The notifications directory is now self-contained. This patch moves it to the Modules directory.
No new tests, covered by existing tests.
* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Modules/notifications/DOMWindowNotifications.cpp: Renamed from Source/WebCore/notifications/DOMWindowNotifications.cpp.
(WebCore):
(WebCore::DOMWindowNotifications::DOMWindowNotifications):
(WebCore::DOMWindowNotifications::~DOMWindowNotifications):
(WebCore::DOMWindowNotifications::from):
(WebCore::DOMWindowNotifications::webkitNotifications):
(WebCore::DOMWindowNotifications::disconnectFrameForPageCache):
(WebCore::DOMWindowNotifications::reconnectFrameFromPageCache):
(WebCore::DOMWindowNotifications::willDestroyGlobalObjectInCachedFrame):
(WebCore::DOMWindowNotifications::willDestroyGlobalObjectInFrame):
(WebCore::DOMWindowNotifications::willDetachGlobalObjectFromFrame):
* Modules/notifications/DOMWindowNotifications.h: Renamed from Source/WebCore/notifications/DOMWindowNotifications.h.
(WebCore):
(DOMWindowNotifications):
* Modules/notifications/DOMWindowNotifications.idl: Renamed from Source/WebCore/notifications/DOMWindowNotifications.idl.
* Modules/notifications/Notification.cpp: Renamed from Source/WebCore/notifications/Notification.cpp.
(WebCore):
(WebCore::Notification::Notification):
(WebCore::Notification::~Notification):
(WebCore::Notification::create):
(WebCore::getAndAddEventListener):
(WebCore::Notification::interfaceName):
(WebCore::Notification::show):
(WebCore::Notification::close):
(WebCore::Notification::eventTargetData):
(WebCore::Notification::ensureEventTargetData):
(WebCore::Notification::contextDestroyed):
(WebCore::Notification::finalize):
(WebCore::Notification::dispatchShowEvent):
(WebCore::Notification::dispatchClickEvent):
(WebCore::Notification::dispatchCloseEvent):
(WebCore::Notification::dispatchErrorEvent):
(WebCore::Notification::taskTimerFired):
(WebCore::Notification::permissionLevel):
(WebCore::Notification::permissionString):
(WebCore::Notification::requestPermission):
* Modules/notifications/Notification.h: Renamed from Source/WebCore/notifications/Notification.h.
(WebCore):
(Notification):
(WebCore::Notification::cancel):
(WebCore::Notification::isHTML):
(WebCore::Notification::setHTML):
(WebCore::Notification::url):
(WebCore::Notification::setURL):
(WebCore::Notification::iconURL):
(WebCore::Notification::title):
(WebCore::Notification::body):
(WebCore::Notification::dir):
(WebCore::Notification::setDir):
(WebCore::Notification::replaceId):
(WebCore::Notification::setReplaceId):
(WebCore::Notification::tag):
(WebCore::Notification::setTag):
(WebCore::Notification::direction):
(WebCore::Notification::scriptExecutionContext):
(WebCore::Notification::detachPresenter):
(WebCore::Notification::setBody):
(WebCore::Notification::refEventTarget):
(WebCore::Notification::derefEventTarget):
* Modules/notifications/Notification.idl: Renamed from Source/WebCore/notifications/Notification.idl.
* Modules/notifications/NotificationCenter.cpp: Renamed from Source/WebCore/notifications/NotificationCenter.cpp.
(WebCore):
(WebCore::NotificationCenter::create):
(WebCore::NotificationCenter::NotificationCenter):
(WebCore::NotificationCenter::checkPermission):
(WebCore::NotificationCenter::requestPermission):
(WebCore::NotificationCenter::stop):
(WebCore::NotificationCenter::requestTimedOut):
(WebCore::NotificationCenter::NotificationRequestCallback::createAndStartTimer):
(WebCore::NotificationCenter::NotificationRequestCallback::NotificationRequestCallback):
(WebCore::NotificationCenter::NotificationRequestCallback::startTimer):
(WebCore::NotificationCenter::NotificationRequestCallback::timerFired):
* Modules/notifications/NotificationCenter.h: Renamed from Source/WebCore/notifications/NotificationCenter.h.
(WebCore):
(NotificationCenter):
(WebCore::NotificationCenter::createHTMLNotification):
(WebCore::NotificationCenter::createNotification):
(WebCore::NotificationCenter::client):
(NotificationRequestCallback):
* Modules/notifications/NotificationCenter.idl: Renamed from Source/WebCore/notifications/NotificationCenter.idl.
* Modules/notifications/NotificationClient.h: Renamed from Source/WebCore/notifications/NotificationClient.h.
(WebCore):
(NotificationClient):
(WebCore::NotificationClient::clearNotifications):
(WebCore::NotificationClient::~NotificationClient):
* Modules/notifications/NotificationController.cpp: Renamed from Source/WebCore/notifications/NotificationController.cpp.
(WebCore):
(WebCore::NotificationController::NotificationController):
(WebCore::NotificationController::~NotificationController):
(WebCore::NotificationController::create):
(WebCore::NotificationController::clientFrom):
(WebCore::NotificationController::supplementName):
(WebCore::provideNotification):
* Modules/notifications/NotificationController.h: Renamed from Source/WebCore/notifications/NotificationController.h.
(WebCore):
(NotificationController):
(WebCore::NotificationController::from):
(WebCore::NotificationController::client):
* Modules/notifications/NotificationPermissionCallback.h: Renamed from Source/WebCore/notifications/NotificationPermissionCallback.h.
(WebCore):
(NotificationPermissionCallback):
(WebCore::NotificationPermissionCallback::~NotificationPermissionCallback):
* Modules/notifications/NotificationPermissionCallback.idl: Renamed from Source/WebCore/notifications/NotificationPermissionCallback.idl.
* Modules/notifications/WorkerContextNotifications.cpp: Renamed from Source/WebCore/notifications/WorkerContextNotifications.cpp.
(WebCore):
(WebCore::WorkerContextNotifications::WorkerContextNotifications):
(WebCore::WorkerContextNotifications::~WorkerContextNotifications):
(WebCore::WorkerContextNotifications::from):
(WebCore::WorkerContextNotifications::webkitNotifications):
* Modules/notifications/WorkerContextNotifications.h: Renamed from Source/WebCore/notifications/WorkerContextNotifications.h.
(WebCore):
(WorkerContextNotifications):
* Modules/notifications/WorkerContextNotifications.idl: Renamed from Source/WebCore/notifications/WorkerContextNotifications.idl.
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.pri:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcproj/WebCoreCommon.vsprops:
* WebCore.vcproj/copyForwardingHeaders.cmd:
* WebCore.xcodeproj/project.pbxproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121882
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Thu, 5 Jul 2012 05:35:14 +0000 (05:35 +0000)]
Unreviewed Chromium gardening, Disable always failed python tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=90587
PortTest.qt_linux and mac_lion are always failed on Chromium Windows at
creating child process.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(PortTest.disabled_test_qt_linux):
(PortTest.disabled_test_mac_lion):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121881
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Thu, 5 Jul 2012 04:27:26 +0000 (04:27 +0000)]
Unreviewed, Chromium gardening. Roll Chromium DEPS.
* DEPS: chromium_rev: 145322 => 145501
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121880
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 04:04:55 +0000 (04:04 +0000)]
Skip CSP 1.1 tests on ports where it's disabled.
https://bugs.webkit.org/show_bug.cgi?id=90564
Patch by Mike West <mkwst@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* platform/efl/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121879
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Thu, 5 Jul 2012 03:48:03 +0000 (03:48 +0000)]
[Tools] webkit_unittest.py got assertion
https://bugs.webkit.org/show_bug.cgi?id=90579
Reviewed by Hajime Morita.
This patch updates expectation of assertion in test_skipped_directories_for_symbols().
r121874 added new (exclude) directory (inspector/styles/variables), however it didn't
update one of two assertions.
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121878
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 5 Jul 2012 03:30:32 +0000 (03:30 +0000)]
AudioNode test should cover numberOfInputs and numberOfOutputs of AudioDestinationNode
https://bugs.webkit.org/show_bug.cgi?id=90578
Patch by Li Yin <li.yin@intel.com> on 2012-07-04
Reviewed by Chris Rogers.
Spec: http://www.w3.org/TR/webaudio/#AudioDestinationNode-section
An AudioSourceNode has no inputs and a single output.
An AudioDestinationNode has one input and no outputs.
Currently, the test webaudio/audionode.html has covered AudioSourceNode,
it is still required to cover AudioDestinationNode.
* webaudio/audionode-expected.txt:
* webaudio/audionode.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121877
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yosin@chromium.org [Thu, 5 Jul 2012 01:54:50 +0000 (01:54 +0000)]
Unreviewed Chromium gardening, drop test expectations for
Chromium-Linux and Chromium-Win.
* platform/chromium/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121876
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hayato@chromium.org [Thu, 5 Jul 2012 01:25:08 +0000 (01:25 +0000)]
Remove inline keywords from functions which can not be inlined in ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=90432
Reviewed by Hajime Morita.
No new tests - no functional changes.
* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::traverseParent):
(WebCore::ComposedShadowTreeWalker::traverseParentBackToYoungerShadowRootOrHost):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121875
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
macpherson@chromium.org [Thu, 5 Jul 2012 00:15:54 +0000 (00:15 +0000)]
Inspector crashes when trying to inspect a page with CSS variables
https://bugs.webkit.org/show_bug.cgi?id=89818
Reviewed by Antti Koivisto.
Patch works by fixing treating handling of CSSPropertyID == CSSPropertyVariable as a special case,
and looking up the author-defined property name from the CSSValue.
Added test inspector/styles/variables/css-variables.html that inspects an element using CSS variables.
Test is skipped when variables are compiled out.
* css/CSSProperty.cpp:
(WebCore::CSSProperty::cssName):
(WebCore):
(WebCore::CSSProperty::cssText):
* css/CSSProperty.h:
(CSSProperty):
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::item):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::asText):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::populateAllProperties):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121874
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 22:41:17 +0000 (22:41 +0000)]
webkit-patch should add reviewer if "Reviewed by NOBODY ..." is missing
https://bugs.webkit.org/show_bug.cgi?id=67935
Patch by Balazs Ankes <bank@inf.u-szeged.hu> on 2012-07-04
Reviewed by Ryosuke Niwa.
* Scripts/webkitpy/common/checkout/changelog.py:
(ChangeLog.set_reviewer):
* Scripts/webkitpy/common/checkout/changelog_unittest.py:
(test_set_reviewer):
(test_set_short_description_and_bug_url):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121873
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 22:06:39 +0000 (22:06 +0000)]
[BlackBerry] Implement device metrics for blackberry.
https://bugs.webkit.org/show_bug.cgi?id=90494
RIM PR #159034
Patch by Hanna Ma <Hanma@rim.com> on 2012-07-04
Reviewed by Rob Buis.
Implement calls to the application to change the device metrics for
the web inspector.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::applySizeOverride):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::setTextZoomFactor):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/InspectorClientBlackBerry.cpp:
(WebCore::InspectorClientBlackBerry::InspectorClientBlackBerry):
(WebCore::InspectorClientBlackBerry::canOverrideDeviceMetrics):
(WebCore):
(WebCore::InspectorClientBlackBerry::overrideDeviceMetrics):
(WebCore::InspectorClientBlackBerry::supportsFrameInstrumentation):
* WebCoreSupport/InspectorClientBlackBerry.h:
(InspectorClientBlackBerry):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121872
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 21:36:52 +0000 (21:36 +0000)]
Web Inspector [JSC]: Implement ScriptCallStack::stackTrace
https://bugs.webkit.org/show_bug.cgi?id=40118
Patch by Anthony Scian <ascian@rim.com> on 2012-07-04
Reviewed by Yong Li.
Source/JavaScriptCore:
Added member functions to expose function name, urlString, and line #.
Refactored toString to make use of these member functions to reduce
duplicated code for future maintenance.
Manually tested refactoring of toString by tracing thrown exceptions.
* interpreter/Interpreter.h:
(JSC::StackFrame::toString):
(JSC::StackFrame::friendlySourceURL):
(JSC::StackFrame::friendlyFunctionName):
(JSC::StackFrame::friendlyLineNumber):
Source/WebCore:
Implemented stub for createScriptCallStack to call into
Interpreter and extract the current stack frames, iterate
through the frames and create the return result required.
No new tests, manually tested thrown exception and inspector
tracebacks.
* bindings/js/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStack):
LayoutTests:
Updated test results now that createScriptCallStack is functional.
* http/tests/inspector/console-resource-errors-expected.txt:
* http/tests/inspector/console-xhr-logging-async-expected.txt:
* http/tests/inspector/console-xhr-logging-expected.txt:
* http/tests/inspector/network/script-as-text-loading-expected.txt:
* inspector/timeline/timeline-animation-frame-expected.txt:
* inspector/timeline/timeline-layout-expected.txt:
* inspector/timeline/timeline-mark-timeline-expected.txt:
* inspector/timeline/timeline-network-resource-expected.txt:
* inspector/timeline/timeline-paint-expected.txt:
* inspector/timeline/timeline-parse-html-expected.txt:
* inspector/timeline/timeline-time-stamp-expected.txt:
* inspector/timeline/timeline-timer-expected.txt:
* platform/chromium/http/tests/inspector/console-xhr-logging-async-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121871
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
danakj@chromium.org [Wed, 4 Jul 2012 20:50:54 +0000 (20:50 +0000)]
[chromium] Respect memory needed for RenderSurfaces when reserving contents textures
https://bugs.webkit.org/show_bug.cgi?id=89901
Reviewed by Adrienne Walker.
Source/WebCore:
Treat the memory allocation given to a tab as an allocation for its
contents and surfaces. Then only use up contents memory such that
the surface textures will still fit within the limit. Report histograms
for the amount of contents and surface texture memory used by each
frame generated by the main thread.
In the context of ubercomp, each nested compositor will use less memory
for contents ensuring that the root compositor has space for surfaces
caused by that nested compositor.
Since surface memory can no longer be taken by contents, we remove the
preferred memory limit from the texture manager.
Tests: TiledLayerChromiumTest.dontAllocateContentsWhenTargetSurfaceCantBeAllocated
CCPrioritizedTextureTest.renderSurfacesReduceMemoryAvailableOutsideRootSurface
CCPrioritizedTextureTest.renderSurfacesReduceMemoryAvailableForRequestLate
CCPrioritizedTextureTest.whenRenderSurfaceNotAvailableTexturesAlsoNotAvailable
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawBackgroundFilters):
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
(WebCore::ScrollbarLayerChromium::setTexturePriorities):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::setTexturePrioritiesInRect):
* platform/graphics/chromium/TiledLayerChromium.h:
(TiledLayerChromium):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::prioritizeTextures):
(WebCore::CCLayerTreeHost::paintLayerContents):
* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
(WebCore::CCOverdrawMetrics::CCOverdrawMetrics):
(WebCore::CCOverdrawMetrics::didUseContentsTextureMemoryBytes):
(WebCore):
(WebCore::CCOverdrawMetrics::didUseRenderSurfaceTextureMemoryBytes):
(WebCore::CCOverdrawMetrics::recordMetricsInternal):
* platform/graphics/chromium/cc/CCOverdrawMetrics.h:
(CCOverdrawMetrics):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:
(WebCore::CCPrioritizedTextureManager::CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::prioritizeTextures):
(WebCore::CCPrioritizedTextureManager::requestLate):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:
(WebCore::CCPrioritizedTextureManager::create):
(WebCore::CCPrioritizedTextureManager::memoryForRenderSurfacesBytes):
(CCPrioritizedTextureManager):
* platform/graphics/chromium/cc/CCPriorityCalculator.cpp:
(WebCore::CCPriorityCalculator::uiPriority):
(WebCore::CCPriorityCalculator::visiblePriority):
(WebCore):
(WebCore::CCPriorityCalculator::renderSurfacePriority):
(WebCore::CCPriorityCalculator::priorityFromDistance):
(WebCore::CCPriorityCalculator::priorityFromVisibility):
* platform/graphics/chromium/cc/CCPriorityCalculator.h:
(CCPriorityCalculator):
Source/WebKit/chromium:
* tests/CCPrioritizedTextureTest.cpp:
(WTF::CCPrioritizedTextureTest::createManager):
(WTF::TEST_F):
(WTF):
* tests/CCTiledLayerTestCommon.cpp:
(WebKitTests::FakeTiledLayerChromium::setTexturePriorities):
(WebKitTests):
* tests/CCTiledLayerTestCommon.h:
(FakeTiledLayerChromium):
* tests/TiledLayerChromiumTest.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121870
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
wingo@igalia.com [Wed, 4 Jul 2012 20:32:26 +0000 (20:32 +0000)]
[GTK] Enable parallel GC
https://bugs.webkit.org/show_bug.cgi?id=90568
Reviewed by Martin Robinson.
Source/JavaScriptCore:
* runtime/Options.cpp: Include <algorithm.h> for std::min.
Source/WTF:
* wtf/Platform.h: Add GTK to the ENABLE_PARALLEL_GC party.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121869
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Wed, 4 Jul 2012 19:23:21 +0000 (19:23 +0000)]
Unreviewed GTK gardening, skip another two http tests that
timeout and just extend the complete build cycle.
* platform/gtk/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121868
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 17:47:41 +0000 (17:47 +0000)]
Unreviewed, rolling out r121862.
http://trac.webkit.org/changeset/121862
https://bugs.webkit.org/show_bug.cgi?id=90569
It broke built-product-archive for GTK, Qt and EFL (Requested
by svillar on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-04
* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121867
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 17:43:12 +0000 (17:43 +0000)]
Text Autosizing: Add basic framework
https://bugs.webkit.org/show_bug.cgi?id=88655
This adds a highly simplified foundation that subsequent Text Autosizing patches
can build upon. I've refactored this code (since the earlier combined diff
uploaded to http://webkit.org/b/84186) to touch as few files as possible.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
No new tests. I plan to add a test framework as my next Text Autosizing patch.
* WebCore.gypi:
* dom/Document.cpp:
(WebCore::Document::Document):
* dom/Document.h:
(WebCore):
(Document):
(WebCore::Document::textAutosizer):
* page/FrameView.cpp:
(WebCore::FrameView::layout):
* rendering/TextAutosizer.cpp: Added.
(WebCore):
(WebCore::TextAutosizer::TextAutosizer):
(WebCore::TextAutosizer::~TextAutosizer):
(WebCore::TextAutosizer::create):
(WebCore::TextAutosizer::boostSubtree):
(WebCore::TextAutosizer::boostBlock):
(WebCore::TextAutosizer::boostText):
(WebCore::TextAutosizer::treatAsInline):
(WebCore::TextAutosizer::traverseNext):
(WebCore::TextAutosizer::cloneRenderStyleWithState):
* rendering/TextAutosizer.h: Added.
(WebCore):
(TextAutosizer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121866
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
caseq@chromium.org [Wed, 4 Jul 2012 17:39:26 +0000 (17:39 +0000)]
Unreviewed, rolling out r121767.
http://trac.webkit.org/changeset/121767
https://bugs.webkit.org/show_bug.cgi?id=89584
Crashes inspected page while recording timeline due to
conflict with BeginFrame in record stack
Source/WebCore:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::willSendResourceRequest):
(WebCore::InspectorTimelineAgent::willProcessTask):
(WebCore::InspectorTimelineAgent::didProcessTask):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
(WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics.prototype._onRecordAdded):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineCategoryStrips.prototype.update.appendRecord):
(WebInspector.TimelineCategoryStrips.prototype.update):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._createStatusbarButtons):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.categories):
(WebInspector.TimelinePresentationModel.recordStyle):
(WebInspector.TimelinePresentationModel.categoryForRecord):
(WebInspector.TimelinePresentationModel.forAllRecords):
(WebInspector.TimelinePresentationModel.prototype.addRecord):
LayoutTests:
* inspector/timeline-dfs-expected.txt: Removed.
* inspector/timeline-dfs.html: Removed.
* inspector/timeline/timeline-enum-stability-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121865
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
danakj@chromium.org [Wed, 4 Jul 2012 17:27:20 +0000 (17:27 +0000)]
[chromium] Clear RenderSurfaces still when no idle paint will be done
https://bugs.webkit.org/show_bug.cgi?id=90553
Reviewed by Adrienne Walker.
Source/WebCore:
Currently if idle painting is disabled, updateLayers() will early-out.
But this prevents it from doing cleanup and clearing all RenderSurface
pointers, leaving the layer tree in an unexpected state.
Tests: CCLayerTreeHostTestCompositeAndReadbackCleanup
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::updateLayers):
Source/WebKit/chromium:
* tests/CCLayerTreeHostTest.cpp:
(CCLayerTreeHostTestCompositeAndReadbackCleanup):
(WTF::CCLayerTreeHostTestCompositeAndReadbackCleanup::CCLayerTreeHostTestCompositeAndReadbackCleanup):
(WTF::CCLayerTreeHostTestCompositeAndReadbackCleanup::beginTest):
(WTF::CCLayerTreeHostTestCompositeAndReadbackCleanup::afterTest):
(WTF):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121864
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
danakj@chromium.org [Wed, 4 Jul 2012 17:18:17 +0000 (17:18 +0000)]
[chromium] Remove CCLayerTreeHostTestThreadOnly class to cleanup CCLayerTreeHostTests
https://bugs.webkit.org/show_bug.cgi?id=90556
Reviewed by Adrienne Walker.
Currently many tests that run both single and threaded versions subclass
from CCLayerTreeHostTestThreadOnly just from copy/pasting. The class
only adds a runTestThreaded() which calls runTest(true). Many other
tests do run only in threaded mode call runTest(true) themselves, making
for an inconsistent mess.
We remove CCLayerTreeHostTestThreadOnly class, so we don't have tests
inheriting it that are not thread-only. And now all tests that are
thread-only call runTest(true) consistently.
* tests/CCLayerTreeHostTest.cpp:
(WTF::TEST_F):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121863
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sergio@webkit.org [Wed, 4 Jul 2012 16:43:03 +0000 (16:43 +0000)]
Hidden dirs are not copied when creating the built product archive
https://bugs.webkit.org/show_bug.cgi?id=90559
Reviewed by Carlos Garcia Campos.
Hidden dirs are not copied inside the built product archive because
the recursive copy command was ignoring them. We need those hidden
directories for the GTK WebKit2 testing bot to work fine.
* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct): removed the trailing "*" from the copy
command.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121862
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 4 Jul 2012 16:16:01 +0000 (16:16 +0000)]
Text Autosizing: Add compile flag and runtime setting
https://bugs.webkit.org/show_bug.cgi?id=87394
.:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* configure.ac:
Source/JavaScriptCore:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
This patch renames Font Boosting to Text Autosizing and adds compile guards around the runtime setting.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
No functionality yet, so no new tests.
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* Target.pri:
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setTextAutosizingEnabled):
* page/Settings.h:
(Settings):
(WebCore::Settings::textAutosizingEnabled):
Source/WebKit/chromium:
This patch renames Font Boosting to Text Autosizing and adds compile guards around the runtime setting.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* features.gypi:
* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setTextAutosizingEnabled):
* src/WebSettingsImpl.h:
(WebSettingsImpl):
Source/WebKit/mac:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
Tools:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:
WebKitLibraries:
This patch renames Font Boosting to Text Autosizing.
Patch by John Mellor <johnme@chromium.org> on 2012-07-04
Reviewed by Adam Barth.
* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121861
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
apavlov@chromium.org [Wed, 4 Jul 2012 16:10:45 +0000 (16:10 +0000)]
Web Inspector: Emulate pseudo styles (hover etc.) of non-selected elements
https://bugs.webkit.org/show_bug.cgi?id=86630
Reviewed by Pavel Feldman.
Source/WebCore:
- A map of pseudo-states for all bound DOM nodes is maintained in the backend and queried whenever StyleResolver
calculates the effective element style.
- In the frontend, markers are introduced to distinguish elements that have forced pseudo styles set for them.
Additionally, dimmed markers are added for collapsed nodes, whose descendants have forced pseudo styles.
More ElementDecorator subtypes will be added for other types of markers.
Test: inspector/styles/force-pseudo-state.html
* English.lproj/localizedStrings.js:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::clearFrontend):
(WebCore::InspectorCSSAgent::reset):
(WebCore::InspectorCSSAgent::forcePseudoState):
(WebCore::InspectorCSSAgent::recalcStyleForPseudoStateIfNeeded):
(WebCore::InspectorCSSAgent::elementForId):
(WebCore::InspectorCSSAgent::didRemoveDocument):
(WebCore::InspectorCSSAgent::didRemoveDOMNode):
(WebCore::InspectorCSSAgent::resetPseudoStates):
* inspector/InspectorCSSAgent.h:
(InspectorCSSAgent):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::didRemoveDOMNode):
* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel.get this):
(WebInspector.ElementsPanel):
(WebInspector.ElementsPanel.prototype._setPseudoClassForNodeId):
* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline):
(WebInspector.ElementsTreeOutline.prototype._createNodeDecorators):
(WebInspector.ElementsTreeOutline.prototype.updateOpenCloseTags):
(WebInspector.ElementsTreeOutline.ElementDecorator):
(WebInspector.ElementsTreeOutline.ElementDecorator.prototype.decorate):
(WebInspector.ElementsTreeOutline.ElementDecorator.prototype.decorateAncestor):
(WebInspector.ElementsTreeOutline.PseudoStateDecorator):
(WebInspector.ElementsTreeOutline.PseudoStateDecorator.prototype.decorate):
(WebInspector.ElementsTreeOutline.PseudoStateDecorator.prototype.decorateAncestor):
(WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
(WebInspector.ElementsTreeElement.prototype._populateForcedPseudoStateItems):
(WebInspector.ElementsTreeElement.prototype.updateTitle):
(WebInspector.ElementsTreeElement.prototype._createDecoratorElement):
(WebInspector.ElementsTreeElement.prototype._updateDecorations):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane):
(WebInspector.StylesSidebarPane.prototype.get forcedPseudoClasses):
(WebInspector.StylesSidebarPane.prototype._updateForcedPseudoStateInputs):
(WebInspector.StylesSidebarPane.prototype.update):
(WebInspector.StylesSidebarPane.prototype._refreshUpdate):
(WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
(WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
(WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickListener):
* inspector/front-end/elementsPanel.css:
(#elements-content .elements-gutter-decoration):
(#elements-content .elements-gutter-decoration.elements-has-decorated-children):
LayoutTests:
* inspector/styles/force-pseudo-state-expected.txt: Added.
* inspector/styles/force-pseudo-state.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121860
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pfeldman@chromium.org [Wed, 4 Jul 2012 15:36:28 +0000 (15:36 +0000)]
Web Inspector: fix search on the network panel.
https://bugs.webkit.org/show_bug.cgi?id=90557
Reviewed by Vsevolod Vlasov.
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._highlightNthMatchedRequest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121859
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kseo@webkit.org [Wed, 4 Jul 2012 15:31:53 +0000 (15:31 +0000)]
Stop tracking line number in tokenizer
https://bugs.webkit.org/show_bug.cgi?id=90544
Reviewed by Adam Barth.
Because SegmentedString knows how to track the current line and column,
a tokenizer does not need to keep track of the current line by itself.
No behavior change, so no new tests.
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer):
(WebCore::HTMLDocumentParser::lineNumber):
(WebCore::HTMLDocumentParser::textPosition):
* html/parser/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::reset):
(WebCore::HTMLTokenizer::flushBufferedEndTag):
(WebCore):
(WebCore::HTMLTokenizer::nextToken):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processScriptStartTag):
* html/track/WebVTTTokenizer.cpp:
(WebCore::WebVTTTokenizer::reset):
(WebCore::WebVTTTokenizer::nextToken):
* platform/text/SegmentedString.cpp:
(WebCore::SegmentedString::advanceAndUpdateLineNumberSlowCase):
* platform/text/SegmentedString.h:
(WebCore::SegmentedString::advancePastNewlineAndUpdateLineNumber):
(WebCore::SegmentedString::advanceAndUpdateLineNumber):
(SegmentedString):
* xml/parser/MarkupTokenizerBase.h:
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::peek):
(WebCore::MarkupTokenizerBase::InputStreamPreprocessor::advance):
(WebCore::MarkupTokenizerBase::emitAndResumeIn):
(WebCore::MarkupTokenizerBase::emitEndOfFile):
(WebCore::MarkupTokenizerBase::reset):
(MarkupTokenizerBase):
* xml/parser/MarkupTokenizerInlineMethods.h:
(WebCore):
* xml/parser/XMLTokenizer.cpp:
(WebCore::XMLTokenizer::nextToken):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121858
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Wed, 4 Jul 2012 15:25:35 +0000 (15:25 +0000)]
[CMAKE] Add GENERATE_BINDINGS macro to share the codes which use generate-bindings.pl.
https://bugs.webkit.org/show_bug.cgi?id=90258
Reviewed by Rob Buis.
.:
This new macro calls generate-bindings.pl and append generated sources
into proper source list.
* Source/cmake/WebKitMacros.cmake:
Source/WebCore:
Use GENERATE_BINDINGS instead of using generate-bindings.pl directly.
* UseJSC.cmake:
* UseV8.cmake:
* PlatformBlackBerry.cmake:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121857
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vestbo@webkit.org [Wed, 4 Jul 2012 15:19:33 +0000 (15:19 +0000)]
[Qt] Replace deprecated IN_PWD with PWD
Reviewed by Csaba Osztrogonác.
* qmake/mkspecs/features/default_pre.prf:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121856
268f45cc-cd09-0410-ab3c-
d52691b4dbfc