commit-queue@webkit.org [Tue, 16 Apr 2013 15:34:18 +0000 (15:34 +0000)]
[EFL][WK2] Add an API for getting context menu item's parent menu
https://bugs.webkit.org/show_bug.cgi?id=107510
Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2013-04-16
Reviewed by Kenneth Rohde Christiansen.
Added parent menu support and API for Ewk_Context_Menu_Item, to
allow selecting context menus using Elementary widgets.
Context menu unit test updated with new function.
* UIProcess/API/efl/ewk_context_menu.cpp:
(EwkContextMenu::EwkContextMenu):
* UIProcess/API/efl/ewk_context_menu_item.cpp:
(EwkContextMenuItem::EwkContextMenuItem):
(ewk_context_menu_item_parent_menu_get):
* UIProcess/API/efl/ewk_context_menu_item.h:
* UIProcess/API/efl/ewk_context_menu_item_private.h:
(EwkContextMenuItem::create):
(EwkContextMenuItem::parentMenu):
(EwkContextMenuItem::setParentMenu):
(EwkContextMenuItem):
* UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
(showContextMenu):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
anilsson@rim.com [Tue, 16 Apr 2013 15:07:18 +0000 (15:07 +0000)]
[BlackBerry] Accelerated animation regression with GL renderer
https://bugs.webkit.org/show_bug.cgi?id=114685
Reviewed by Rob Buis.
Internally reviewed by Filip Spacek.
GL renderer changed the assumption made in accelerated animation
code that rendering the contents of AC layer tiles would be the
slow operation. By starting animations after the slow operation,
the appearance of the animation could be made smooth.
Rendering tiles may still be slow, but now something else can be
slow too: drawing display lists to backing. And it's running on
the compositing thread, can happen at any time and will interrupt
accelerated animations.
Improved the situation by calling an API for updating backing to
schedule the delay at a convenient time. We try to update backing
before starting animations. However, future backing updates can
still interrupt the running animation and cause dropped frames.
Further improvements to animation smoothness will probably require
optimizations in the GL renderer.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/FrameLayers.cpp:
(BlackBerry::WebKit::FrameLayers::notifyAnimationsStarted):
(WebKit):
* WebKitSupport/FrameLayers.h:
(FrameLayers):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 16 Apr 2013 12:59:15 +0000 (12:59 +0000)]
REGRESSION (r148506): Use of deprecated libsoup API
https://bugs.webkit.org/show_bug.cgi?id=114679
Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-04-16
Reviewed by Gyuyoung Kim.
Remove deprecated libsoup API usage.
* ewk/ewk_network.cpp:
(ewk_network_proxy_uri_set):
(ewk_network_proxy_uri_get):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 16 Apr 2013 11:46:09 +0000 (11:46 +0000)]
Fix release builds with !LOG_DISABLED.
* Platform/mac/Logging.mac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 16 Apr 2013 10:05:29 +0000 (10:05 +0000)]
REGRESSION(r148128): window.resizeTo doesn't work from Safari address bar.
<rdar://problem/
13635894>
<http://webkit.org/b/114561>
Reviewed by Sam Weinig.
Suppressing window geometry changes while any user gesture is active was a bit too restrictive,
and broke legitimate use-cases. Narrow it down to checking EventHandler::mousePressed().
No test yet, adding one is tracked by <http://webkit.org/b/114561>.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::allowedToChangeWindowGeometry):
Added to share code between all DOMWindow functions that alter window geometry.
(WebCore::DOMWindow::moveBy):
(WebCore::DOMWindow::moveTo):
(WebCore::DOMWindow::resizeBy):
(WebCore::DOMWindow::resizeTo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Tue, 16 Apr 2013 09:40:15 +0000 (09:40 +0000)]
[GTK][EFL] Remove deprecated libsoup API usage
https://bugs.webkit.org/show_bug.cgi?id=104894
Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-04-16
Reviewed by Philippe Normand.
Source/WebCore:
Based on a patch by Claudio Saavedra <csaavedra@igalia.com>.
Remove LIBSOUP_USE_UNSTABLE_REQUEST_API and only include
libsoup/soup.h.
* platform/network/ResourceHandleInternal.h:
* platform/network/soup/GOwnPtrSoup.cpp:
* platform/network/soup/ProxyResolverSoup.h:
* platform/network/soup/ResourceErrorSoup.cpp:
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ensureSessionIsInitialized): No need to add the requester
feature.
(WebCore::createSoupRequestAndMessageForHandle): SoupSession has a
requester API, use it.
Source/WebKit/efl:
Remove LIBSOUP_USE_UNSTABLE_REQUEST_API and only include
libsoup/soup.h.
Source/WebKit2:
Remove LIBSOUP_USE_UNSTABLE_REQUEST_API and only include
libsoup/soup.h.
* WebProcess/Cookies/soup/WebKitSoupCookieJarSqlite.h:
* WebProcess/efl/WebProcessMainEfl.cpp:
* WebProcess/gtk/WebProcessMainGtk.cpp:
* WebProcess/soup/WebKitSoupRequestGeneric.h:
* WebProcess/soup/WebProcessSoup.cpp:
* WebProcess/soup/WebSoupRequestManager.cpp:
(WebKit::WebSoupRequestManager::registerURIScheme): Remove requester and
use method soup_session_add_feature_by_type().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Tue, 16 Apr 2013 09:35:23 +0000 (09:35 +0000)]
[EFL] Bump libsoup dependency to 2.42.0
https://bugs.webkit.org/show_bug.cgi?id=113927
Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-04-16
Reviewed by Gyuyoung Kim.
Update libsoup required version to v2.42.0 and GLib to v2.36.0 as
required by libsoup for EFL port.
.:
* Source/cmake/OptionsEfl.cmake:
Tools:
* efl/jhbuild.modules:
* efl/patches/libsoup-2.40-auth-fix.patch: Removed as it's already
included in v2.42.0.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Tue, 16 Apr 2013 09:29:37 +0000 (09:29 +0000)]
Remove more traces of the now-obsolete support for V8
https://bugs.webkit.org/show_bug.cgi?id=114657
Reviewed by Ryosuke Niwa.
In addition to passing existing tests, I verified that the ElementFactory
and ElementWrapperFactory files were all textually identical before and after.
* dom/CustomEvent.cpp:
(WebCore): Remove Use(V8) bock.
* dom/CustomEvent.h:
(CustomEvent): ditto
* dom/MessageEvent.cpp:
(WebCore::MessageEvent::MessageEvent): ditto
(WebCore::MessageEvent::initMessageEvent): ditto
* dom/Node.h:
(Node): ditto
* dom/make_event_factory.pl:
(generateImplementation): Remove V8 support.
* dom/make_names.pl: Remove gobs of V8 support and simplify.
(printJSElementIncludes):
(printConditionalElementIncludes):
(printFactoryCppFile):
(printWrapperFunctions):
(printWrapperFactoryCppFile):
(printWrapperFactoryHeaderFile):
* inspector/InjectedScriptCanvasModuleSource.js: Remove V8 stack
trace code.
* platform/qt/PlatformSupport.h: Remove a macro only used for V8
bindings.
* svg/SVGZoomAndPan.h:
(SVGZoomAndPan): Remove mention of V8 from comment.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 09:26:10 +0000 (09:26 +0000)]
Remove Account class from committers.py
https://bugs.webkit.org/show_bug.cgi?id=114671
Reviewed by Csaba Osztrogonác.
Account class was added to support watch list email addresses that are not associated with
a particular contributor but nobody uses these email address since Chromium port forked.
Remove it.
Also removed account_by_login from CommitterList since it was never called except its unittests.
* Scripts/webkitpy/common/checkout/changelog.py:
* Scripts/webkitpy/common/config/committers.py:
(Contributor):
(Contributor.matches_glob):
(Reviewer.__init__):
(CommitterList.__init__):
(CommitterList._email_to_account_map):
(CommitterList._login_to_account_map):
(CommitterList.contributors_by_fuzzy_match):
(CommitterList.contributor_by_email):
(CommitterList.contributor_by_name):
(CommitterList.committer_by_email):
(CommitterList.reviewer_by_email):
* Scripts/webkitpy/common/config/committers_unittest.py:
(CommittersTest.test_committer_lookup):
* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(Bugzilla._commit_queue_flag):
* Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
(test_commit_queue_flag):
* Scripts/webkitpy/common/watchlist/watchlistparser.py:
(WatchListParser._validate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mkwst@chromium.org [Tue, 16 Apr 2013 08:51:51 +0000 (08:51 +0000)]
Unreviewed update to the watchlist.
Removing 'mkwst+watchlist@chromium.org' from committers.py and the
watchist file; moving to 'mkwst@chromium.org' instead.
* Scripts/webkitpy/common/config/committers.py:
* Scripts/webkitpy/common/config/watchlist:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 08:36:06 +0000 (08:36 +0000)]
Move webkitpy.layout_tests.port to webkitpy.port
https://bugs.webkit.org/show_bug.cgi?id=114668
Reviewed by Maciej Stachowiak.
Moved. Port objects knows a lot more than just layout_tests. They doesn't belong down in layout_tests.
* Scripts/webkitpy/common/host.py:
* Scripts/webkitpy/common/host_mock.py:
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
* Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py:
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
* Scripts/webkitpy/layout_tests/lint_test_expectations.py:
* Scripts/webkitpy/layout_tests/port: Removed.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
* Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:
* Scripts/webkitpy/layout_tests/servers/http_server_base_unittest.py:
* Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:
* Scripts/webkitpy/layout_tests/views/printing_unittest.py:
* Scripts/webkitpy/performance_tests/perftest.py:
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
* Scripts/webkitpy/port: Copied from Tools/Scripts/webkitpy/layout_tests/port.
* Scripts/webkitpy/port/apple.py:
* Scripts/webkitpy/port/base.py:
* Scripts/webkitpy/port/base_unittest.py:
* Scripts/webkitpy/port/config_unittest.py:
(ConfigTest.test_default_configuration__standalone):
* Scripts/webkitpy/port/driver_unittest.py:
* Scripts/webkitpy/port/efl.py:
* Scripts/webkitpy/port/efl_unittest.py:
* Scripts/webkitpy/port/factory.py:
* Scripts/webkitpy/port/factory_unittest.py:
* Scripts/webkitpy/port/gtk.py:
* Scripts/webkitpy/port/gtk_unittest.py:
* Scripts/webkitpy/port/image_diff.py:
* Scripts/webkitpy/port/image_diff_unittest.py:
* Scripts/webkitpy/port/leakdetector_unittest.py:
* Scripts/webkitpy/port/mac.py:
* Scripts/webkitpy/port/mac_unittest.py:
* Scripts/webkitpy/port/mock_drt.py:
* Scripts/webkitpy/port/mock_drt_unittest.py:
* Scripts/webkitpy/port/port_testcase.py:
* Scripts/webkitpy/port/qt.py:
* Scripts/webkitpy/port/qt_unittest.py:
* Scripts/webkitpy/port/server_process_unittest.py:
* Scripts/webkitpy/port/test.py:
* Scripts/webkitpy/port/win.py:
* Scripts/webkitpy/port/win_unittest.py:
* Scripts/webkitpy/port/xvfbdriver.py:
* Scripts/webkitpy/port/xvfbdriver_unittest.py:
* Scripts/webkitpy/tool/bot/botinfo_unittest.py:
* Scripts/webkitpy/tool/commands/gardenomatic.py:
* Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
* Scripts/webkitpy/tool/commands/queries.py:
* Scripts/webkitpy/tool/commands/queries_unittest.py:
* Scripts/webkitpy/tool/commands/rebaseline.py:
* Scripts/webkitpy/tool/servers/gardeningserver.py:
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
* Scripts/webkitpy/tool/servers/rebaselineserver.py:
* Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 08:25:14 +0000 (08:25 +0000)]
Unreviewed, rolling out r148498.
http://trac.webkit.org/changeset/148498
https://bugs.webkit.org/show_bug.cgi?id=114669
Appears to have broken EWS (Requested by rniwa on #webkit).
* Scripts/webkitpy/common/config/ews.json: Removed.
* Scripts/webkitpy/tool/commands/__init__.py:
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(AbstractEarlyWarningSystem):
(AbstractEarlyWarningSystem.__init__):
(AbstractEarlyWarningSystem.handle_script_error.does):
(GtkEWS):
(GtkWK2EWS):
(EflEWS):
(QtEWS):
(QtWK2EWS):
(WinEWS):
(MacEWS):
(MacWK2EWS):
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSystemTest._default_expected_logs):
(_test_ews):
(test_ewses):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 16 Apr 2013 08:15:34 +0000 (08:15 +0000)]
Web Inspector: [Network] Cover the type of preflight xhr.
https://bugs.webkit.org/show_bug.cgi?id=113471.
Patch by Pan Deng <pan.deng@intel.com> on 2013-04-16
Reviewed by Vsevolod Vlasov.
Add the Network resource type test to make sure the xhr-preflight is "xhr".
* http/tests/inspector/network-preflight-options-expected.txt:
* http/tests/inspector/network-preflight-options.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kadam@inf.u-szeged.hu [Tue, 16 Apr 2013 07:55:15 +0000 (07:55 +0000)]
[Qt] Unreviewed gardening.
* platform/qt/TestExpectations: Skipped a failing test after r148203. Unskip now passing test after r147619.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 07:43:56 +0000 (07:43 +0000)]
Isolate Early Warning System definitions into a JSON
https://bugs.webkit.org/show_bug.cgi?id=114558
Reviewed by Benjamin Poulain.
Added ews.json to common/config, and made tool/commands/__init__.py call
AbstractEarlyWarningSystem.load_ews_classes to instantiate classes based on ews.json.
* Scripts/webkitpy/common/config/ews.json: Extracted from earlywarningsystem.py.
* Scripts/webkitpy/tool/commands/__init__.py:
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(AbstractEarlyWarningSystem):
(AbstractEarlyWarningSystem.__init__):
(AbstractEarlyWarningSystem.load_ews_classes): Added. Loads ews.json.
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(EarlyWarningSystemTest._default_expected_logs):
(_test_ews):
(test_ewses):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 07:36:29 +0000 (07:36 +0000)]
Potential use after free in ApplyStyleCommand::splitAncestorsWithUnicodeBidi
https://bugs.webkit.org/show_bug.cgi?id=114664
Reviewed by Oliver Hunt.
Use RefPtr as needed.
No new tests since this bug was discovered by code inspection.
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 16 Apr 2013 06:12:22 +0000 (06:12 +0000)]
Web Inspector: Make var and function declarations work again in the Console.
https://webkit.org/b/114534
rdar://problem/
13614477
Reviewed by Oliver Hunt.
Source/WebCore:
* inspector/InjectedScriptSource.js:
(InjectedScript.prototype._evaluateOn): Use 'with' when not evaluating
on a call frame.
LayoutTests:
* inspector/console/command-line-api-expected.txt:
* inspector/console/console-eval-syntax-error-expected.txt:
* inspector/extensions/extensions-eval-expected.txt:
* platform/mac/http/tests/inspector/console-resource-errors-expected.txt:
Updated test results.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 16 Apr 2013 05:56:18 +0000 (05:56 +0000)]
Web Inspector: Add missing Localized strings
https://bugs.webkit.org/show_bug.cgi?id=114656
Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-04-15
Reviewed by Timothy Hatcher.
No tests because no behavior change is expected.
* English.lproj/localizedStrings.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 03:41:29 +0000 (03:41 +0000)]
Unreviewed, rolling out r148488.
http://trac.webkit.org/changeset/148488
https://bugs.webkit.org/show_bug.cgi?id=114660
Roll back in r148462 since it was a false positive. (Requested
by rniwa on #webkit).
* wtf/FastMalloc.cpp:
(WTF):
(WTF::setThreadHeap):
(WTF::TCMalloc_ThreadCache::GetThreadHeap):
(WTF::TCMalloc_ThreadCache::InitTSD):
* wtf/ThreadSpecificWin.cpp:
(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 03:37:15 +0000 (03:37 +0000)]
Windows clean build fix after r148479.
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 16 Apr 2013 02:55:44 +0000 (02:55 +0000)]
Unreviewed, rolling out r148462.
http://trac.webkit.org/changeset/148462
https://bugs.webkit.org/show_bug.cgi?id=114658
Broke Windows builds (Requested by rniwa on #webkit).
* wtf/FastMalloc.cpp:
(WTF):
(WTF::setThreadHeap):
(WTF::TCMalloc_ThreadCache::GetThreadHeap):
(WTF::TCMalloc_ThreadCache::InitTSD):
* wtf/ThreadSpecificWin.cpp:
(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Tue, 16 Apr 2013 02:52:00 +0000 (02:52 +0000)]
Rename restartedPlugin to isRestartedPlugin. This was
review feedback from r148038 that I thought I fixed
everywhere but failed.
https://bugs.webkit.org/show_bug.cgi?id=114233
* html/HTMLPlugInElement.h:
(WebCore::HTMLPlugInElement::isRestartedPlugin): Prefix with "is".
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::setDisplayState):
(WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired):
* html/HTMLPlugInImageElement.h:
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintContents):
* rendering/RenderLayerBacking.cpp:
(WebCore::isRestartedPlugin):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Tue, 16 Apr 2013 02:15:00 +0000 (02:15 +0000)]
Remove V8 attribtues from IDLAttributes.txt
https://bugs.webkit.org/show_bug.cgi?id=114651
Reviewed by Sam Weinig.
No tests because no behavior change is expected.
* bindings/scripts/IDLAttributes.txt: Remove V8 attribtues.
* html/track/TextTrackList.idl: Remove a stray V8-specific attribute
(so I guess this change is not useless)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 16 Apr 2013 01:34:20 +0000 (01:34 +0000)]
WebKit should not expose AXSubrole:AXDescriptionList on Mountain Lion as it causes a regression in VoiceOver behavior
https://bugs.webkit.org/show_bug.cgi?id=113975
Patch by James Craig <james@cookiecrook.com> on 2013-04-15
Reviewed by Chris Fleizach.
Serve NSAccessibilityDescriptionListSubrole or NSAccessibilityDefinitionListSubrole
depending on platform. Updated existing test coverage.
Source/WebCore:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper subrole]):
LayoutTests:
* platform/mac/accessibility/lists-expected.txt:
* platform/mac/accessibility/role-subrole-roledescription-expected.txt:
* platform/mac/accessibility/role-subrole-roledescription.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 16 Apr 2013 01:20:31 +0000 (01:20 +0000)]
Source/WebKit/mac: plugins/get-url-beforeunload-destroys-plugin.html crashes in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=114653
<rdar://problem/
13659541>
Reviewed by Sam Weinig.
Protect the NetscapePluginInstanceProxy since it can otherwise go away.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::performRequest):
LayoutTests: plugins/get-url-beforeunload-destroys-plugin.html crashes in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=114653
Reviewed by Sam Weinig.
Move this test back now that it passes in WK1.
* http/tests/plugins/get-url-beforeunload-destroys-plugin-expected.txt: Renamed from LayoutTests/platform/mac-wk2/http/tests/plugins/get-url-beforeunload-destroys-plugin-expected.txt.
* http/tests/plugins/get-url-beforeunload-destroys-plugin.html: Renamed from LayoutTests/platform/mac-wk2/http/tests/plugins/get-url-beforeunload-destroys-plugin.html.
* http/tests/plugins/resources/notify-done.html: Renamed from LayoutTests/platform/mac-wk2/http/tests/plugins/resources/notify-done.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Tue, 16 Apr 2013 01:05:39 +0000 (01:05 +0000)]
Plugins that resize might need to be snapshotted.
https://bugs.webkit.org/show_bug.cgi?id=102157
<rdar://problem/
12696259>
Reviewed by Tim Horton.
Source/WebCore:
A plugin could avoid snapshotting if it started very
small (below the threshold where we autostart), and then
resized to be large (above the threshold). Detect this
case and tell the plugin to snapshot.
There unfortunately is a bit of state to track when doing
this. We have to start the snapshotting in a post-layout
task, so we carry a flag to say we're checking size but
not wanting the plugin to update (which would restart it).
We also might be a plugin that would have already restarted
due to a similar plugin being clicked or detected as dominant.
So this patch introduces a member variable that tracks what
decision has been made on snapshotting.
I also added some more logging to be more clear about what is
happening to plugins going through the snapshot process, and
changed the order of the tests in the algorithm so that domain
detection comes before examining the size.
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initialise
the two new member variables.
(WebCore::HTMLPlugInImageElement::setDisplayState): Mark a restarted
plugin as NeverSnapshot. This means that if it later resizes above the
threshold, it won't trigger the snapshot detection.
(WebCore::HTMLPlugInImageElement::checkSnapshotStatus): Renamed from
updateSnapshotInfo. This now updates the snapshot, but also runs
the check for size changes.
(WebCore::addPlugInsFromNodeListMatchingPlugInOrigin): Gather all plugins
that look like a restarting plugin, not just those snapshotted. That
way they can all be marked as NeverSnapshot.
(WebCore::HTMLPlugInImageElement::restartSimilarPlugIns): Bless every
plugin that looks similar, whether or not it is snapshotted.
(WebCore::HTMLPlugInImageElement::userDidClickSnapshot): More logging.
(WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn): Ditto.
(WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting): New
method. If the plugin was below the threshold and is now above it,
begin the snapshotting process.
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Plugins
that were marked as NeverSnapshot should start immediately. Move the origin
test earlier in the method. If a plugin avoided snapshotting due to size,
remember the size.
(WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn): Mark the
plugin as NeverSnapshot.
* html/HTMLPlugInImageElement.h:
(HTMLPlugInImageElement): Four new member variables:
- the decision we made regarding snapshotting (or not), uses the SnapshotDecision enum
- the size when it avoided snapshotting
- a flag to indicate the post layout update was triggered due to
a size change
(WebCore::HTMLPlugInImageElement::needsCheckForSizeChange): New method.
(WebCore::HTMLPlugInImageElement::setNeedsCheckForSizeChange): New method.
(WebCore::HTMLPlugInImageElement::snapshotDecision): Return the decision
regarding snapshotting or not snapshotting.
* page/FrameView.cpp:
(WebCore::FrameView::addWidgetToUpdate): Guard updating the widget. We don't
want to do it when we're checking for a size change in the plugin.
(WebCore::FrameView::updateWidget): Call new name.
* plugins/PluginViewBase.h:
(WebCore::PluginViewBase::beginSnapshottingRunningPlugin): Empty virtual
method to snapshot a running plugin.
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::layout): If the plugin has increased in
size add it to the post layout list so that it will be checked.
Source/WebKit2:
Allow a running plugin to be snapshotted. All this
means is that we start the snapshot timer again.
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::beginSnapshottingRunningPlugin): Restart
the timer.
* WebProcess/Plugins/PluginView.h: Virtual method declaration.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 16 Apr 2013 01:01:14 +0000 (01:01 +0000)]
activating a focused link to an in-page fragment ID should transfer focus to the target of the link when possible
https://bugs.webkit.org/show_bug.cgi?id=17450
Reviewed by Maciej Stachowiak.
Source/WebCore:
When a fragment is scrolled to due to an activation event or on load, focus should attempt to
move to the fragment if possible.
Test: fast/dom/fragment-activation-focuses-target.html
* page/FrameView.cpp:
(WebCore::FrameView::scrollToAnchor):
LayoutTests:
* fast/dom/fragment-activation-focuses-target.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs@apple.com [Tue, 16 Apr 2013 00:30:26 +0000 (00:30 +0000)]
Remove V8-specific extended attributes from IDL files
https://bugs.webkit.org/show_bug.cgi?id=114523
Reviewed by Geoffrey Garen.
No tests because no behavior change is expected.
* Modules/encryptedmedia/MediaKeyMessageEvent.idl:
* Modules/encryptedmedia/MediaKeyNeededEvent.idl:
* Modules/encryptedmedia/MediaKeySession.idl:
* Modules/encryptedmedia/MediaKeys.idl:
* Modules/filesystem/HTMLInputElementFileSystem.idl:
* Modules/indexeddb/IDBAny.idl:
* Modules/mediasource/MediaSource.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/mediasource/SourceBufferList.idl:
* Modules/mediastream/MediaStream.idl:
* Modules/webaudio/AudioDestinationNode.idl:
* html/track/TextTrackCue.idl:
* html/track/TextTrackCueList.idl:
* html/track/TextTrackList.idl:
* html/track/TextTrackRegion.idl:
* html/track/TextTrackRegionList.idl:
* html/track/TrackEvent.idl:
* storage/Storage.idl:
* svg/SVGDocument.idl:
* svg/SVGElement.idl:
* workers/WorkerContext.idl:
* xml/XMLHttpRequest.idl:
* xml/XPathNSResolver.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 16 Apr 2013 00:22:00 +0000 (00:22 +0000)]
ScriptWrappable subclasses shouldn't have to include WeakInlines.h
https://bugs.webkit.org/show_bug.cgi?id=114641
Reviewed by Alexey Proskuryakov.
Source/JavaScriptCore:
Move back the Weak constructor, destructor and clear() to Weak.h. Add a new weakClearSlowCase function
and put it in Weak.cpp.
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* heap/Weak.cpp: Added.
* heap/Weak.h:
* heap/WeakInlines.h:
* heap/WeakSetInlines.h:
Source/WebCore:
Remove ScriptWrappableInlines.h includes, they're not needed anymore.
* css/WebKitCSSMatrix.cpp:
* dom/ClientRect.cpp:
* dom/ClientRectList.cpp:
* dom/Clipboard.cpp:
* dom/DOMStringMap.cpp:
* dom/Event.cpp:
* dom/MutationRecord.cpp:
* fileapi/FileList.cpp:
* page/BarInfo.cpp:
* plugins/DOMMimeTypeArray.cpp:
* plugins/DOMPlugin.cpp:
* plugins/DOMPluginArray.cpp:
* storage/Storage.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 23:46:27 +0000 (23:46 +0000)]
[EFL][WK2] build fix after r148434
https://bugs.webkit.org/show_bug.cgi?id=114647
Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-04-15
Reviewed by Benjamin Poulain.
* UIProcess/API/efl/EwkView.cpp:
(EwkView::showContextMenu):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Mon, 15 Apr 2013 23:17:51 +0000 (23:17 +0000)]
HeapTimer lifetime should be less complicated
https://bugs.webkit.org/show_bug.cgi?id=114529
Reviewed by Oliver Hunt.
Right now our HeapTimer lifetime is rather complicated. HeapTimers are "owned" by the JSGlobalData,
but there's an issue in that there can be races between a thread that is trying to tear down a JSGlobalData
and the HeapTimer's fire function. Our current code for tearing down HeapTimers is an intricate and delicate
dance which probably contains subtle bugs.
We can make our lives easier by changing things around a bit.
1) We should free the API lock from being solely owned by the JSGlobalData so we don't have to worry about
grabbing the lock out of invalid memory when our HeapTimer callback fires.
2) We should also make it so that we deref the JSGlobalData first, then unlock the API lock so that when we
have the lock, the JSGlobalData is in one of two states: fully valid or completely destroyed, and we know exactly which one.
3) The JSLock can tell us this information by keeping a back pointer to the JSGlobalData. When the JSGlobalData's
destructor is called, it clears this pointer in the JSLock. Other clients of the API lock can then check
this pointer to determine whether or not the JSGlobalData is still around.
4) The CFRunLoopTimer will use the API lock as its context rather than the HeapTimer itself. The only way
the HeapTimer's callback can get to the HeapTimer is through the API lock's JSGlobalData pointer.
5) The CFRunLoopTimerContext struct has two fields for retain and release callbacks for the context's info field.
We'll provide these callbacks to ref() and deref() the JSLock as necessary. Thus, the timer becomes the other
owner of the JSLock apart from the JSGlobalData.
* API/APIShims.h: Remove the cruft that was required by the previous design, such as RefGlobalDataTag.
(JSC::APIEntryShimWithoutLock::APIEntryShimWithoutLock):
(JSC::APIEntryShimWithoutLock::~APIEntryShimWithoutLock):
(APIEntryShimWithoutLock):
(JSC::APIEntryShim::APIEntryShim):
(JSC::APIEntryShim::~APIEntryShim): Protect the API lock with a RefPtr, deref the JSGlobalData, which could destroy it,
then unlock the API lock. This ordering prevents others from obtaining the API lock while the JSGlobalData is in the
middle of being torn down.
(JSC::APIEntryShim::init): We now take the lock, then ref the JSGlobalData, which is the opposite order of when we
tear down the shim.
* heap/Heap.cpp:
(JSC::Heap::setActivityCallback): Use PassOwnPtr now.
(JSC::Heap::activityCallback): Ditto.
(JSC::Heap::sweeper): Ditto.
(JSC):
* heap/Heap.h:
(Heap):
* heap/HeapTimer.cpp:
(JSC::retainAPILock): Retain callback for CFRunLoopTimerContext struct.
(JSC::releaseAPILock): Release callback for the CFRunLoopTimerContext struct.
(JSC::HeapTimer::HeapTimer): Use the API lock as the context's info field rather than the HeapTimer.
(JSC::HeapTimer::timerDidFire): Grab the API lock. Return early if the JSGlobalData has already been destroyed.
Otherwise, figure out which kind of HeapTimer we are based on the CFRunLoopTimerRef passed to the callback and
call the HeapTimer's callback.
* heap/HeapTimer.h:
(HeapTimer):
* heap/IncrementalSweeper.cpp:
(JSC::IncrementalSweeper::create): PassOwnPtr all the things.
* heap/IncrementalSweeper.h:
(IncrementalSweeper):
* jsc.cpp:
(jscmain): We use an APIEntryShim instead of a RefPtr for the JSGlobalData because we need to
tear down the JSGlobalData while we still hold the lock, which the APIEntryShim handles correctly.
* runtime/GCActivityCallback.h:
(DefaultGCActivityCallback):
(JSC::DefaultGCActivityCallback::create):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::~JSGlobalData): Notify the API lock that the JSGlobalData is being torn down.
* runtime/JSGlobalData.h:
(JSGlobalData):
(JSC::JSGlobalData::apiLock):
* runtime/JSLock.cpp:
(JSC::JSLockHolder::JSLockHolder): Ref, then lock (just like the API shim).
(JSC):
(JSC::JSLock::willDestroyGlobalData):
(JSC::JSLockHolder::init):
(JSC::JSLockHolder::~JSLockHolder): Protect, deref, then unlock (just like the API shim).
(JSC::JSLock::JSLock):
* runtime/JSLock.h: Add back pointer to the JSGlobalData and a callback for when the JSGlobalData is being
torn down that clears this pointer to notify other clients (i.e. timer callbacks) that the JSGlobalData is no
longer valid.
(JSLockHolder):
(JSLock):
(JSC::JSLock::globalData):
* testRegExp.cpp:
(realMain): We use an APIEntryShim instead of a RefPtr for the JSGlobalData because we need to
tear down the JSGlobalData while we still hold the lock, which the APIEntryShim handles correctly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 23:04:15 +0000 (23:04 +0000)]
LLInt SH4 backend implementation
https://bugs.webkit.org/show_bug.cgi?id=112886
Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-15
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
* dfg/DFGOperations.cpp:
(JSC):
* jit/JITStubs.cpp:
* llint/LLIntOfflineAsmConfig.h:
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* offlineasm/arm.rb:
* offlineasm/ast.rb:
* offlineasm/backends.rb:
* offlineasm/instructions.rb:
* offlineasm/mips.rb:
* offlineasm/risc.rb:
* offlineasm/sh4.rb: Added.
Source/WTF:
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
igor.o@sisa.samsung.com [Mon, 15 Apr 2013 21:25:35 +0000 (21:25 +0000)]
Call directly RenderBlock::deleteLineBoxTree
https://bugs.webkit.org/show_bug.cgi?id=102761
Reviewed by Darin Adler.
Instead of implementing RenderLineBoxList::deleteLineBoxTree logic inside
RenderBlock::determineStartPosition, we can reuse the code. The commentaries added
in the changeset #86628 are not valid anymore, nextRootBox is casting m_nextLineBox
and nextLineBox is returning m_nextLineBox.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::determineStartPosition):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 15 Apr 2013 21:19:47 +0000 (21:19 +0000)]
Remove files related to quota and proximity events from the Xcode project
https://bugs.webkit.org/show_bug.cgi?id=114635
Reviewed by Benjamin Poulain.
* WebCore.xcodeproj/project.pbxproj:
* history/PageCache.cpp:
* page/DOMWindow.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 21:07:05 +0000 (21:07 +0000)]
[BlackBerry] Crash from null m_webSettings in WebPagePrivate
https://bugs.webkit.org/show_bug.cgi?id=114633
RIM PR 303745
Patch by Liam Quinn <lquinn@blackberry.com> on 2013-04-15
Reviewed by Rob Buis.
Internally reviewed by Leo Yang.
Speculative fix suggested by George Staikos--initialize m_webSettings first thing in the init() method.
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Mon, 15 Apr 2013 21:04:57 +0000 (21:04 +0000)]
After switching to another space and back, video races to catch up with audio
https://bugs.webkit.org/show_bug.cgi?id=114634
Reviewed by Tim Horton.
In Mountain Lion and previous, report that a view is "not visible" when its window
is not in the active space. This causes us to notify AVFoundation that its CAImageQueues
will not be serviced and results in not having the "catch up" behavior when returning
to the browser's space.
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::isViewVisible):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Mon, 15 Apr 2013 20:32:40 +0000 (20:32 +0000)]
[CMake] Add WTF_USE_*_UNICODE variables
https://bugs.webkit.org/show_bug.cgi?id=114556
Reviewed by Brent Fulgham.
WTF_USE_ICU_UNICODE and WTF_USE_WCHAR_UNICODE are used to
reduce duplication in the platform specific CMake files.
.:
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
Source/JavaScriptCore:
* CMakeLists.txt:
* PlatformEfl.cmake:
Source/WebCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
Source/WTF:
* wtf/CMakeLists.txt:
* wtf/PlatformBlackBerry.cmake:
* wtf/PlatformEfl.cmake:
* wtf/PlatformWinCE.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Mon, 15 Apr 2013 20:23:42 +0000 (20:23 +0000)]
[WIN] Remove remaining calls to pthread from WTF
https://bugs.webkit.org/show_bug.cgi?id=114563
Reviewed by Brent Fulgham.
Replace pthread_key_create with threadSpecificKeyCreate and
pthread_setspecific with threadSpecificSet from ThreadSpecific.h.
These functions provide a windows-specific implementation for the pthread functions,
but require that the thread has been created with WTF::createThread(),
which is the case for all threads created within WebKit.
To call this function from fastMalloc we must not call fastMalloc in them.
To fulfill this constraint ThreadSpecificWin will allocated its memory through the
original malloc implementation and use the stack for local and static variables.
Keep the Darwin implementation as it is, since it contains some performance tweaks.
* wtf/FastMalloc.cpp:
* wtf/ThreadSpecificWin.cpp:
(WTF::destructorsList):
(WTF::destructorsMutex):
(WTF::threadSpecificKeyCreate):
(WTF::threadSpecificKeyDelete):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Mon, 15 Apr 2013 20:13:45 +0000 (20:13 +0000)]
WKR gets stuck when there are many merges
https://bugs.webkit.org/show_bug.cgi?id=114632
Reviewed by Andreas Kling.
Move the last revision forward when it exists in a branch.
Otherwise, we'll be stuck looping over revisions made to merge patches.
* Scripts/webkitpy/tool/commands/newcommitbot.py:
(NewCommitBot.next_work_item):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Mon, 15 Apr 2013 19:46:28 +0000 (19:46 +0000)]
HTMLMediaElement::removeTextTrack should clear track client
https://bugs.webkit.org/show_bug.cgi?id=114630
Reviewed by Jer Noble.
No new tests, this is clean-up that prevents a potential crash.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::removeTextTrack): Clear the track client.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 19:32:45 +0000 (19:32 +0000)]
Crash when favicon is requested
https://bugs.webkit.org/show_bug.cgi?id=114624
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-04-15
Reviewed by Brent Fulgham.
* WebIconDatabase.cpp:
(WebIconDatabase::getOrCreateDefaultIconBitmap): Added NULL pointer check.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
robert@webkit.org [Mon, 15 Apr 2013 18:23:37 +0000 (18:23 +0000)]
An inline element with an absolutely positioned child does not correctly calculate/render padding and margin
https://bugs.webkit.org/show_bug.cgi?id=47554
Reviewed by David Hyatt.
Source/WebCore:
When looking for padding/margin to add from the start of a child's parent skip past any leading positioned siblings as
we don't add the padding/margin of the common parent when skipping past them in |skipLeadingWhitespace|. We
don't need to worry about the case of trailing positioned objects as we will account for their parent's
border/margin/padding when we encounter them in |nextSegmentBreak|.
Test: fast/inline/padding-before-leading-positioned-element-contributes-width.html
* rendering/RenderBlockLineLayout.cpp:
(WebCore::previousInFlowSibling):
(WebCore):
(WebCore::inlineLogicalWidth):
LayoutTests:
* fast/inline/padding-before-leading-positioned-element-contributes-width-expected.txt: Added.
* fast/inline/padding-before-leading-positioned-element-contributes-width.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 15 Apr 2013 18:16:19 +0000 (18:16 +0000)]
Flaky Test: http/tests/ssl/ping-with-unsafe-redirect.html
https://bugs.webkit.org/show_bug.cgi?id=114616
Land expected results for the test.
* http/tests/ssl/ping-with-unsafe-redirect-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 18:02:55 +0000 (18:02 +0000)]
[BlackBerry] Forward userGesture when creating a new window
https://bugs.webkit.org/show_bug.cgi?id=114622
Patch by Andy Chen <andchen@blackberry.com> on 2013-04-15
Reviewed by Rob Buis.
Client could use this info to decide whether the popup should
be blocked.
PR 291898
Reviewed internally by Mike Fenton
* Api/WebPageClient.h:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::createWindow):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchCreatePage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kov@webkit.org [Mon, 15 Apr 2013 17:52:01 +0000 (17:52 +0000)]
[GTK] Missing a few packages for building on stock Fedora
https://bugs.webkit.org/show_bug.cgi?id=113916
Reviewed by Philippe Normand.
* gtk/install-dependencies: add packages that are missing.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 17:13:08 +0000 (17:13 +0000)]
[WinCairo] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=114623
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-04-15
Reviewed by Brent Fulgham.
* platform/network/curl/CookieJarCurl.cpp: Added required header files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Mon, 15 Apr 2013 17:09:38 +0000 (17:09 +0000)]
REGRESSION (r148360): Failure in webkitpy.tool.multicommandtool_unittest.MultiCommandToolTest.test_command_help
https://bugs.webkit.org/show_bug.cgi?id=114602
Reviewed by Ryosuke Niwa.
* Scripts/webkitpy/tool/multicommandtool_unittest.py:
(CommandTest.test_required_arguments): Reset the static argument_names variable on the TrivialCommand
interface so its value doesn't leak into the following tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrobinson@webkit.org [Mon, 15 Apr 2013 17:06:47 +0000 (17:06 +0000)]
[GTK] REGRESSION(r147499): HTTP auth dialog doesn't remember passwords anymore
https://bugs.webkit.org/show_bug.cgi?id=114613
Reviewed by Carlos Garcia Campos.
* Source/autotools/SetupAutoconfHeader.m4: Correct definition of ENABLE_CREDENTIAL_STORAGE
so that the ENABLE(CREDENTIAL_STORAGE) macro work properly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Mon, 15 Apr 2013 16:22:58 +0000 (16:22 +0000)]
Unreviewed GTK gardening.
* platform/gtk/TestExpectations: Adding failure expectations for tests introduced in r147829 and r148136.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148444
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Mon, 15 Apr 2013 16:07:13 +0000 (16:07 +0000)]
Unreviewed GTK gardening.
* platform/gtk/fast/js/global-constructors-expected.txt: Rebaselining after r148236.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148443
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rwlbuis@webkit.org [Mon, 15 Apr 2013 15:52:14 +0000 (15:52 +0000)]
Fix some compiler warnings (miscellaneous)
https://bugs.webkit.org/show_bug.cgi?id=80790
Patch by Rob Buis <rbuis@rim.com> on 2013-04-15
Reviewed by Darin Adler.
It does not seem needed to initialize jpeg_create_compress struct to zero,
all that is needed is set the err field. See for instance SkImageDecoder_libjpeg.cpp.
* platform/image-encoders/JPEGImageEncoder.cpp:
(WebCore::compressRGBABigEndianToJPEG):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148442
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Mon, 15 Apr 2013 15:39:40 +0000 (15:39 +0000)]
Deprecate land-cowboy in favor of land-cowhand
https://bugs.webkit.org/show_bug.cgi?id=104470
Patch by Zan Dobersek <zandobersek@gmail.com> on 2013-04-15
Reviewed by Darin Adler.
Move the LandCowboy command implementation under the LandCowhand command and deprecate the former.
* Scripts/webkitpy/tool/commands/download.py:
(LandCowhand):
(LandCowboy):
(LandCowboy._prepare_state):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(test_land_cowhand): Adjust the unit tests by testing both LandCowhand and LandCowboy,
also checking the deprecation message in the output of the latter.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148441
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Mon, 15 Apr 2013 15:28:45 +0000 (15:28 +0000)]
[GTK] Remove platform specific implementation of KURL::fileSystemPath()
https://bugs.webkit.org/show_bug.cgi?id=114133
Reviewed by Martin Robinson.
r147883 added a generic implementation of this function,
which can be used by all ports to share the code.
* GNUmakefile.list.am:
* platform/KURL.cpp:
(WebCore):
* platform/gtk/KURLGtk.cpp: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148440
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 15:28:19 +0000 (15:28 +0000)]
Schedule rendering at regular interval (60fps)
https://bugs.webkit.org/show_bug.cgi?id=114617
Patch by Seulgi Kim <seulgikim@company100.net> on 2013-04-15
Reviewed by Martin Robinson.
Schedule rendering reguarly regardless of the time taken to render a
frame. Otherwise, next flush delayed by the amount of the rendering
time.
* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::LayerTreeHostGtk):
(WebKit::LayerTreeHostGtk::layerFlushTimerFired):
(WebKit::LayerTreeHostGtk::flushAndRenderLayers):
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148439
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Mon, 15 Apr 2013 15:25:29 +0000 (15:25 +0000)]
Unreviewed WinCE build fix after r148373.
* WebCoreSupport/EditorClientWinCE.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148438
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 15 Apr 2013 15:22:15 +0000 (15:22 +0000)]
Debug buildfix after r148433.
https://bugs.webkit.org/show_bug.cgi?id=108295
Reviewed by Allan Sandfeld Jensen.
* platform/graphics/texmap/TextureMapperLayer.h:
(WebCore::TextureMapperLayer::children): Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148437
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zarvai@inf.u-szeged.hu [Mon, 15 Apr 2013 14:16:30 +0000 (14:16 +0000)]
[Qt] Unreviewed gardening.
* platform/qt-5.0-wk1/TestExpectations:
* platform/qt/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148436
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 14:02:13 +0000 (14:02 +0000)]
Improve Windows cmd.exe detection
https://bugs.webkit.org/show_bug.cgi?id=114620
Patch by Jonathan Liu <net147@gmail.com> on 2013-04-15
Reviewed by Jocelyn Turcotte.
The current detection code handles Windows cmd.exe and Cygwin shell
but not does not handle MSYS shell correctly. Simplify and improve the
detection by checking MINGW_IN_SHELL instead as used in other places
(e.g. qt_functions.prf).
* qmake/mkspecs/features/default_pre.prf:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148435
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 13:43:27 +0000 (13:43 +0000)]
[EFL][WK2] Use C API in ewk_context_menu
https://bugs.webkit.org/show_bug.cgi?id=109698
Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2013-04-15
Reviewed by Andreas Kling.
EFL port unlike others does not handle context menus inside WebKit but exposes an API:
ewk_context_menu and ewk_context_menu_item, and leaves context menu to application.
Currently EFL port's context menu API uses internal C++ classes, while it should use WK2 C API,
to avoid violating layering.
This patch changes EFL context menu API to use only WK2 C API.
* UIProcess/API/efl/EwkView.cpp:
(EwkView::showContextMenu):
* UIProcess/API/efl/EwkView.h:
(WebKit):
(EwkView):
* UIProcess/API/efl/ewk_context_menu.cpp:
(EwkContextMenu::EwkContextMenu):
(EwkContextMenu::contextMenuItemSelected):
(ewk_context_menu_item_select):
(getWKTagFromEwkAction):
* UIProcess/API/efl/ewk_context_menu_item.cpp:
(EwkContextMenuItem::EwkContextMenuItem):
(getEwkActionFromWKTag):
* UIProcess/API/efl/ewk_context_menu_item.h:
* UIProcess/API/efl/ewk_context_menu_item_private.h:
(EwkContextMenuItem::create):
(EwkContextMenuItem):
* UIProcess/API/efl/ewk_context_menu_private.h:
(EwkContextMenu::create):
(EwkContextMenu):
* UIProcess/efl/ContextMenuClientEfl.cpp:
(showContextMenu):
(hideContextMenu):
(ContextMenuClientEfl::ContextMenuClientEfl):
* UIProcess/efl/ContextMenuClientEfl.h:
(WebKit::ContextMenuClientEfl::view):
* UIProcess/efl/WebContextMenuProxyEfl.cpp:
(WebKit::WebContextMenuProxyEfl::showContextMenu):
(WebKit::WebContextMenuProxyEfl::hideContextMenu):
* UIProcess/efl/WebContextMenuProxyEfl.h:
(WebContextMenuProxyEfl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148434
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 13:24:08 +0000 (13:24 +0000)]
Coordinated Graphics: Remove GraphicsLayerTextureMapper dependency from CoordinatedGraphicsScene.
https://bugs.webkit.org/show_bug.cgi?id=108295
Since all the changes to the TextureMapperLayer tree now come in a single IPC message via
CoordinatedGraphicsState, we don't need the additional buffering done in GraphicsLayerTextureMapper.
This reduces unnecessary function calls, and also streamlines GraphicsLayerTextureMapper to be used
only in WebKit1 (without CoordinatedGraphics).
Patch by Noam Rosenthal <noam@webkit.org> on 2013-04-15
Reviewed by Allan Sandfeld Jensen.
No new tests, refactor only.
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):
(WebCore::GraphicsLayerTextureMapper::prepareBackingStoreIfNeeded):
(WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCount):
(WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded):
(WebCore):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(GraphicsLayerTextureMapper):
Removed references to m_hasOwnBackingStore, which was done to separate the CoordinatedGraphics
path from the WK1 path.
* platform/graphics/texmap/TextureMapperLayer.h:
(WebCore::TextureMapperLayer::drawsContent):
(WebCore::TextureMapperLayer::contentsAreVisible):
(WebCore::TextureMapperLayer::size):
(WebCore::TextureMapperLayer::opacity):
(WebCore::TextureMapperLayer::transform):
(WebCore::TextureMapperLayer::isShowingRepaintCounter):
(WebCore::TextureMapperLayer::fixedToViewport):
(TextureMapperLayer):
Added a few public functions needed by CoordinatedGraphicsScene.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
(WebCore::layerShouldHaveBackingStore):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
(WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):
(WebCore::CoordinatedGraphicsScene::adjustPositionForFixedLayers):
(WebCore::CoordinatedGraphicsScene::createCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::syncCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::destroyCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerRepaintCountIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerChildrenIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerFiltersIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerState):
(WebCore::CoordinatedGraphicsScene::getLayerByIDIfExists):
(WebCore::CoordinatedGraphicsScene::createLayer):
(WebCore::CoordinatedGraphicsScene::deleteLayer):
(WebCore::CoordinatedGraphicsScene::setRootLayerID):
(WebCore::CoordinatedGraphicsScene::prepareContentBackingStore):
(WebCore::CoordinatedGraphicsScene::createBackingStoreIfNeeded):
(WebCore::CoordinatedGraphicsScene::removeBackingStoreIfNeeded):
(WebCore::CoordinatedGraphicsScene::resetBackingStoreSizeToLayerSize):
(WebCore::CoordinatedGraphicsScene::createTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::removeTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::updateTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
(WebCore::CoordinatedGraphicsScene::commitSceneState):
(WebCore::CoordinatedGraphicsScene::ensureRootLayer):
(WebCore::CoordinatedGraphicsScene::setLayerAnimationsIfNeeded):
(WebCore::CoordinatedGraphicsScene::findScrollableContentsLayerAt):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
(CoordinatedGraphicsScene):
(WebCore::CoordinatedGraphicsScene::layerByID):
(WebCore::CoordinatedGraphicsScene::rootLayer):
Use TextureMapperLayer instead of GraphicsLayer and GraphicsLayerTextureMapper.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148433
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Mon, 15 Apr 2013 13:00:50 +0000 (13:00 +0000)]
Dynamically triggered subframe loads are causing tile churn
https://bugs.webkit.org/show_bug.cgi?id=114440
Reviewed by Andreas Kling.
In some cases we switch in and out of minimal tiles multiple times during page loading. This
creates tile churn where we create speculative tiles and then throw them out. This can be
caused by various reasons including dynamically created subframes.
* page/FrameView.cpp:
(WebCore::FrameView::setIsVisuallyNonEmpty):
Stay in minimal tiles modes until there is some visual contents. This avoids switching out from minimal
tiles while awaiting response for the initial requests.
* page/FrameView.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::computeTileCoverage):
* rendering/RenderLayerBacking.h:
(WebCore::RenderLayerBacking::didSwitchToFullTileCoverageDuringLoading):
(WebCore::RenderLayerBacking::setDidSwitchToFullTileCoverageDuringLoading):
Only switch into minimal coverage mode once per page load.
(RenderLayerBacking):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148432
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 12:02:19 +0000 (12:02 +0000)]
color-index media feature not supported
https://bugs.webkit.org/show_bug.cgi?id=114468
Patch by Rune Lillesveen <rune@opera.com> on 2013-04-15
Reviewed by Kenneth Rohde Christiansen.
Source/WebCore:
Support the color-index media feature. Currently assumes that no WebKit
browser will have an output device that uses a color lookup table.
Tests: fast/media/mq-color-index-01.html
fast/media/mq-color-index-02.html
* css/MediaFeatureNames.h:
(MediaFeatureNames):
* css/MediaQueryEvaluator.cpp:
(WebCore::color_indexMediaFeatureEval):
(WebCore):
(WebCore::min_color_indexMediaFeatureEval):
(WebCore::max_color_indexMediaFeatureEval):
* css/MediaQueryExp.cpp:
(WebCore::featureWithPositiveInteger):
(WebCore::featureWithoutValue):
LayoutTests:
Added testcases for checking support and handling invalid values for
the color-index media feature.
* fast/media/mq-color-index-01-expected.html: Added.
* fast/media/mq-color-index-01.html: Added.
* fast/media/mq-color-index-02-expected.txt: Added.
* fast/media/mq-color-index-02.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148431
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kbalazs@webkit.org [Mon, 15 Apr 2013 11:49:13 +0000 (11:49 +0000)]
[CoordGfx] Background color should not be part of GraphicsLayerState
https://bugs.webkit.org/show_bug.cgi?id=113785
Source/WebCore:
Page background is independent from layer state, send it to the UI
as soon as possible.
Should not cause observable change in behavior so no new tests.
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
(WebCore::CoordinatedGraphicsScene::commitSceneState):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
Source/WebKit2:
Reviewed by Andreas Kling.
Page background is independent from layer state, send it to the UI
as soon as possible.
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148430
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 11:08:15 +0000 (11:08 +0000)]
[webkitpy] Use $NUMBER_OF_PROCESSORS in Executive.cpu_count()
https://bugs.webkit.org/show_bug.cgi?id=114506
Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-04-15
Reviewed by Philippe Normand.
* Scripts/webkitpy/common/system/executive.py:
(Executive.cpu_count): Modify function in order to use the environment
variable $NUMBER_OF_PROCESSORS if it is defined and it is an integer
greater than 0.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 10:50:59 +0000 (10:50 +0000)]
[BlackBerry] ASSERT in StyleResolver::ensureScopeResolver()
https://bugs.webkit.org/show_bug.cgi?id=114615
Patch by Xan Lopez <xlopez@igalia.com> on 2013-04-15
Reviewed by Carlos Garcia Campos.
Source/WebKit/blackberry:
Add a method to enable the style scoped feature to our
DumpRenderTreeSupport class.
* WebKitSupport/DumpRenderTreeSupport.cpp:
(DumpRenderTreeSupport::setStyleScopedEnabled):
* WebKitSupport/DumpRenderTreeSupport.h:
(DumpRenderTreeSupport):
Tools:
Enable the style scoped feature if we have support for it.
* DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::DumpRenderTree::resetToConsistentStateBeforeTesting):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 10:36:49 +0000 (10:36 +0000)]
[EFL] Unskip some inspector tests related to styles
https://bugs.webkit.org/show_bug.cgi?id=114609
Unreviewed gardening.
Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-04-15
* platform/efl-wk2/TestExpectations: Old issues. Fixed on the latest codebase.
* platform/efl/TestExpectations: Fixed by r128637.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148426
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 10:11:36 +0000 (10:11 +0000)]
[BlackBerry] Filesystem callback notifyCreateSnapshotFileAndReadMetadata can be called on the wring thread
https://bugs.webkit.org/show_bug.cgi?id=114610
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-04-15
Reviewed by Xan Lopez.
Override notifyCreateSnapshotFileAndReadMetadata to make sure the
callback is called on the right thread.
Fixes a crash in several fast/filesystem test in debug builds.
* platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.cpp:
(WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateSnapshotFileAndReadMetadata):
(WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateSnapshotFileAndReadMetadataOnWorkerThread):
* platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
anilsson@rim.com [Mon, 15 Apr 2013 09:18:21 +0000 (09:18 +0000)]
[BlackBerry][CSS Filters] Non-image content disappears when filter applied
https://bugs.webkit.org/show_bug.cgi?id=114498
Reviewed by Carlos Garcia Campos.
Applying a filter to a div with simple text content caused the div to
disappear.
In https://bugs.webkit.org/show_bug.cgi?id=114276, we added some GL
state save/restore code for vertex attributes to make sure the state
changes done by BlackBerry::Platform::Graphics don't interfere with
GL code executing in WebKit. However, saving and restoring vertex
attribute state won't do much good if those attributes were never
enabled to begin with. Fixed by enabling vertex attributes
appropriately when setting them, so that state can be saved and
restored.
All the CSS Filters layout tests apply the filters to simple rectangles
or images, there's nothing sufficiently complex that we manage to
trigger this GL state conflict in the BlackBerry port. This suggests
adding a new platform-specific layout test would be appropriate, but
since we don't use pixel tests yet, such a test would not help detect
regressions. Ultimately we decided against adding a layout test for
this bug at this time.
* platform/graphics/blackberry/LayerFilterRenderer.cpp:
(WebCore::LayerFilterRenderer::applyActions):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
allan.jensen@digia.com [Mon, 15 Apr 2013 09:16:31 +0000 (09:16 +0000)]
[Qt] QtMultimedia not used when GStreamer is not found
https://bugs.webkit.org/show_bug.cgi?id=111842
Reviewed by Philippe Normand.
Fallback to using QtMultimedia when native libraries are not found.
* qmake/mkspecs/features/features.prf:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Mon, 15 Apr 2013 09:11:40 +0000 (09:11 +0000)]
Unreviewed EFL gardening.
spelling-with-whitespace-selection.html passes after r148282.
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148421
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 09:02:25 +0000 (09:02 +0000)]
[WK2] Add new callbacks and a function for WebKit2 context menu API
https://bugs.webkit.org/show_bug.cgi?id=111552
Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2013-04-15
Reviewed by Anders Carlsson.
Add contextMenuHide and contextMenuShow callbacks to WKPageContextMenuClient
and WKPageContextMenuSelected API so context menus can be handled outside
WebKit. API version of this client was bumped so older client version still
can be used
* Shared/APIClientTraits.cpp:
(WebKit):
* Shared/APIClientTraits.h:
* UIProcess/API/C/WKPage.cpp:
(WKPageSelectContextMenuItem):
* UIProcess/API/C/WKPage.h:
* UIProcess/API/gtk/WebKitContextMenuClient.cpp:
(attachContextMenuClientToView):
* UIProcess/WebPageContextMenuClient.cpp:
(WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
(WebKit::WebPageContextMenuClient::showContextMenu):
(WebKit):
(WebKit::WebPageContextMenuClient::hideContextMenu):
* UIProcess/WebPageContextMenuClient.h:
(WebPageContextMenuClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::internalShowContextMenu):
* UIProcess/efl/ContextMenuClientEfl.cpp:
(ContextMenuClientEfl::ContextMenuClientEfl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148420
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 08:20:53 +0000 (08:20 +0000)]
[EFL] inspector/styles/styles-history.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=98777
Unreviewed gardening.
Unskip inspector/styles/styles-history.html as it was fixed by r131895.
Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-04-15
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148419
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 07:27:37 +0000 (07:27 +0000)]
[EFL] Remove inspector/styles/paste-property-expected.txt from efl-wk2
https://bugs.webkit.org/show_bug.cgi?id=114604
Unreviewed gardening.
Remove an improper file after r147420.
Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-04-15
* platform/efl-wk2/inspector/styles/paste-property-expected.txt: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Mon, 15 Apr 2013 07:06:34 +0000 (07:06 +0000)]
Unreviewed EFL gardening.
Rebaseline fast/js/global-constructors.html for EFL port due to
addition of MutationRecordConstructor.
* platform/efl/fast/js/global-constructors-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Mon, 15 Apr 2013 06:58:03 +0000 (06:58 +0000)]
Unreviewed EFL gardening.
Rebaseline several SVG tests for EFL port.
* platform/efl-wk2/svg/css/group-with-shadow-expected.png:
* platform/efl-wk2/svg/filters/shadow-on-rect-with-filter-expected.png:
* platform/efl/svg/css/arrow-with-shadow-expected.png:
* platform/efl/svg/css/arrow-with-shadow-expected.txt: Removed.
* platform/efl/svg/css/circle-in-mask-with-shadow-expected.txt: Removed.
* platform/efl/svg/css/clippath-with-shadow-expected.txt: Removed.
* platform/efl/svg/css/composite-shadow-example-expected.png:
* platform/efl/svg/css/composite-shadow-example-expected.txt:
* platform/efl/svg/css/composite-shadow-with-opacity-expected.png:
* platform/efl/svg/css/composite-shadow-with-opacity-expected.txt:
* platform/efl/svg/css/group-with-shadow-expected.txt:
* platform/efl/svg/css/path-with-shadow-expected.txt:
* platform/efl/svg/css/shadow-and-opacity-expected.txt:
* platform/efl/svg/css/shadow-with-large-radius-expected.txt: Removed.
* platform/efl/svg/css/shadow-with-negative-offset-expected.txt: Removed.
* platform/efl/svg/css/text-gradient-shadow-expected.txt:
* platform/efl/svg/css/text-shadow-multiple-expected.txt:
* platform/efl/svg/filters/shadow-on-rect-with-filter-expected.txt: Removed.
* platform/efl/transitions/svg-text-shadow-transition-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Apr 2013 01:29:49 +0000 (01:29 +0000)]
[css3-text] Parsing -webkit-hanging value for text-indent from css3-text
https://bugs.webkit.org/show_bug.cgi?id=113680
Source/WebCore:
Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-04-14
Reviewed by Andreas Kling.
This patch is the parsing part to support hanging value for text-indent.
"hanging" means "Inverts which lines are affected."
It's prefixed and guarded by CSS3_TEXT flag.
No new tests, this patch updates existing tests.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseTextIndent): Parsed "-webkit-hanging" with "-webkit-each-line".
* css/CSSValueKeywords.in: Added "-webkit-hanging" keyword.
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyTextIndent::applyInheritValue):
(WebCore::ApplyPropertyTextIndent::applyInitialValue):
(WebCore::ApplyPropertyTextIndent::applyValue):
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h: Added enum TextIndentType.
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
* rendering/style/StyleRareInheritedData.h: Added m_textIndentType.
(StyleRareInheritedData):
Added the usual getter / setter / initial methods for m_textIndentType.
LayoutTests:
"hanging" is added for text-indent in CSS3.
http://dev.w3.org/csswg/css3-text/#hanging
Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-04-14
Reviewed by Andreas Kling.
* fast/css3-text/css3-text-indent/getComputedStyle/getComputedStyle-text-indent-expected.txt:
* fast/css3-text/css3-text-indent/getComputedStyle/script-tests/getComputedStyle-text-indent.js:
(valueSettingTest):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 14 Apr 2013 23:32:18 +0000 (23:32 +0000)]
Move Mac specific snapshotting code into its own file
https://bugs.webkit.org/show_bug.cgi?id=114597
Reviewed by Andreas Kling.
Source/WebCore:
* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* bindings/objc/DOM.mm:
(-[DOMRange renderedImageForcingBlackText:]):
* page/Frame.h:
* page/mac/FrameMac.mm:
(WebCore::Frame::nodeImage):
(WebCore::Frame::dragImageForSelection):
* page/mac/FrameSnapshottingMac.h: Added.
* page/mac/FrameSnapshottingMac.mm: Added.
(WebCore::imageFromRect):
(WebCore::selectionImage):
(WebCore::rangeImage):
(WebCore::snapshotDragImage):
* platform/mac/ClipboardMac.mm:
(WebCore::ClipboardMac::dragNSImage):
Move the four Mac specific snapshotting functions in Frame.h into FrameSnapshottingMac.h/mm and turn
them into free standing functions.
Source/WebKit/mac:
* WebView/WebHTMLView.mm:
(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView selectionImageForcingBlackText:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 21:50:31 +0000 (21:50 +0000)]
Re-skip editing/spelling/spelling-changed-text.html on Mac/WK1.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 21:13:22 +0000 (21:13 +0000)]
Hawtfix Mac build.
* WebCore.exp.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 20:32:47 +0000 (20:32 +0000)]
Only MutableStylePropertySets should be able to have CSSOM wrappers.
<http://webkit.org/b/114595>
Reviewed by Antti Koivisto.
Tighten typing so that only MutableStylePropertySets can have CSSOM wrappers associated.
This allows us to get rid of the out-of-line base class destructor.
* WebCore.exp.in:
* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::~MutableStylePropertySet):
(WebCore::MutableStylePropertySet::cssStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* dom/StyledElement.cpp:
(WebCore::StyledElement::inlineStyleCSSOMWrapper):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 19:19:52 +0000 (19:19 +0000)]
Remove unused function declaration StylePropertySet::setNeedsStyleRecalc().
Rubber-stamped by Antti Koivisto.
* css/StylePropertySet.h:
(StylePropertySet):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Sun, 14 Apr 2013 19:17:29 +0000 (19:17 +0000)]
[EFL][WK2] Regression(r148274): Broke rendering in the browser
https://bugs.webkit.org/show_bug.cgi?id=114593
Reviewed by Anders Carlsson.
r148274 added a new "didChangeViewportAttributes" callback to
WKView but did not hook it up in ViewClientEfl. This patch
fixes this and makes rendering work again in the browser.
* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::ViewClientEfl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 19:09:59 +0000 (19:09 +0000)]
Move StylePropertySet internal storage access helpers to subclass.
<http://webkit.org/b/114592>
Reviewed by Antti Koivisto.
Removed mutablePropertyVector() since most call sites are inside MutableStylePropertySet
and can access m_propertyVector directly. The few ones that aren't can just cast.
For ImmutableStylePropertySet, moved value/metadata array accessors to the subclass
and remove "immutable" from their names.
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::immutableCopyIfNeeded):
(WebCore::ImmutableStylePropertySet::ImmutableStylePropertySet):
(WebCore::ImmutableStylePropertySet::~ImmutableStylePropertySet):
(WebCore::MutableStylePropertySet::MutableStylePropertySet):
(WebCore::MutableStylePropertySet::removeProperty):
(WebCore::MutableStylePropertySet::removePrefixedOrUnprefixedProperty):
(WebCore::MutableStylePropertySet::setProperty):
(WebCore::MutableStylePropertySet::appendPrefixingVariantProperty):
(WebCore::MutableStylePropertySet::parseDeclaration):
(WebCore::MutableStylePropertySet::addParsedProperties):
(WebCore::MutableStylePropertySet::clear):
(WebCore::MutableStylePropertySet::removePropertiesInSet):
(WebCore::MutableStylePropertySet::findCSSPropertyWithID):
(WebCore::MutableStylePropertySet::removeEquivalentProperties):
(WebCore::StylePropertySet::reportMemoryUsage):
* css/StylePropertySet.h:
(PropertyReference):
(StylePropertySet):
(ImmutableStylePropertySet):
(WebCore::ImmutableStylePropertySet::valueArray):
(WebCore::ImmutableStylePropertySet::metadataArray):
(WebCore::StylePropertySet::PropertyReference::propertyMetadata):
(WebCore::StylePropertySet::PropertyReference::propertyValue):
(WebCore::StylePropertySet::propertyCount):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Sun, 14 Apr 2013 18:25:41 +0000 (18:25 +0000)]
Try to fix non-apple windows builds
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 17:56:35 +0000 (17:56 +0000)]
Specialize propertyCount() in StylePropertySet subclasses.
<http://webkit.org/b/114590>
Reviewed by Antti Koivisto.
Avoid branching on m_isMutable in code that already knows which type of set it is.
* css/StylePropertySet.h:
(WebCore::ImmutableStylePropertySet::propertyCount):
(ImmutableStylePropertySet):
(WebCore::MutableStylePropertySet::propertyCount):
(MutableStylePropertySet):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 17:49:06 +0000 (17:49 +0000)]
Move property setting/removing functions to MutableStylePropertySet.
<http://webkit.org/b/114589>
Reviewed by Antti Koivisto.
Move all functions for setting/removing properties from StylePropertySet to MutableStylePropertySet.
Had to change SVGElement::animatedSMILStyleProperties() & friends to hand out MutableStylePropertySet*
which was always the internal type anyway.
* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::removeShorthandProperty):
(WebCore::MutableStylePropertySet::removeProperty):
(WebCore::MutableStylePropertySet::removePrefixedOrUnprefixedProperty):
(WebCore::MutableStylePropertySet::setProperty):
(WebCore::MutableStylePropertySet::appendPrefixingVariantProperty):
(WebCore::MutableStylePropertySet::setPrefixingVariantProperty):
(WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
(WebCore::MutableStylePropertySet::removeBlockProperties):
(WebCore::MutableStylePropertySet::removePropertiesInSet):
(WebCore::MutableStylePropertySet::findCSSPropertyWithID):
(WebCore::MutableStylePropertySet::removeEquivalentProperties):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::triStateOfStyle):
(WebCore::removePropertiesInStyle):
(WebCore::reconcileTextDecorationProperties):
* svg/SVGAnimateElement.cpp:
(WebCore::applyCSSPropertyToTarget):
* svg/SVGElement.cpp:
(WebCore::SVGElement::animatedSMILStyleProperties):
(WebCore::SVGElement::ensureAnimatedSMILStyleProperties):
* svg/SVGElement.h:
(SVGElement):
* svg/SVGElementRareData.h:
(WebCore::SVGElementRareData::animatedSMILStyleProperties):
(WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties):
(SVGElementRareData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 17:33:13 +0000 (17:33 +0000)]
EditingStyle should have a MutableStylePropertySet internally.
<http://webkit.org/b/114588>
Reviewed by Anders Carlsson.
Switch EditingStyle::m_mutableStyle to a RefPtr<MutableStylePropertySet>.
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::copyBlockProperties):
* css/StylePropertySet.h:
(StylePropertySet):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::setStyle):
(WebCore::EditingStyle::mergeStyleFromRules):
(WebCore::StyleChange::StyleChange):
(WebCore::setTextDecorationProperty):
(WebCore::StyleChange::extractTextStyles):
(WebCore::diffTextDecorations):
(WebCore::getPropertiesNotIn):
* editing/EditingStyle.h:
(WebCore::EditingStyle::style):
(EditingStyle):
(StyleChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sun, 14 Apr 2013 16:49:13 +0000 (16:49 +0000)]
Add EnumClass.h to project files
<http://webkit.org/b/114582>
Rubber-stamped by Dan Bernstein.
* WTF.pro: Add EnumClass.h to project.
* WTF.vcproj/WTF.vcproj: Ditto.
* WTF.vcxproj/WTF.vcxproj: Ditto.
* WTF.vcxproj/WTF.vcxproj.filters: Ditto.
* WTF.xcodeproj/project.pbxproj: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 16:43:35 +0000 (16:43 +0000)]
Move addParsedProperty/addParsedProperties to MutableStylePropertySet.
<http://webkit.org/b/114587>
Reviewed by Antti Koivisto.
All CSSParser methods that mutate an existing StylePropertySet now take a MutableStylePropertySet*
instead of a StylePropertySet*.
* css/CSSParser.cpp:
(WebCore::parseColorValue):
(WebCore::parseSimpleLengthValue):
(WebCore::parseKeywordValue):
(WebCore::parseTranslateTransformValue):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseDeclaration):
* css/CSSParser.h:
(CSSParser):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::setProperty):
(WebCore::MutableStylePropertySet::addParsedProperties):
(WebCore::MutableStylePropertySet::addParsedProperty):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* css/ViewportStyleResolver.h:
(ViewportStyleResolver):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 16:21:02 +0000 (16:21 +0000)]
CSSParser should return ImmutableStylePropertySets.
<http://webkit.org/b/114585>
Reviewed by Anders Carlsson.
The StylePropertySets created by CSSParser were already immutable.
Let this be reflected in the pointer types returned.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseInlineStyleDeclaration):
(WebCore::CSSParser::parseDeclaration):
(WebCore::CSSParser::createStylePropertySet):
* css/CSSParser.h:
(CSSParser):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148399
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 16:14:48 +0000 (16:14 +0000)]
Move StylePropertySet::createImmutable() to ImmutableStylePropertySet.
<http://webkit.org/b/114584>
Reviewed by Anders Carlsson.
StylePropertySet::createImmutable() -> ImmutableStylePropertySet::create()
Also, immutableCopyIfNeeded() now returns a PassRefPtr<ImmutableStylePropertySet>.
* css/CSSParser.cpp:
(WebCore::CSSParser::createStylePropertySet):
* css/StylePropertySet.cpp:
(WebCore::ImmutableStylePropertySet::create):
(WebCore::StylePropertySet::immutableCopyIfNeeded):
* css/StylePropertySet.h:
(StylePropertySet):
(ImmutableStylePropertySet):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 15:46:33 +0000 (15:46 +0000)]
Move parseDeclaration() and clear() to MutableStylePropertySet.
<http://webkit.org/b/114583>
Reviewed by Anders Carlsson.
...and remove ASSERT(isMutable()) from the function bodies.
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::removedFrom):
Use clear() directly instead of taking an empty string through the CSS parser.
* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::parseDeclaration):
(WebCore::MutableStylePropertySet::clear):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* dom/StyledElement.cpp:
(WebCore::StyledElement::setInlineStyleFromString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 15:19:59 +0000 (15:19 +0000)]
Move CSSOM classes to using MutableStylePropertySet over StylePropertySet.
<http://webkit.org/b/114581>
Reviewed by Anders Carlsson.
Source/WebCore:
Moved ensureCSSStyleDeclaration() and ensureInlineCSSStyleDeclaration() from StylePropertySet
to MutableStylePropertySet.
StyleRule & co now return a MutableStylePropertySet* from mutableProperties() to aid with...
CSSStyleDeclaration now only deals with MutableStylePropertySets. This was already the case
in practice, we just didn't have any compile-time foot-shooting protection.
In other words, if there's a CSSOM wrapper for a given StylePropertySet, it's guaranteed to
be mutable, and the pointer types now reflect this.
* WebCore.exp.in:
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::StyleRuleCSSStyleDeclaration::StyleRuleCSSStyleDeclaration):
(WebCore::StyleRuleCSSStyleDeclaration::reattach):
* css/PropertySetCSSStyleDeclaration.h:
(WebCore::PropertySetCSSStyleDeclaration::PropertySetCSSStyleDeclaration):
(PropertySetCSSStyleDeclaration):
(WebCore::StyleRuleCSSStyleDeclaration::create):
(StyleRuleCSSStyleDeclaration):
(WebCore::InlineCSSStyleDeclaration::InlineCSSStyleDeclaration):
* css/StylePropertySet.cpp:
(WebCore::MutableStylePropertySet::ensureCSSStyleDeclaration):
(WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* css/StyleRule.cpp:
(WebCore::StyleRule::mutableProperties):
(WebCore::StyleRulePage::mutableProperties):
(WebCore::StyleRuleFontFace::mutableProperties):
(WebCore::StyleRuleViewport::mutableProperties):
(WebCore::StyleRuleFilter::mutableProperties):
* css/StyleRule.h:
(StyleRule):
(StyleRuleFontFace):
(StyleRulePage):
(StyleRuleViewport):
(StyleRuleFilter):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::StyleKeyframe::mutableProperties):
* css/WebKitCSSKeyframeRule.h:
(StyleKeyframe):
* dom/Attr.cpp:
(WebCore::Attr::style):
* dom/Attr.h:
(Attr):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::removeStyleAddedByNode):
(WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
(WebCore::EditingStyle::triStateOfStyle):
(WebCore::styleFromMatchedRulesForElement):
(WebCore::EditingStyle::removeStyleFromRulesAndContext):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::copyTypingStyle):
* editing/FrameSelection.h:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::buildObjectForAttributesStyle):
Source/WebKit/gtk:
* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::EditorClient::shouldApplyStyle):
Source/WebKit/mac:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
* WebView/WebFrame.mm:
(-[WebFrame _typingStyle]):
Source/WebKit2:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::shouldApplyStyle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Sun, 14 Apr 2013 14:24:46 +0000 (14:24 +0000)]
Move create() methods from StylePropertySet to MutableStylePropertySet.
<http://webkit.org/b/114574>
Reviewed by Antti Koivisto.
Move the two create() methods that create MutableStylePropertySets from StylePropertySet
to MutableStylePropertySet, and make them actually return MutableStylePropertySets.
Switch to using {Pass,}RefPtr<MutableStylePropertySet> where appropriate to keep things building.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::copyPropertiesInSet):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseFontFaceValue):
* css/DOMWindowCSS.cpp:
(WebCore::DOMWindowCSS::supports):
* css/ElementRuleCollector.cpp:
(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):
* css/FontLoader.cpp:
(WebCore::FontLoader::resolveFontStyle):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::copyPropertiesInSet):
(WebCore::MutableStylePropertySet::create):
* css/StylePropertySet.h:
(StylePropertySet):
(MutableStylePropertySet):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::resolveVariables):
* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::setMatrixValue):
* dom/Attr.cpp:
(WebCore::Attr::style):
* dom/Document.cpp:
(WebCore::Document::createCSSStyleDeclaration):
* dom/StyledElement.cpp:
(WebCore::StyledElement::ensureMutableInlineStyle):
(WebCore::StyledElement::rebuildPresentationAttributeStyle):
* editing/ApplyStyleCommand.cpp:
(WebCore::copyStyleOrCreateEmpty):
* editing/EditingStyle.cpp:
(WebCore::editingStyleFromComputedStyle):
(WebCore::HTMLAttributeEquivalent::attributeValueAsCSSValue):
(WebCore::EditingStyle::setProperty):
(WebCore::EditingStyle::extractAndRemoveTextDirection):
(WebCore::styleFromMatchedRulesForElement):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::EditingStyle::forceInline):
* editing/Editor.cpp:
(WebCore::Editor::setBaseWritingDirection):
* editing/EditorCommand.cpp:
(WebCore::executeApplyStyle):
(WebCore::executeToggleStyleInList):
(WebCore::executeApplyParagraphStyle):
(WebCore::executeMakeTextWritingDirectionLeftToRight):
(WebCore::executeMakeTextWritingDirectionNatural):
(WebCore::executeMakeTextWritingDirectionRightToLeft):
* html/HTMLTableElement.cpp:
(WebCore::leakBorderStyle):
(WebCore::HTMLTableElement::createSharedCellStyle):
(WebCore::leakGroupBorderStyle):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setFont):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::setPropertyText):
(WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
* page/DragController.cpp:
(WebCore::DragController::concludeEditDrag):
* svg/SVGElementRareData.h:
(WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::SVGFontFaceElement):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::getPresentationAttribute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ch.dumez@sisa.samsung.com [Sun, 14 Apr 2013 08:10:46 +0000 (08:10 +0000)]
Source/WebKit/efl: Unreviewed build fix for WebKit1 EFL after r148373 due to missing
header includes.
* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/EditorClientEfl.cpp:
* WebCoreSupport/FrameLoaderClientEfl.cpp:
* WebCoreSupport/InspectorClientEfl.cpp:
* ewk/ewk_frame.cpp:
* ewk/ewk_view.cpp:
* ewk/ewk_view_private.h:
(WebCore):
Source/WebKit2: Unreviewed build fix for WebKit2 EFL after r148373 due to missing
header includes.
* UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
* UIProcess/efl/InputMethodContextEfl.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148381
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 14 Apr 2013 04:13:33 +0000 (04:13 +0000)]
Fix three crashes seen on the bots after "Make Frame's ScriptController an OwnPtr and remove the #include"
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::open):
Check that the frame is not null (as it can be in cases like http/tests/xmlhttprequest/detaching-frame-2.html).
We used to be getting lucky, in that shouldBypassMainWorldContentSecurityPolicy(), the function that is ultimately
called, only operates on global state. Now that we need to actually dereference the Frame to get the ScriptController,
we see this crash.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148380
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Sun, 14 Apr 2013 04:06:59 +0000 (04:06 +0000)]
Build fix attempt for webkitbot. Unicodify everything.
* Scripts/webkitpy/tool/bot/irc_command.py:
(Whois.execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148379
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sun, 14 Apr 2013 03:55:35 +0000 (03:55 +0000)]
Selection direction is not preserved when applying styles
https://bugs.webkit.org/show_bug.cgi?id=110979
Patch by Sukolsak Sakshuwong <sukolsak@gmail.com> on 2013-04-13
Reviewed by Ryosuke Niwa.
Source/WebCore:
The patch is based on the one submitted by Shezan Baig.
If the starting selection was directional and its base was not first,
switch newStart and newEnd when setting the ending direction. Otherwise,
leave the order unchanged.
Test: editing/style/preserve-selection-direction.html
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::updateStartEnd):
LayoutTests:
Add a test, based on the work by Shezan Baig
* editing/style/preserve-selection-direction-expected.txt: Added.
* editing/style/preserve-selection-direction.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148378
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sun, 14 Apr 2013 03:02:48 +0000 (03:02 +0000)]
Added svn:ignore for inspector/CodeGeneratorInspectorStrings.pyc
* inspector: Added property svn:ignore.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148377
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Sun, 14 Apr 2013 02:12:56 +0000 (02:12 +0000)]
Add ObjC API for setting initialization data for the WKWebProcessPlugIn
https://bugs.webkit.org/show_bug.cgi?id=103846
Reviewed by Darin Adler.
* UIProcess/API/mac/WKProcessGroup.h:
Adds a new optional processGroupWillCreateConnectionToWebProcessPlugIn: method for the WKProcessGroupDelegate protocol,
which allows the user to pass (via an autoreleased return value) initialization data to the web process plugin.
* UIProcess/API/mac/WKProcessGroup.mm:
(getInjectedBundleInitializationUserData):
(setUpInectedBundleClient):
(-[WKProcessGroup initWithInjectedBundleURL:]):
(-[WKProcessGroup dealloc]):
Use the existing WKContextInjectedBundleClient infrastructure to pass the initialization data to the bundle
via the new ObjCObjectGraph APIObject.
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
Adds webProcessPlugIn:initializeWithObject: to the WKWebProcessPlugIn protocol, replacing webProcessPlugInInitialize:.
* WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::load):
Pass the initialization data to the web process plugin.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc