⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Nov 3, 2014:

11:51 PM Changeset in webkit [175515] by dburkart@apple.com
  • 3 edits
    2 copies in branches/safari-600.3-branch

Merge r173061. <rdar://problem/18856115>

11:39 PM WebKitGTK/KeepingTheTreeGreen edited by ltilve@igalia.com
(diff)
11:36 PM Changeset in webkit [175514] by commit-queue@webkit.org
  • 7 edits in trunk

Workaround for Cortex-A53 erratum 835769
https://bugs.webkit.org/show_bug.cgi?id=138315

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-11-03
Reviewed by Filip Pizlo.

This patch introduces CMake variable and preprocessor macro
WTF_CPU_ARM64_CORTEXA53 with the aim of enabling Cortex-A53-specific
.:

code paths, if set true.

  • Source/cmake/OptionsCommon.cmake:

Add -mfix-cortex-a53-835769 to the compiler flags if compiler supports
it.

  • Source/cmakeconfig.h.cmake:

#cmakedefine01 for WTF_CPU_ARM64_CORTEXA53

Source/JavaScriptCore:

code paths, if set true. The patch also implements one case where such
code paths are needed: the workaround for Cortex-A53 erratum 835769. If
WTF_CPU_ARM64_CORTEXA53 is set then:

  • CMake checks whether the compiler already has support for a workaround and adds -mfix-cortex-a53-835769 to the compiler flags if so,
  • the ARM64 backend of offlineasm inserts a nop between memory and multiply-accumulate instructions, and
  • the ARM64 assembler also inserts a nop between memory and (64-bit) multiply-accumulate instructions.
  • assembler/ARM64Assembler.h:

(JSC::ARM64Assembler::madd):
Call nopCortexA53Fix835769() to insert a nop if CPU(ARM64_CORTEXA53) and
if necessary.
(JSC::ARM64Assembler::msub): Likewise.
(JSC::ARM64Assembler::smaddl): Likewise.
(JSC::ARM64Assembler::smsubl): Likewise.
(JSC::ARM64Assembler::umaddl): Likewise.
(JSC::ARM64Assembler::umsubl): Likewise.
(JSC::ARM64Assembler::nopCortexA53Fix835769):
Added. Insert a nop if the previously emitted instruction was a load, a
store, or a prefetch, and if the current instruction is 64-bit.

  • offlineasm/arm64.rb:

Add the arm64CortexA53Fix835769 phase and call it from
getModifiedListARM64 to insert nopCortexA53Fix835769 between appropriate
macro instructions. Also, lower nopCortexA53Fix835769 to nop if
CPU(ARM64_CORTEXA53), to nothing otherwise.

  • offlineasm/instructions.rb:

Define macro instruction nopFixCortexA53Err835769.

11:22 PM Changeset in webkit [175513] by Chris Dumez
  • 43 edits in trunk/Source

Allow implicit conversion from Ref<T> to T&
https://bugs.webkit.org/show_bug.cgi?id=138331

Reviewed by Andreas Kling.

Source/WebCore:

Remove unnecessary calls to Ref<T>::get() now that a Ref<T> can be
converted implicitly to a T&.

No new tests, no behavior change.

Source/WebKit2:

Remove unnecessary calls to Ref<T>::get() now that a Ref<T> can be
converted implicitly to a T&.

Source/WTF:

Allow implicit conversion from Ref<T> to T& to reduce the amount of
Ref<>::get() calls in the code and increase readability. Unlike for
RefPtr, doing this for Ref should not be error prone.

  • wtf/Ref.h:

(WTF::Ref::operator T&):
(WTF::Ref::operator const T&):

  • wtf/RunLoop.cpp:

(WTF::RunLoop::Holder::runLoop):

8:59 PM Changeset in webkit [175512] by commit-queue@webkit.org
  • 10 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r175509.
https://bugs.webkit.org/show_bug.cgi?id=138349

broke some builds (Requested by msaboff on #webkit).

Reverted changeset:

"Update scope related slow path code to use scope register
added to opcodes"
https://bugs.webkit.org/show_bug.cgi?id=138254
http://trac.webkit.org/changeset/175509

8:57 PM Changeset in webkit [175511] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Adding test for array buffer and data view POST in XMLHttpRequest async send.
https://bugs.webkit.org/show_bug.cgi?id=138304

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-11-03
Reviewed by Alexey Proskuryakov.

Adding test for array buffer and data view

  • http/tests/xmlhttprequest/send-data-view-async-expected.txt: Added.
  • http/tests/xmlhttprequest/send-data-view-async.html: Added.
8:13 PM Changeset in webkit [175510] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.2-branch/Source

Versioning.

7:53 PM Changeset in webkit [175509] by msaboff@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Update scope related slow path code to use scope register added to opcodes
https://bugs.webkit.org/show_bug.cgi?id=138254

Reviewed by Mark Lam.

Updated slow paths for op_pop_scope, op_push_name_scope and op_push_with_scope.
Added scope register index parameter to the front of the relevant argument lists of the
slow functions. In the case of op_push_name_scope for x86 (32 bit), there aren't enough
registers to accomodate all the parameters. Therefore, added two new JSVALUE32_64 slow
paths called operationPushCatchScope() and operationPushFunctionNameScope() to eliminate
the last "type" argument.

  • assembler/MacroAssemblerCodeRef.h:

(JSC::FunctionPtr::FunctionPtr): Added a new template to take 6 arguments.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupArgumentsWithExecState):

  • jit/JIT.h:
  • jit/JITInlines.h:

(JSC::JIT::callOperation):
New variants of setupArgumentsWithExecState() and callOperation() to handle the new
combinations of argument types and counts.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_pop_scope):
(JSC::JIT::emit_op_push_name_scope):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_pop_scope):
(JSC::JIT::emit_op_push_name_scope):
Use the new slow paths.

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:

Updates to set the scope result using the scope register index. Added operationPushCatchScope()
and operationPushFunctionNameScope().

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
Updated the scope slow paths to use the scope register index in the instruction to read and
write the register instead of using CallFrame::scope() and CallFrame::setScope().

7:36 PM Changeset in webkit [175508] by msaboff@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

Add "get scope" byte code
https://bugs.webkit.org/show_bug.cgi?id=138326

Reviewed by Mark Lam.

Added op_get_scope. Added implementations for the LLInt and baseline JIT.
Provided nop implementation for DFG and FTL. The new byte code is emitted
after op_enter for any function, program or eval. It is expected that the
DFG will be implemented such that unneeded op_get_scope would be eliminated
during DFG compilation.

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
Added new op_get_scope bytecode.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitGetScope):

  • bytecompiler/BytecodeGenerator.h:

Emit new op_get_scope bytecode.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):
Added framework for new op_get_scope bytecode.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_get_scope):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_get_scope):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

Implementation of op_get_scope bytecode.

7:04 PM Changeset in webkit [175507] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.12-branch/Source

Versioning.

6:43 PM Changeset in webkit [175506] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Non-fast scrollable region overlay offsets the overlay by topContentInset
https://bugs.webkit.org/show_bug.cgi?id=138344

Reviewed Tim Horton.

Offset the region by topContentInset, and make it not green.

  • page/DebugPageOverlays.cpp:

(WebCore::NonFastScrollableRegionOverlay::updateRegion):

6:35 PM Changeset in webkit [175505] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Clarify RenderListMarker ownership model.
<https://webkit.org/b/138329>

Reviewed by Antti Koivisto.

A RenderListMarker is either in-tree and owned by the tree, or out-of-tree
and owned by a RenderListItem.

This patch changes RenderListItem::m_marker to be a raw pointer, and removes
the special handling of list markers in RenderElement child teardown.

We also remove the willBeDestroyed() hook. It was used to clear out the
m_marker pointer, but this is now done in the regular ~RenderListItem()
destructor with an assertion for marker sanity. m_marker is automatically
nulled out by a didDestroyListMarker() callback on RenderListItem.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::destroyLeftoverChildren):

Removed special handling of list marker renderers when deleting a
RenderElement's children.

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::RenderListItem):
(WebCore::RenderListItem::~RenderListItem):
(WebCore::RenderListItem::styleDidChange):
(WebCore::RenderListItem::insertOrMoveMarkerRendererIfNeeded):
(WebCore::RenderListItem::positionListMarker):

Made m_marker a raw pointer instead of a RenderPtr since the ownership
really switches between weak and strong reference.

(WebCore::RenderListItem::willBeDestroyed):

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::~RenderListMarker):

Added a regular destructor to replace the willBeDestroyed() hook.

  • rendering/RenderListItem.h:

(WebCore::RenderListItem::didDestroyListMarker):

Added. Called by ~RenderListMarker to null out RenderListItem::m_marker.

6:23 PM Changeset in webkit [175504] by Chris Dumez
  • 3 edits in trunk/LayoutTests

Fix jquery/manipulation.html flakiness on debug builds
https://bugs.webkit.org/show_bug.cgi?id=138335

Reviewed by Alexey Proskuryakov.

Update jquery's qunit config to not refresh the test results
regularly as this is not useful as part of layout testing.

This was causing qunit to set a timer every 13ms to check if
results should be updated and this timer would sometimes get
throttled after r175441.

(.):

6:08 PM Changeset in webkit [175503] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Expose visibleDebugOverlayRegions pref via the WK2 C SPI
https://bugs.webkit.org/show_bug.cgi?id=138342

Reviewed by Dan Bernstein.

Expose WKDebugOverlayRegions via the C SPI.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetVisibleDebugOverlayRegions):
(WKPreferencesGetVisibleDebugOverlayRegions):

  • UIProcess/API/C/WKPreferencesRef.h:
5:44 PM Changeset in webkit [175502] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.12.4

New tag.

5:26 PM Changeset in webkit [175501] by bshafiei@apple.com
  • 6 edits
    2 copies in branches/safari-600.1.4.12-branch

Merged r173851. rdar://problem/17801001

5:18 PM Changeset in webkit [175500] by dburkart@apple.com
  • 3 edits
    2 copies in branches/safari-600.3-branch

Merge r173046. <rdar://problem/18856092>

5:15 PM Changeset in webkit [175499] by dburkart@apple.com
  • 3 edits
    6 copies in branches/safari-600.3-branch

Merge r171849. <rdar://problem/18856127>

5:05 PM Changeset in webkit [175498] by Beth Dakin
  • 9 edits in trunk/Source/WebKit2

Implement action menus for editable text with spelling suggestions
https://bugs.webkit.org/show_bug.cgi?id=138333
-and corresponding-
rdar://problem/18742371

Reviewed by Tim Horton.

New types.

  • Shared/API/c/WKActionMenuItemTypes.h:
  • Shared/API/c/WKActionMenuTypes.h:

ActionMenuHitTestResult now stores the String result of the lookup.

  • Shared/mac/ActionMenuHitTestResult.h:
  • Shared/mac/ActionMenuHitTestResult.mm:

(WebKit::ActionMenuHitTestResult::encode):
(WebKit::ActionMenuHitTestResult::decode):

Make getGuessesForWord() public so we can call it from WKActionMenuController.

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WKActionMenuController.mm:

Select the text for all types of text menus.
(-[WKActionMenuController isMenuForTextContent]):
(-[WKActionMenuController willOpenMenu:withEvent:]):

Spelling suggestions are presented in a sub-menu and will replace the selection
when chosen.
(-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions:]):
(-[WKActionMenuController _changeSelectionToSuggestion:]):
(-[WKActionMenuController _createActionMenuItemForTag:]):
(-[WKActionMenuController _defaultMenuItems:]):

New function to store the lookupText as a String on the ActionMenuHitTestResult.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performActionMenuHitTestAtLocation):
(WebKit::WebPage::lookupTextAtLocation):

5:03 PM Changeset in webkit [175497] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: TextEditor search doesn't work after editing contents
https://bugs.webkit.org/show_bug.cgi?id=138198

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-11-03
Reviewed by Timothy Hatcher.

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype.customPerformSearch):
Fallback to pure TextEditor content searching (CodeMirror) if the editor has edits.

  • UserInterface/Views/TextEditor.js:

(WebInspector.TextEditor.prototype.hasEdits):
Check the CodeMirror clean state to known if we have edits or not.

4:56 PM Changeset in webkit [175496] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebCore

Move WebCore/bridge to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=138280

Reviewed by Anders Carlsson.

Clean up OwnPtr in WebCore/bridge.

No new tests, no behavior changes.

  • bridge/c/c_class.cpp:

(JSC::Bindings::CClass::methodNamed):
(JSC::Bindings::CClass::fieldNamed):

  • bridge/c/c_class.h: Use std::unique_ptr instead of OwnPtr.
  • bridge/objc/objc_class.h: ditto.
  • bridge/objc/objc_class.mm:

(JSC::Bindings::ObjcClass::methodNamed):
(JSC::Bindings::ObjcClass::fieldNamed):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::callObjCFallbackObject):

  • bridge/runtime_method.h:
4:17 PM Changeset in webkit [175495] by mitz@apple.com
  • 3 edits in trunk/Source/WebCore

Client certificate credentials with session persistence don’t work
https://bugs.webkit.org/show_bug.cgi?id=138330

Reviewed by Alexey Proskuryakov.

I think this is not testable with our test HTTP server.

  • platform/network/CredentialStorage.cpp:

(WebCore::CredentialStorage::set): Don’t require a valid URL for client certificate
credentials, since they don’t apply to a specific path. Don’t save such credentials to
CFNetwork’s persistent storage (we only do that as a workaround for sharing credentials
with the media framework, and we don’t want to expand the scope of the workaround).

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::receivedCredential): Changed to use the Credential consturctor
that takes a Credential and a new persistence, so that this code works not only with
user+password credentials.

4:12 PM Changeset in webkit [175494] by Simon Fraser
  • 21 edits
    2 adds in trunk

Add page overlays that show regions with mouseWheel event handlers, and the non-fast-scrollable region, and code to toggle them in MiniBrowser WK2
https://bugs.webkit.org/show_bug.cgi?id=138257

Reviewed by Tim Horton.
Source/WebCore:

Add code for debugging page overlays that show the non-fast scrollable region,
and the region with wheel event handlers. The list of region types is intended
to be easily extensible.

A singleton DebugPageOverlays maintains a map of Frame -> vector of overlays.
A purely inline code path is provided so that DebugPageOverlays::didLayout() is
fast.

For each region type, a PageOverlay::Client subclass knows how to generate
the region, which is painted into a document-level page overlay.

Add a set of bitflags to Settings to control region visibility.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • page/DebugPageOverlays.cpp: Added.

(WebCore::RegionOverlay::overlay):
(WebCore::MouseWheelRegionOverlay::updateRegion):
(WebCore::NonFastScrollableRegionOverlay::updateRegion):
(WebCore::RegionOverlay::create):
(WebCore::RegionOverlay::RegionOverlay):
(WebCore::RegionOverlay::~RegionOverlay):
(WebCore::RegionOverlay::pageOverlayDestroyed):
(WebCore::RegionOverlay::willMoveToPage):
(WebCore::RegionOverlay::didMoveToPage):
(WebCore::RegionOverlay::drawRect):
(WebCore::RegionOverlay::mouseEvent):
(WebCore::RegionOverlay::didScrollFrame):
(WebCore::RegionOverlay::recomputeRegion):
(WebCore::DebugPageOverlays::shared):
(WebCore::indexOf):
(WebCore::DebugPageOverlays::ensureRegionOverlayForFrame):
(WebCore::DebugPageOverlays::showRegionOverlay):
(WebCore::DebugPageOverlays::hideRegionOverlay):
(WebCore::DebugPageOverlays::regionChanged):
(WebCore::DebugPageOverlays::regionOverlayForFrame):
(WebCore::DebugPageOverlays::updateOverlayRegionVisibility):
(WebCore::DebugPageOverlays::settingsChanged):

  • page/DebugPageOverlays.h: Added.

(WebCore::DebugPageOverlays::hasOverlaysForFrame):
(WebCore::DebugPageOverlays::hasOverlays):
(WebCore::DebugPageOverlays::didLayout):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

  • page/Settings.h:
  • page/Settings.in:

Source/WebKit2:

Add private prefs to control visibility of debug-related page region overlays.

  • Shared/WebPreferencesDefinitions.h:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences _visibleDebugOverlayRegions]):
(-[WKPreferences _setVisibleDebugOverlayRegions:]):

  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:
  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::setDebugUInt32ValueIfInUserDefaults):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::updatePreferences): Update the overlays.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updatePreferences): Update the overlays.

Tools:

Add a "Debug Overlays" submenu item under "WebKit2-only Settings" which allows
the user to toggle region page overlays on and off. Two overlays are available,
for the non-fast scrollable region, and the region of element with wheel
event handlers.

  • MiniBrowser/mac/SettingsController.h:
  • MiniBrowser/mac/SettingsController.m:

(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController nonFastScrollableRegionOverlayVisible]):
(-[SettingsController wheelEventHandlerRegionOverlayVisible]):
(-[SettingsController preferenceKeyForRegionOverlayTag:]):
(-[SettingsController toggleDebugOverlay:]):
(-[SettingsController debugOverlayVisible:]):

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController didChangeSettings]):

3:02 PM Changeset in webkit [175493] by commit-queue@webkit.org
  • 9 edits in trunk/Source/JavaScriptCore

Web Inspector: Fix RWIProtocol 64-to-32 bit conversion warnings
https://bugs.webkit.org/show_bug.cgi?id=138325

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-11-03
Reviewed by Timothy Hatcher.

  • inspector/InspectorValues.h:

Vector's length really is an unsigned, so a static_cast here is fine.

  • inspector/scripts/codegen/generate_objective_c.py:

(ObjCGenerator.objc_type_for_raw_name):
Use int instead of NSInteger for APIs that eventually map to
InspectorObject's setInteger, which takes an int.

  • inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
  • inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
  • inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:

Rebaselined results with the type change.

2:54 PM Changeset in webkit [175492] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Video controls have lots of compositing layers
https://bugs.webkit.org/show_bug.cgi?id=138294

Reviewed by Eric Carlson.

After r175268 we get lots of separate small layers in the video
controls (but they pop into a single layer when opacity animates).

Fix this by putting an explicit z-index on -webkit-media-controls-panel
which is the element that animates opacity.

  • Modules/mediacontrols/mediaControlsApple.css:

(audio::-webkit-media-controls-panel):

2:27 PM Changeset in webkit [175491] by commit-queue@webkit.org
  • 76 edits
    2 copies
    3 adds in trunk/Source

Unreviewed, rolling out r175406, r175413, and r175423.
https://bugs.webkit.org/show_bug.cgi?id=138327

Multipart tests are still broken (Requested by ap on #webkit).

Reverted changesets:

"Eliminate ResourceBuffer and use SharedBuffer directly
instead"
https://bugs.webkit.org/show_bug.cgi?id=138174
http://trac.webkit.org/changeset/175406

"Unreviewed, iOS build fix since 175406."
http://trac.webkit.org/changeset/175413

"Fix assertion in CachedResource::addDataBuffer"
http://trac.webkit.org/changeset/175423

2:22 PM Changeset in webkit [175490] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed, fix bad assertion in r175487.

I mistakenly used it != values.end() instead of it == values.end()
so the debug bots are crashing.

  • css/StyleResolver.cpp:

(WebCore::createGridPosition):

2:14 PM Changeset in webkit [175489] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix the !ENABLE(VIDEO) build after r175279
https://bugs.webkit.org/show_bug.cgi?id=138320

Reviewed by Jer Noble.

  • page/ChromeClient.h:
1:19 PM Changeset in webkit [175488] by ap@apple.com
  • 3 edits in trunk/Tools

REGRESSION (Subpixel layout): Bubbles don't fit in Bugzilla review page
https://bugs.webkit.org/show_bug.cgi?id=138323

Reviewed by Zalan Bujtas.

  • QueueStatusServer/templates/statusbubble.html: Round the sizes up, not down.
12:48 PM Changeset in webkit [175487] by Chris Dumez
  • 10 edits in trunk/Source/WebCore

Support modern range loops over CSSValueList
https://bugs.webkit.org/show_bug.cgi?id=138285

Reviewed by Andreas Kling.

Add support for modern range loops over CSSValueList objects.
Port the code base to using range loops for CSSValueList objects and
drop the CSSValueListInspector / CSSValueListIterator classes as they
are no longer needed.

No new tests, no behavior change.

12:41 PM Changeset in webkit [175486] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

_actionMenuItemsForHitTestResult is given kWKActionMenuLink but an empty array of defaultMenuItems
https://bugs.webkit.org/show_bug.cgi?id=138321
<rdar://problem/18855134>

Reviewed by Beth Dakin.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController _defaultMenuItemsForLink]):
(-[WKActionMenuController _defaultMenuItems:]):
Move the HTTP-family-URLs-only condition to the place where we decide what kind of menu to
show. We depend on _defaultMenuItemsForLink returning the link menu, and should never
set the link menu type if we aren't going to build a link menu.

12:17 PM Changeset in webkit [175485] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

RenderCounter shouldn't need a pre-destructor hook.
<https://webkit.org/b/138316>

Reviewed by Antti Koivisto.

RenderCounter will automatically register/unregister itself with
the RenderView when constructed/destroyed.

It was using a willBeDestroyed() hook because it used to be that you
couldn't get to the RenderView in the destructor. That's no longer
an issue as Document promises that RenderView is the last render tree
node to go away.

  • rendering/RenderCounter.cpp:

(WebCore::RenderCounter::~RenderCounter):
(WebCore::RenderCounter::willBeDestroyed): Deleted.

  • rendering/RenderCounter.h:
12:08 PM Changeset in webkit [175484] by timothy_horton@apple.com
  • 6 edits in trunk/Source

Use FrameSnapshotting functions in FindController::getFindIndicatorBitmap
https://bugs.webkit.org/show_bug.cgi?id=138300
<rdar://problem/18855863>

Reviewed by Simon Fraser.

Share more code by using WebCore's FrameSnapshotting::snapshotSelection
in FindController instead of copying it into FindController wholesale.

  • WebProcess/WebPage/FindController.cpp:

(WebKit::getFindIndicatorBitmap):
Make getFindIndicatorBitmap static, rename it from getFindIndicatorBitmapAndRect,
and drop the rect argument because only one caller wanted it, and we no longer need
to compute it (this happens in WebCore now).

Use snapshotSelection; all of the removed paint behaviors get added by
code in or underneath snapshotSelection now.

Draw the snapshot into our ShareableBitmap; we could avoid this in a future patch
by refactoring the FrameSnapshotting functions to take GraphicsContexts.

(WebKit::FindController::getImageForFindMatch):
(WebKit::FindController::updateFindIndicator):
Adopt the new getFindIndicatorBitmap.

  • WebProcess/WebPage/FindController.h:

Remove getFindIndicatorBitmap(AndRect), which is now static.

  • WebCore.exp.in:
  • page/FrameSnapshotting.cpp:

(WebCore::snapshotSelection):
Move knowledge that selectionBounds can be empty down to WebCore.

12:03 PM Changeset in webkit [175483] by commit-queue@webkit.org
  • 17 edits
    2 copies
    1 add in trunk

Web Inspector: Show Selector's Specificity
https://bugs.webkit.org/show_bug.cgi?id=138189

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-11-03
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • inspector/protocol/CSS.json:

Create a new named type CSSSelector to include a selector's text and specificity.
The specificity tuple is optional as it may soon be made dynamic in some cases.

Source/WebCore:

Test: inspector/css/selector-specificity.html

  • css/CSSSelector.h:

Remove very stale comment. '*' is a starAtom now instead of a special -1 tag.
Made the specificity masks public class constants.

  • inspector/InspectorStyleSheet.h:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::buildArrayForComputedStyle):
(WebCore::InspectorStyle::styleWithProperties):
(WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
Drive by use release() in some cases to reduce ref count churn.

(WebCore::buildObjectForSelectorHelper):
(WebCore::selectorsFromSource):
(WebCore::InspectorStyleSheet::buildObjectForSelector):
(WebCore::InspectorStyleSheet::buildObjectForSelectorList):
Build CSSSelector objects for SelectorLists.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Main.html:
  • UserInterface/Test.html:

Add new files and strings.

  • UserInterface/Models/CSSMedia.js:

Constructor functions are not needed, remove unnecessary code.

  • UserInterface/Models/CSSRule.js:

(WebInspector.CSSRule.prototype.set selectors): Deleted.
This was unused and is no longer correct.

(WebInspector.CSSRule.prototype.get matchedSelectorText):
Update now that selectors are a list of objects, not just strings.

  • UserInterface/Models/CSSSelector.js:

(WebInspector.CSSSelector):
(WebInspector.CSSSelector.prototype.get specificity):
New model object for protocol type CSS.CSSSelector.

  • UserInterface/Models/DOMNodeStyles.js:

(WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload.return):
(WebInspector.DOMNodeStyles.prototype._parseSelectorListPayload):
(WebInspector.DOMNodeStyles.prototype._parseRulePayload):
Handle parsing old and new SelectorLists.

  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector):
(WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelectorText):
(WebInspector.CSSStyleDeclarationSection.prototype.refresh):
Update the code now that the list of selectors are model objects instead
of just selector text strings.

LayoutTests:

  • inspector/css/matched-style-properties.html:
  • inspector/css/selector-specificity-expected.txt: Added.
  • inspector/css/selector-specificity.html: Copied from LayoutTests/inspector/css/matched-style-properties.html.
11:59 AM Changeset in webkit [175482] by Csaba Osztrogonác
  • 5 edits in trunk/Source/WebKit2

URTBF after r175476 to make GTK and EFL build happy.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::setTextIndicator):
(WebKit::PageClientImpl::setFindIndicator): Deleted.

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::setTextIndicator):
(WebKit::WebView::setFindIndicator): Deleted.

  • UIProcess/CoordinatedGraphics/WebView.h:
11:40 AM Changeset in webkit [175481] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move -webkit-shape-outside to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138296

Reviewed by Zoltan Horvath.

Move -webkit-shape-outside to the new StyleBuilder, using custom
code as it does not always call setShapeOutside().

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyShape::setValue): Deleted.
(WebCore::ApplyPropertyShape::applyValue): Deleted.
(WebCore::ApplyPropertyShape::createHandler): Deleted.

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderFunctions::applyValueWebkitShapeOutside):

11:38 AM Changeset in webkit [175480] by commit-queue@webkit.org
  • 8 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Rebaseline after r175259.
https://bugs.webkit.org/show_bug.cgi?id=138317

Rebaseline pending test expectations affected by r175259.

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-11-03

  • platform/gtk/css1/box_properties/border_bottom-expected.txt:
  • platform/gtk/css1/box_properties/border_top-expected.txt:
  • platform/gtk/css1/formatting_model/inline_elements-expected.txt:
  • platform/gtk/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
  • platform/gtk/fast/table/border-collapsing/004-vertical-expected.txt:
  • platform/gtk/svg/custom/bug45331-expected.txt:
  • platform/gtk/svg/custom/path-bad-data-expected.txt:
11:36 AM Changeset in webkit [175479] by Joseph Pecoraro
  • 11 edits in trunk/Source/JavaScriptCore

Web Inspector: ObjC Protocol Interfaces should throw exceptions for nil arguments
https://bugs.webkit.org/show_bug.cgi?id=138221

Reviewed by Timothy Hatcher.

The RWIProtocol APIs will now raise exceptions when:

  • any properties are set on a type with a nil value or key (handled by RWIProtocolJSONObject)
  • required parameters in type constructors have nil value
  • required or optional command return parameters have nil values
  • required or optional event parameters have nil values

The exceptions include the name of the field when possible.

  • inspector/scripts/codegen/generate_objective_c.py:

(ObjCGenerator.is_type_objc_pointer_type):
Provide a quick check to see if type would be a pointer or not
in the ObjC API. Enums for example are not pointers in the API
because we manage converting them to/from strings.

  • inspector/scripts/codegen/generate_objective_c_backend_dispatcher_implementation.py:

(ObjectiveCConfigurationImplementationGenerator._generate_success_block_for_command):

  • inspector/scripts/codegen/generate_objective_c_frontend_dispatcher_implementation.py:

(ObjectiveCFrontendDispatcherImplementationGenerator._generate_event):

  • inspector/scripts/codegen/generate_objective_c_types_implementation.py:

(ObjectiveCTypesImplementationGenerator._generate_init_method_for_required_members):
(ObjectiveCTypesImplementationGenerator._generate_setter_for_member):
Throw exceptions when nil values are disallowed.

  • inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
  • inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
  • inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:

Rebaseline tests which include the exception raise calls.

11:36 AM Changeset in webkit [175478] by Joseph Pecoraro
  • 27 edits in trunk/Source

Web Inspector: ALTERNATE_DISPATCHERS Let the frontend know about extra agents
https://bugs.webkit.org/show_bug.cgi?id=138236

Reviewed by Brian Burg.

Source/JavaScriptCore:

Inform the frontend about any extra domains the backend may have
above and beyond the default list of domains for the debuggable type.
This approach means there is almost no cost to normal debugging.
When a JSContext is debugged with extra agents, a message is sent
to the frontend letting it know which domains to then activate,
and perform any initialization work that may be required.

  • inspector/InspectorAgentBase.h:

(Inspector::InspectorAgentBase::domainName):

  • inspector/InspectorAgentRegistry.cpp:

(Inspector::InspectorAgentRegistry::appendExtraAgent):

  • inspector/InspectorAgentRegistry.h:
  • inspector/scripts/codegen/generator_templates.py:

Provide a way to get a list of just the extra domains.
To aggregate this list provide a different "append"
specifically for extra agents.

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
When a frontend connects, inform it of the extra domains.

  • inspector/protocol/Inspector.json:
  • inspector/agents/InspectorAgent.h:
  • inspector/agents/InspectorAgent.cpp:

(Inspector::InspectorAgent::enable):
(Inspector::InspectorAgent::activateExtraDomains):
Send an event with the extra domains to activate.

Source/WebInspectorUI:

  • UserInterface/Protocol/InspectorBackend.js:

(InspectorBackendClass.prototype.activateDomain):

  • UserInterface/Protocol/InspectorObserver.js:

(WebInspector.InspectorObserver.prototype.activateExtraDomains):

  • UserInterface/Base/Object.js:
  • UserInterface/Base/Test.js:
  • UserInterface/Base/Main.js:

(WebInspector.activateExtraDomains):
Default state is that there are no extra domains. When extra domains
are activated, some agents need to be re-initialized. Dispatch a
model event so views also know to re-initialize.

  • UserInterface/Controllers/ApplicationCacheManager.js:

(WebInspector.ApplicationCacheManager.prototype._mainResourceDidChange):

  • UserInterface/Controllers/DOMTreeManager.js:

Be more careful about direct agent use during main resource changes.
That can happen with a JSContext extended with a Page agent.

  • UserInterface/Controllers/FrameResourceManager.js:

(WebInspector.FrameResourceManager):
(WebInspector.FrameResourceManager.prototype._mainFrameDidChange):
(WebInspector.FrameResourceManager.prototype._extraDomainsActivated):

  • UserInterface/Controllers/StorageManager.js:

(WebInspector.StorageManager):
(WebInspector.StorageManager.prototype._databaseForIdentifier):
(WebInspector.StorageManager.prototype._extraDomainsActivated):
It is possible new window.FooAgent's are available. Perform expected
initialization re-checking if the agents are now available.

  • UserInterface/Models/CSSCompletions.js:

Avoid re-initialization if we already did it. This should never
happen but this is just to be safe.

  • UserInterface/Views/ResourceSidebarPanel.js:

(WebInspector.ResourceSidebarPanel):
(WebInspector.ResourceSidebarPanel.prototype._extraDomainsActivated):
Don't disallow expandable tree elements if this is a JSContext with
extra domains. If that JSContext has resources, we would have been
unable to see child resources.

11:19 AM Changeset in webkit [175477] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION: Using a media element changes window.name
https://bugs.webkit.org/show_bug.cgi?id=138278
rdar://problem/18704134

Apply the same fix to mediaControlsBase.js. I do not know who uses this file, but
there is no reason to have the bug there.

  • Modules/mediacontrols/mediaControlsBase.js:

(Controller.prototype.addVideoListeners):
(Controller.prototype.removeVideoListeners):
(Controller.prototype.disconnectControls):

11:17 AM Changeset in webkit [175476] by timothy_horton@apple.com
  • 15 edits
    4 adds
    4 deletes in trunk/Source/WebKit2

Rename FindIndicator{Window} to TextIndicator{Window}
https://bugs.webkit.org/show_bug.cgi?id=138302
<rdar://problem/18855190>

Reviewed by Anders Carlsson.

Rename FindIndicator{Window} to TextIndicator{Window} (and related),
because it will soon be used to indicate ranges of text that are not
necessarily find-in-page results.

FindController still has things named 'findIndicator' internally,
and I left the API alone (because all the API bits are actually find-specific),
but the actual FindIndicator/Window and the message to set it up, etc. are all
now called Text*.

  • CMakeLists.txt:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/PageClient.h:
  • UIProcess/TextIndicator.cpp: Renamed from Source/WebKit2/UIProcess/FindIndicator.cpp.
  • UIProcess/TextIndicator.h: Renamed from Source/WebKit2/UIProcess/FindIndicator.h.
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:
  • UIProcess/ios/WKContentView.h:
  • UIProcess/mac/PageClientImpl.h:
  • UIProcess/mac/PageClientImpl.mm:
  • UIProcess/mac/TextIndicatorWindow.h: Renamed from Source/WebKit2/UIProcess/mac/FindIndicatorWindow.h.
  • UIProcess/mac/TextIndicatorWindow.mm: Renamed from Source/WebKit2/UIProcess/mac/FindIndicatorWindow.mm.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/FindController.cpp:
10:39 AM Changeset in webkit [175475] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

RenderLayerModelObject shouldn't need a pre-destructor hook.
<https://webkit.org/b/138314>

Reviewed by Antti Koivisto.

Move code from the willBeDestroyed() pre-destructor hook to the regular
~RenderLayerModelObject() destructor.

We just need to unregister the renderer from the FrameView's set of
viewport-constrained objects. That doesn't require being able to walk
the render tree or call virtuals, which is the main reason you'd use
willBeDestroyed().

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::~RenderLayerModelObject):
(WebCore::RenderLayerModelObject::willBeDestroyed): Deleted.

  • rendering/RenderLayerModelObject.h:
10:38 AM Changeset in webkit [175474] by Beth Dakin
  • 5 edits in trunk/Source/WebKit2

Implement action menus for editable text
https://bugs.webkit.org/show_bug.cgi?id=138284
-and corresponding-
rdar://problem/18742323

Reviewed by Tim Horton.

New item type for paste.

  • Shared/API/c/WKActionMenuItemTypes.h:

New menu type for editable text.

  • Shared/API/c/WKActionMenuTypes.h:
  • UIProcess/mac/WKActionMenuController.mm:

willOpenMenu should select text for both regular text menus and editable text
menus.
(-[WKActionMenuController willOpenMenu:withEvent:]):

Default items for editable text.
(-[WKActionMenuController _defaultMenuItemsForEditableText]):
(-[WKActionMenuController _paste:]):
(-[WKActionMenuController _createActionMenuItemForTag:]):

New method _hitTestResultForStage:(MenuUpdateStage)stage will figure out whether
we can use the WebHitTestResult from the ActionMenuHitTestResult or if we have to
use the potentially out-of-date WebHitTestResult that is cached on WebPageProxy.
An important difference between these results is that the ActionMenuHitTest
result, in addition to being more recent and accurate, also now includes shadow
content, which affects some editable regions on important sites such as
bugs.webkit.org and nytimes.com.
(-[WKActionMenuController _defaultMenuItems:]):
(-[WKActionMenuController _updateActionMenuItemsForStage:]):
(imageForResource:name::if): Deleted.

Allow shadow content in action menu hit testing.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performActionMenuHitTestAtLocation):
(WebKit::WebPage::selectLookupTextAtLocation):

10:36 AM Changeset in webkit [175473] by adachan@apple.com
  • 6 edits in trunk/Source/WebKit2

Persist the page's muted state across web process crashes.
https://bugs.webkit.org/show_bug.cgi?id=138195

Reviewed by Anders Carlsson.

Store the Page's muted state in WebPageCreationParameters so that state can be properly
restored after recovering from a crash in the web process.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
Initialize m_muted.
(WebKit::WebPageProxy::setMuted):
Update m_muted.
(WebKit::WebPageProxy::creationParameters):
Set the muted data member in WebPageCreationParameters.

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
Initialize the page's muted state with the muted value from WebPageCreationParameters.

10:01 AM Changeset in webkit [175472] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Fix the build if LOG_DISABLED=0 in release mode
https://bugs.webkit.org/show_bug.cgi?id=138309

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-11-03
Reviewed by Chris Dumez.

  • platform/efl/LoggingEfl.cpp:
9:56 AM Changeset in webkit [175471] by msaboff@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Add scope operand to op_resolve_scope
https://bugs.webkit.org/show_bug.cgi?id=138253

Reviewed by Mark Lam.

Added scope operand to op_resolve_scope. Although the scope register is filled in with
the ScopeChain register, this operand is not used in the processing of the bytecode.
That will be addressed in a future patch.

  • bytecode/BytecodeList.json: Lengthened the three bytecodes.
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode): Added code to dump the scope operand.

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
Updated the operand indecies for the processing of op_resolve_scope.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitResolveScope):
(JSC::BytecodeGenerator::emitGetOwnScope):
(JSC::BytecodeGenerator::emitReturn):
Added scope register to these emit functions and the bytecodes they emit.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emitSlow_op_resolve_scope):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emitSlow_op_resolve_scope):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

Updated the operand indecies for the processing of op_resolve_scope.

7:47 AM Changeset in webkit [175470] by evab.u-szeged@partner.samsung.com
  • 2 edits in trunk/LayoutTests

[EFL] Unskip passing ENCRYPTED_MEDIA_V2 tests
https://bugs.webkit.org/show_bug.cgi?id=138133

Reviewed by Csaba Osztrogonác.

  • platform/efl/TestExpectations:
3:46 AM Changeset in webkit [175469] by evab.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

[ninja] Don't remove response files for verbose builds
https://bugs.webkit.org/show_bug.cgi?id=137816

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitdirs.pm:

(determineNinjaVersion):
(buildCMakeGeneratedProject):

3:26 AM Changeset in webkit [175468] by ryuan.choi@gmail.com
  • 8 edits in trunk/Source/WebKit2

[EFL] Remove dependency of PageViewportController from PageViewportControllerClient
https://bugs.webkit.org/show_bug.cgi?id=138301

Reviewed by Gyuyoung Kim.

PaeViewportControllerClient does not need to keep the instance of PageViewPortController.
This patch removes it to simplify relation between them.
In addition, uses a reference for the client of PageViewportController.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):
(EwkView::setViewportPosition):

  • UIProcess/API/efl/EwkView.h:
  • UIProcess/CoordinatedGraphics/PageViewportController.cpp:

(WebKit::PageViewportController::PageViewportController):
(WebKit::PageViewportController::didChangeContentsSize):
(WebKit::PageViewportController::didRenderFrame):
(WebKit::PageViewportController::pageDidRequestScroll):
(WebKit::PageViewportController::syncVisibleContents):
(WebKit::PageViewportController::didChangeViewportAttributes):

  • UIProcess/CoordinatedGraphics/PageViewportController.h:
  • UIProcess/PageViewportControllerClient.h:
  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
(WebKit::PageViewportControllerClientEfl::setViewportPosition):
(WebKit::PageViewportControllerClientEfl::setController): Deleted.

  • UIProcess/efl/PageViewportControllerClientEfl.h:
3:08 AM Changeset in webkit [175467] by Chris Dumez
  • 5 edits in trunk/Source/WebCore

Move 'zoom' CSS property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138297

Reviewed by Antti Koivisto.

Move 'zoom' CSS property from DeprecatedStyleBuilder to the new
StyleBuilder by using custom code as it requires special handling.

No new tests, no behavior change.

  • css/makeprop.pl:

Add support for Custom=All StyleBuilder option to indicate
that the property requires custom code to set the initial,
inherit and current values.

12:22 AM Changeset in webkit [175466] by commit-queue@webkit.org
  • 12 edits in trunk

AX: Fix some minor typos related to the word "accessibility".
https://bugs.webkit.org/show_bug.cgi?id=138299

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-11-03
Reviewed by Chris Fleizach.

Source/WebCore:

No new tests, no behavior change.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::shouldUseAccessibilityObjectInnerText):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::shouldUseAccessiblityObjectInnerText): Deleted.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(getRunAttributesFromAccessibilityObject):
(webkitAccessibleTextGetRunAttributes):
(getRunAttributesFromAccesibilityObject): Deleted.

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore):

Source/WebCore/platform/gtk/po:

No new tests, no behavior change.

  • en_CA.po:

Source/WebKit/win:

No new tests, no behavior change.

  • AccessibleBase.h:

Source/WebKit2:

No new tests, no behavior change.

  • WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:

LayoutTests:

  • accessibility/aria-link-supports-press.html:

Nov 2, 2014:

11:53 PM Changeset in webkit [175465] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[GTK] Fix the build of FTL JIT
https://bugs.webkit.org/show_bug.cgi?id=138298

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-11-02
Reviewed by Carlos Garcia Campos.

.:

  • Source/cmake/OptionsGTK.cmake:

Remove the need for the LIBCXXABI package.

Tools:

  • gtk/jhbuild-optional.modules:

Bump up LLVM version to 3.5.0 release and apply patches.

  • gtk/patches/llvm-elf-add-stackmaps.patch:

Added. Adds .llvm_stackmaps section to ELF files. Backported from LLVM
trunk.

  • gtk/patches/llvm-elf-fix-x86_64-fdecfiencoding.patch:

Added. Ensures that PC-relative relocations in EH frames are not
truncated to 32 bits on x86_64.

2:47 PM Changeset in webkit [175464] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move string-typed properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138295

Reviewed by Antti Koivisto.

Move string-typed properties to the new StyleBuilder:
-webkit-hyphenate-character
-webkit-line-grid
-webkit-flow-into
-webkit-flow-from

No new tests, no behavior change.

10:19 AM Changeset in webkit [175463] by Chris Dumez
  • 10 edits in trunk/Source/WebCore

Unreviewed, rebaseline bindings tests after r175462.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjConstructor::constructJSTestObj):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionOptionsObject):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
(WebCore::jsTestObjConstructorFunctionClassMethod2):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod12):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence):
(WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence2):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionConvert5):
(WebCore::jsTestObjPrototypeFunctionStrictFunction):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithSequence):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithArray):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
(WebCore::jsTestObjPrototypeFunctionAny):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors1):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors3):
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors4):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsConstructor::constructJSTestTypedefs):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableArrayArg):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):

8:37 AM Changeset in webkit [175462] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Reduce the cost of argumentCount checks in the JS bindings
https://bugs.webkit.org/show_bug.cgi?id=138289

Reviewed by Sam Weinig.

Slightly reduce the cost of argumentCount checks in the JS bindings by
hinting to the compiler that it is UNLIKELY that those methods are
called with too few arguments.

I see a 3% progression on PerformanceTests/DOM/DOMDivWalk.html
performance test.

No new tests, no behavior change.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateArgumentsCountCheck):

Nov 2, 2014:

12:06 AM Changeset in webkit [175461] by ktf.kim@samsung.com
  • 1 edit
    4 adds in trunk/LayoutTests

[CSS] Add tests for :read-only and :read-write
https://bugs.webkit.org/show_bug.cgi?id=92473

Add test case for :readonly and :readwrite pseudoclass for common elements

Reviewed by Benjamin Poulain.

  • fast/css/readonly-pseudoclass-common-element-expected.txt: Added.
  • fast/css/readonly-pseudoclass-common-element.html: Added.
  • fast/css/readwrite-pseudoclass-editable-expected.txt: Added.
  • fast/css/readwrite-pseudoclass-editable.html: Added.

Nov 1, 2014:

11:59 PM Changeset in webkit [175460] by ap@apple.com
  • 3 edits
    2 adds
    1 delete in trunk

REGRESSION: Using a media element changes window.name
https://bugs.webkit.org/show_bug.cgi?id=138278
rdar://problem/18704134

Reviewed by Jer Noble.

Source/WebCore:

Test: fast/media/window-name.html

Use an actual variable for name (and while at it, for "item" as well).

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.addVideoListeners):
(Controller.prototype.removeVideoListeners):
(Controller.prototype.disconnectControls):

LayoutTests:

  • fast/media/window-name-expected.txt: Added.
  • fast/media/window-name.html: Added.
  • platform/mac/webarchive/loading/video-in-webarchive-expected.txt: Removed.

This result was incorrect due to this bug, and now Mac matches cross-platform
results.

11:55 PM Changeset in webkit [175459] by Chris Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Mark jquery/manipulation.html as flakey on Debug bots as marking it
as slow did not help.

10:58 PM Changeset in webkit [175458] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move "direction" CSS property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138288

Reviewed by Sam Weinig.

Move "direction" CSS property to the new StyleBuilder by using custom
code as it requires special handling to call
Document::setDirectionSetOnDocumentElement() when necessary.

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyDirection::applyValue): Deleted.
(WebCore::ApplyPropertyDirection::createHandler): Deleted.

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderFunctions::applyValueDirection):

9:40 PM Changeset in webkit [175457] by Chris Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed, fix double-slash in previous gardening commit.

8:17 PM Changeset in webkit [175456] by Chris Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Mark jquery/manipulation.html as slow on Debug builds until I can
investigate how to avoid this with timer throttling.

7:31 PM Changeset in webkit [175455] by ddkilzer@apple.com
  • 2 edits in trunk/Source/bmalloc

JavaScriptCore is missing debug info for bmalloc because libbmalloc.a is stripped
<https://webkit.org/b/138286>
<rdar://problem/18847087>

Reviewed by Dan Bernstein.

  • Configurations/bmalloc.xcconfig: Set STRIP_INSTALLED_PRODUCT

to NO for the target that produces libbmalloc.a so that the
debug symbols will be linked into JavaScriptCore and end up in
its dSYM file.

3:18 PM Changeset in webkit [175454] by weinig@apple.com
  • 7 edits in trunk/Source/WebCore

Move the -webkit-transform property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138283

Reviewed by Chris Dumez.

Move the -webkit-transform property from StyleResolver to the new
generated StyleBuilder. Adds a converter for TransformOperations.

  • css/CSSPropertyNames.in:
  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertTransform):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • css/TransformFunctions.cpp:

(WebCore::transformsForValue):

  • css/TransformFunctions.h:
  • css/WebKitCSSMatrix.cpp:

(WebCore::WebKitCSSMatrix::setMatrixValue):

11:11 AM Changeset in webkit [175453] by benjamin@webkit.org
  • 4 edits
    14 adds in trunk

Fix the specificity of the extended :not() selector
https://bugs.webkit.org/show_bug.cgi?id=138275

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-11-01
Reviewed by Andreas Kling.

Source/WebCore:

The current draft says "The specificity of a :not() pseudo-class
is the specificity of the most specifc complex selector in its selector list."

It is still unclear how :not() plays with other new selectors. Until that is clarified,
this only handle the simple cases.

Tests: fast/css/not-self-specificity.html

fast/css/not-specificity-1.html
fast/css/not-specificity-2.html
fast/css/not-specificity-3.html
fast/css/not-specificity-4.html
fast/css/not-specificity-5.html
fast/css/not-specificity-6.html

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForOneSelector):

LayoutTests:

  • fast/css/not-self-specificity-expected.html: Added.
  • fast/css/not-self-specificity.html: Added.

Test that :not() itself does not influence the specificity,
only the nested selectors contribute to the global specificity.

  • fast/css/not-specificity-1-expected.html: Added.
  • fast/css/not-specificity-1.html: Added.
  • fast/css/not-specificity-2-expected.html: Added.
  • fast/css/not-specificity-2.html: Added.
  • fast/css/not-specificity-3-expected.html: Added.
  • fast/css/not-specificity-3.html: Added.

Tests for compound selectors.
All tests are variations of the same base testing specificity
and position.

  • fast/css/not-specificity-4-expected.html: Added.
  • fast/css/not-specificity-4.html: Added.
  • fast/css/not-specificity-5-expected.html: Added.
  • fast/css/not-specificity-5.html: Added.
  • fast/css/not-specificity-6-expected.html: Added.
  • fast/css/not-specificity-6.html: Added.

Same thing for complex selectors.

  • fast/selectors/class-style-update-with-not-expected.txt:

Yeah, one more test fixed :)

4:16 AM Changeset in webkit [175452] by gyuyoung.kim@samsung.com
  • 131 edits
    3 adds in trunk/LayoutTests

[EFL] Unreviewed EFL gardening.
https://bugs.webkit.org/show_bug.cgi?id=138276

Rebaseline after r175259.

Patch by Hunseop Jeong <Hunseop Jeong> on 2014-11-01

  • platform/efl/css1/basic/containment-expected.txt:
  • platform/efl/css1/basic/contextual_selectors-expected.txt:
  • platform/efl/css1/basic/grouping-expected.txt:
  • platform/efl/css1/basic/id_as_selector-expected.txt:
  • platform/efl/css1/basic/inheritance-expected.txt:
  • platform/efl/css1/box_properties/border-expected.txt:
  • platform/efl/css1/box_properties/border_bottom-expected.txt:
  • platform/efl/css1/box_properties/border_bottom_inline-expected.txt:
  • platform/efl/css1/box_properties/border_bottom_width-expected.txt:
  • platform/efl/css1/box_properties/border_bottom_width_inline-expected.txt:
  • platform/efl/css1/box_properties/border_color-expected.txt:
  • platform/efl/css1/box_properties/border_color_inline-expected.txt:
  • platform/efl/css1/box_properties/border_inline-expected.txt:
  • platform/efl/css1/box_properties/border_left-expected.txt:
  • platform/efl/css1/box_properties/border_left_inline-expected.txt:
  • platform/efl/css1/box_properties/border_left_width-expected.txt:
  • platform/efl/css1/box_properties/border_left_width_inline-expected.txt:
  • platform/efl/css1/box_properties/border_right-expected.txt:
  • platform/efl/css1/box_properties/border_right_inline-expected.txt:
  • platform/efl/css1/box_properties/border_right_width-expected.txt:
  • platform/efl/css1/box_properties/border_right_width_inline-expected.txt:
  • platform/efl/css1/box_properties/border_style-expected.txt:
  • platform/efl/css1/box_properties/border_style_inline-expected.txt:
  • platform/efl/css1/box_properties/border_top-expected.txt:
  • platform/efl/css1/box_properties/border_top_inline-expected.txt:
  • platform/efl/css1/box_properties/border_top_width-expected.txt:
  • platform/efl/css1/box_properties/border_top_width_inline-expected.txt:
  • platform/efl/css1/box_properties/border_width-expected.txt:
  • platform/efl/css1/box_properties/border_width_inline-expected.txt:
  • platform/efl/css1/box_properties/clear-expected.txt:
  • platform/efl/css1/box_properties/clear_float-expected.txt:
  • platform/efl/css1/box_properties/float-expected.txt:
  • platform/efl/css1/box_properties/float_elements_in_series-expected.txt:
  • platform/efl/css1/box_properties/float_margin-expected.txt:
  • platform/efl/css1/box_properties/float_on_text_elements-expected.txt:
  • platform/efl/css1/box_properties/height-expected.txt:
  • platform/efl/css1/box_properties/margin-expected.txt:
  • platform/efl/css1/box_properties/margin_bottom-expected.txt:
  • platform/efl/css1/box_properties/margin_bottom_inline-expected.txt:
  • platform/efl/css1/box_properties/margin_inline-expected.txt:
  • platform/efl/css1/box_properties/margin_left-expected.txt:
  • platform/efl/css1/box_properties/margin_left_inline-expected.txt:
  • platform/efl/css1/box_properties/margin_right-expected.txt:
  • platform/efl/css1/box_properties/margin_right_inline-expected.txt:
  • platform/efl/css1/box_properties/margin_top-expected.txt:
  • platform/efl/css1/box_properties/margin_top_inline-expected.txt:
  • platform/efl/css1/box_properties/padding-expected.txt:
  • platform/efl/css1/box_properties/padding_bottom-expected.txt:
  • platform/efl/css1/box_properties/padding_bottom_inline-expected.txt:
  • platform/efl/css1/box_properties/padding_inline-expected.txt:
  • platform/efl/css1/box_properties/padding_left-expected.txt:
  • platform/efl/css1/box_properties/padding_left_inline-expected.txt:
  • platform/efl/css1/box_properties/padding_right-expected.txt:
  • platform/efl/css1/box_properties/padding_right_inline-expected.txt:
  • platform/efl/css1/box_properties/padding_top-expected.txt:
  • platform/efl/css1/box_properties/padding_top_inline-expected.txt:
  • platform/efl/css1/box_properties/width-expected.txt:
  • platform/efl/css1/cascade/cascade_order-expected.txt:
  • platform/efl/css1/cascade/important-expected.txt:
  • platform/efl/css1/classification/display-expected.txt:
  • platform/efl/css1/classification/list_style-expected.txt:
  • platform/efl/css1/classification/list_style_image-expected.txt:
  • platform/efl/css1/classification/list_style_position-expected.txt:
  • platform/efl/css1/classification/list_style_type-expected.txt:
  • platform/efl/css1/classification/white_space-expected.txt:
  • platform/efl/css1/color_and_background/background-expected.txt:
  • platform/efl/css1/color_and_background/background_attachment-expected.txt:
  • platform/efl/css1/color_and_background/background_color-expected.txt:
  • platform/efl/css1/color_and_background/background_image-expected.txt:
  • platform/efl/css1/color_and_background/background_position-expected.txt:
  • platform/efl/css1/color_and_background/background_repeat-expected.txt:
  • platform/efl/css1/color_and_background/color-expected.txt:
  • platform/efl/css1/conformance/forward_compatible_parsing-expected.txt:
  • platform/efl/css1/font_properties/font-expected.txt:
  • platform/efl/css1/font_properties/font_family-expected.txt:
  • platform/efl/css1/font_properties/font_size-expected.txt:
  • platform/efl/css1/font_properties/font_style-expected.txt:
  • platform/efl/css1/font_properties/font_variant-expected.txt:
  • platform/efl/css1/font_properties/font_weight-expected.txt:
  • platform/efl/css1/formatting_model/canvas-expected.txt:
  • platform/efl/css1/formatting_model/floating_elements-expected.txt:
  • platform/efl/css1/formatting_model/height_of_lines-expected.txt:
  • platform/efl/css1/formatting_model/inline_elements-expected.txt:
  • platform/efl/css1/formatting_model/replaced_elements-expected.txt:
  • platform/efl/css1/formatting_model/vertical_formatting-expected.txt:
  • platform/efl/css1/pseudo/anchor-expected.txt:
  • platform/efl/css1/pseudo/firstletter-expected.txt:
  • platform/efl/css1/pseudo/firstline-expected.txt:
  • platform/efl/css1/pseudo/multiple_pseudo_elements-expected.txt:
  • platform/efl/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
  • platform/efl/css1/text_properties/letter_spacing-expected.txt:
  • platform/efl/css1/text_properties/line_height-expected.txt:
  • platform/efl/css1/text_properties/text_align-expected.txt:
  • platform/efl/css1/text_properties/text_decoration-expected.txt:
  • platform/efl/css1/text_properties/text_indent-expected.txt:
  • platform/efl/css1/text_properties/text_transform-expected.txt:
  • platform/efl/css1/text_properties/vertical_align-expected.txt:
  • platform/efl/css1/text_properties/word_spacing-expected.txt:
  • platform/efl/css1/units/color_units-expected.txt:
  • platform/efl/css1/units/length_units-expected.txt:
  • platform/efl/css1/units/percentage_units-expected.txt:
  • platform/efl/css1/units/urls-expected.txt:
  • platform/efl/css2.1/t100801-c548-ln-ht-00-c-a-expected.txt:
  • platform/efl/css2.1/t1606-c562-white-sp-00-b-ag-expected.txt:
  • platform/efl/fast/css/empty-pseudo-class-expected.txt:
  • platform/efl/fast/css/first-child-pseudo-class-expected.txt:
  • platform/efl/fast/css/last-child-pseudo-class-expected.txt:
  • platform/efl/fast/css/only-child-pseudo-class-expected.txt:
  • platform/efl/fast/forms/targeted-frame-submission-expected.txt:
  • platform/efl/fast/frames/onlyCommentInIFrame-expected.txt:
  • platform/efl/fast/html/listing-expected.txt:
  • platform/efl/fast/invalid/junk-data-expected.txt:
  • platform/efl/fast/invalid/missing-end-tag-expected.txt:
  • platform/efl/fast/loader/text-document-wrapping-expected.txt:
  • platform/efl/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
  • platform/efl/fast/parser/xhtml-alternate-entities-expected.txt:
  • platform/efl/fast/table/border-collapsing/004-expected.txt:
  • platform/efl/fast/table/border-collapsing/004-vertical-expected.txt:
  • platform/efl/fast/text/whitespace/001-expected.txt: Added.
  • platform/efl/fast/text/whitespace/013-expected.txt: Added.
  • platform/efl/fast/text/whitespace/014-expected.txt: Added.
  • platform/efl/fast/text/whitespace/022-expected.txt:
  • platform/efl/fast/text/whitespace/024-expected.txt:
  • platform/efl/fast/text/whitespace/030-expected.txt:
  • platform/efl/fast/xsl/xslt-extra-content-at-end-expected.txt:
  • platform/efl/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
  • platform/efl/svg/hixie/error/012-expected.txt:
  • platform/efl/tables/mozilla/bugs/45621-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug139524-2-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug21518-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug22122-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
2:59 AM Changeset in webkit [175451] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r163656): Remote inspector doesn't work unless preferences change after page initialization
https://bugs.webkit.org/show_bug.cgi?id=138246

Reviewed by Joseph Pecoraro.

The problem is that initializeWebPage() is still using
pageGroup().preferences() instead of m_preferences to check if
developer extras are enabled to enable remote inspection of the page.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage): Use m_preferences
instead of pageGroup().preferences().

2:55 AM Changeset in webkit [175450] by Carlos Garcia Campos
  • 7 edits in trunk

REGRESSION(CMake): Make it possible to build without introspection
https://bugs.webkit.org/show_bug.cgi?id=138006

Reviewed by Philippe Normand.

.:

Add ENABLE_INTROSPECTION option.

  • Source/PlatformGTK.cmake: Dot not add gir global target if

introspection is disabled.

  • Source/cmake/OptionsGTK.cmake: Do not add gir individual targets if

introspection is disabled.

Source/JavaScriptCore:

Do not install introspection files when introspection is disabled.

  • PlatformGTK.cmake:

Source/WebKit2:

Do not install introspection files when introspection is disabled.

  • PlatformGTK.cmake:

Oct 31, 2014:

10:34 PM Changeset in webkit [175449] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Removed a reference to a file that’s been deleted.

  • WebKit2.xcodeproj/project.pbxproj: Removed reference to XPCPtr.h.
9:23 PM Changeset in webkit [175448] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Use std::unique_ptr instead of OwnPtr in CoordinatorDrawingProxy
https://bugs.webkit.org/show_bug.cgi?id=138238

Reviewed by Ryosuke Niwa.

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:

(WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy): Use std::make_unique.
(WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode):

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h: Use std::unique_ptr instead of OwnPtr.
8:22 PM Changeset in webkit [175447] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix the Debug builds after r175446

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-31

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::selectorText):

8:06 PM Changeset in webkit [175446] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

Add initial parsing functionality of :lang pseudo class in Selectors Level 4.
https://bugs.webkit.org/show_bug.cgi?id=138170

Patch by Dhi Aurrahman <diorahman@rockybars.com> on 2014-10-31
Reviewed by Benjamin Poulain.

Source/WebCore:

Add initial parsing functionality of :lang pseudo class in Selectors Level 4,
as specified in [1].

It parses comma-separated list of string arguments. Currently, it throws error
on arguments with "*" (e.g. :lang(zh, *-hant)).

Add additional test file fast/selectors/lang-invalid.html along side the
fast/css/css-selector-text.html.

[1] http://dev.w3.org/csswg/selectors4/#the-lang-pseudo

Test: fast/selectors/lang-invalid.html

  • css/CSSGrammar.y.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::detectFunctionTypeToken):

  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::setArgumentList):

  • css/CSSParserValues.h:
  • css/CSSSelector.cpp:

(WebCore::appendArgumentList):
(WebCore::CSSSelector::selectorText):
(WebCore::CSSSelector::setArgumentList):

  • css/CSSSelector.h:

(WebCore::CSSSelector::argumentList):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):

LayoutTests:

Add tests for comma-separated list arguments for :lang

  • fast/css/css-selector-text-expected.txt: Updated.
  • fast/css/css-selector-text.html: Updated.
  • fast/selectors/lang-invalid-expected.txt: Added.
  • fast/selectors/lang-invalid.html: Added.
6:31 PM Changeset in webkit [175445] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

StyleBuilder: Stop using custom code for -webkit-hyphenate-limit-lines
https://bugs.webkit.org/show_bug.cgi?id=138270

Reviewed by Antti Koivisto.

Stop using custom code for -webkit-hyphenate-limit-lines in the new
StyleBuilder. We don't really need to, we can just have a Converter
specific to this property.

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertWebkitHyphenateLimitLines):

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderFunctions::applyValueWebkitHyphenateLimitLines): Deleted.

6:07 PM Changeset in webkit [175444] by weinig@apple.com
  • 18 edits in trunk/Source/WebKit2

Add bundle SPI to customize the action menu
<rdar://problem/18830771>
https://bugs.webkit.org/show_bug.cgi?id=138271

Reviewed by Anders Carlsson.

  • Adds a new function to the WKBundlePageContextMenuClient that allows the client to pass construct user data in the bundle that can be available when customizing the menu in -[WKView _actionMenuItemsForHitTestResult...].
  • Changes the signature of -[WKView _actionMenuItemsForHitTestResult...] to add userData.
  • Makes the actual hit test result available in the second invocation of -[WKView _actionMenuItemsForHitTestResult...] by serializing it in the ActionMenuHitTestResult.
  • Shared/mac/ActionMenuHitTestResult.h:
  • Shared/mac/ActionMenuHitTestResult.mm:

(WebKit::ActionMenuHitTestResult::encode):
(WebKit::ActionMenuHitTestResult::decode):
Adds the WebHitTestResult and the original hit test request location.

  • UIProcess/API/Cocoa/WKViewPrivate.h:

Adds a new version of _actionMenuItemsForHitTestResult that passes userData along.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _didPerformActionMenuHitTest:userData:]):
(-[WKView _actionMenuItemsForHitTestResult:withType:defaultActionMenuItems:userData:]):

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didPerformActionMenuHitTest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/PageClientImpl.h:
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::didPerformActionMenuHitTest):
Pipe the user data through to the WKView.

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController prepareForMenu:withEvent:]):
(-[WKActionMenuController didPerformActionMenuHitTest:userData:]):
(-[WKActionMenuController menuNeedsUpdate:]):
(-[WKActionMenuController _updateActionMenuItemsForStage:]):
Differentiate between the two times _updateActionMenuItems was called via a new stage parameter,
(it is called once in prepareForMenu, and once in menuNeedsUpdate). Use the last mouse move hit
test result in the prepareForMenu case (as we don't have a real result yet), and the hit result
passed in via didPerformActionMenuHitTest in the menuNeedsUpdate case (assuming we didn't time out)
waiting on the web process.

  • WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:

(WebKit::InjectedBundlePageContextMenuClient::prepareForActionMenu):

  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performActionMenuHitTestAtLocation):
Adds new bundle SPI to collect user data to pass to the -[WKView _actionMenuItemsForHitTestResult...] method.

5:26 PM Changeset in webkit [175443] by gyuyoung.kim@samsung.com
  • 9 edits in trunk/Source

Use std::unique_ptr for TypeCountSet
https://bugs.webkit.org/show_bug.cgi?id=138242

Reviewed by Andreas Kling.

Source/JavaScriptCore:

  • heap/Heap.cpp:

(JSC::Heap::protectedObjectTypeCounts):
Use std::unique_ptr<> instead of PassOwnPtr|OwnPtr.
(JSC::Heap::objectTypeCounts): ditto.

  • heap/Heap.h:

Source/WebKit/mac:

  • Misc/WebCoreStatistics.mm:

(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): Use std::unique_ptr<> instead of OwnPtr.
(+[WebCoreStatistics javaScriptObjectTypeCounts]): ditto.

Source/WebKit/win:

  • WebCoreStatistics.cpp:

(WebCoreStatistics::javaScriptProtectedObjectTypeCounts): Use std::unique_ptr<> instead of OwnPtr.
(WebCoreStatistics::javaScriptObjectTypeCounts): ditto.

Source/WebKit2:

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::getWebCoreStatistics): Use std::unique_ptr<> instead of OwnPtr.

5:23 PM Changeset in webkit [175442] by msaboff@apple.com
  • 2 edits in trunk/Tools

No way to specify target os or architecture when using the --no-copy option with run-jsc-stress-tests
https://bugs.webkit.org/show_bug.cgi?id=138268

Reviewed by Andreas Kling.

Added a --arch and --os option to set or override the values that are
normally computed based on examining the JavaScriptCore we want to test.

  • Scripts/run-jsc-stress-tests:
5:12 PM Changeset in webkit [175441] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Support throttling of DOMTimers using nested setTimeout() calls
https://bugs.webkit.org/show_bug.cgi?id=138262

Reviewed by Gavin Barraclough.

Extend DOMTimers throttling support to timers that are using nested
setTimeout() calls instead of a setInterval(). To achieve this, this
patch introduces a NestedTimersVector singleton class where nested
timers are appended, and for which we potentially update the next
firing time, after the parent timer is done executing.

I have verified this helps on cnn.com for example, which has timers
interacting with non-visible plugins that are scheduled using nested
setTimeout() calls with a frequency of 150 / 200 ms.

  • page/DOMTimer.cpp:

(WebCore::NestedTimersVector::NestedTimersVector):
(WebCore::NestedTimersVector::~NestedTimersVector):
(WebCore::NestedTimersVector::registerTimer):
(WebCore::NestedTimersVector::begin):
(WebCore::NestedTimersVector::end):
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::updateThrottlingStateIfNecessary):
(WebCore::DOMTimer::fired):

  • page/DOMTimer.h:
4:58 PM Changeset in webkit [175440] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

4:46 PM Changeset in webkit [175439] by Chris Dumez
  • 4 edits
    2 adds in trunk

Move -webkit-marquee-increment property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138208

Reviewed by Andreas Kling.

Move -webkit-marquee-increment property from DeprecatedStyleBuilder to
the new StyleBuilder so that it is generated from CSSPropertyNames.in.
Custom code is used to set the value due to the !length.isUndefined()
check before calling setMarqueeIncrement().

Test: fast/css/webkit-marquee-increment-bad-value.html

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyLength::setValue): Deleted.
(WebCore::ApplyPropertyLength::applyValue): Deleted.
(WebCore::ApplyPropertyLength::createHandler): Deleted.
(WebCore::ApplyPropertyMarqueeIncrement::applyValue): Deleted.
(WebCore::ApplyPropertyMarqueeIncrement::createHandler): Deleted.

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderFunctions::applyValueWebkitMarqueeIncrement):

4:38 PM Changeset in webkit [175438] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Brace cleanup in StyleResolver::adjustRenderStyle()
https://bugs.webkit.org/show_bug.cgi?id=138267

Reviewed by Chris Dumez.

No braces for single-line clauses.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):

4:37 PM Changeset in webkit [175437] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.25-branch/Source

Versioning.

4:37 PM Changeset in webkit [175436] by mitz@apple.com
  • 2 edits in trunk/Tools

llvmForJSC build emits a linker warning that it can't find usr/local/LLVMForJavaScriptCore/lib under the build directory
https://bugs.webkit.org/show_bug.cgi?id=138259

Reviewed by Geoff Garen.

  • Scripts/copy-webkitlibraries-to-product-directory: Create this directory even if it’s

going to be empty to silence the warning.

4:25 PM Changeset in webkit [175435] by Chris Dumez
  • 8 edits in trunk/Source/WebCore

Fix several warnings reported by clang static analyzer in WebCore
https://bugs.webkit.org/show_bug.cgi?id=138258

Reviewed by Joseph Pecoraro.

Fix several warnings reported by clang static analyzer in WebCore
related to variable unnecessary assignments and scope.

No new tests, no behavior change.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getUpperLeftCorner):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • inspector/InspectorStyleTextEditor.cpp:

(WebCore::InspectorStyleTextEditor::replaceProperty):

  • page/ContextMenuController.cpp:

(WebCore::openNewWindow):

  • page/DragController.cpp:

(WebCore::createMouseEvent):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintSelectionBackground):

4:21 PM Changeset in webkit [175434] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Whitespace cleanup in Screen.h
https://bugs.webkit.org/show_bug.cgi?id=138265

Reviewed by Chris Dumez.

No indent for namespaces. Mark 'final'. Fix * placement.

  • page/Screen.h:

(WebCore::Screen::create):

4:14 PM Changeset in webkit [175433] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Change the ScrollingThread code to use RunLoop::main().dispatch() rather than callOnMainThread(), which has Obj-C overhead
https://bugs.webkit.org/show_bug.cgi?id=138263

Reviewed by Geoffrey Garen.

callOnMainThread() uses -performSelector:onMainThread:withObject:waitUntilDone:, so
it's slightly more efficient to use RunLoop::main().dispatch().

  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::invalidate):
(WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):
(WebCore::ThreadedScrollingTree::handleWheelEventPhase):

4:10 PM Changeset in webkit [175432] by benjamin@webkit.org
  • 3 edits
    6 adds in trunk

Pseudo classes with an escaped parenthesis generate invalid rules
https://bugs.webkit.org/show_bug.cgi?id=138266

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-31
Reviewed by Antti Koivisto.

Source/WebCore:

Since the functional pseudo classes are part of the list of PseudoClassAndCompatibilityElement,
they could be created by the rule

pseudo:

':' IDENT

if the parenthesis is escaped. For example, with ":not
(", the IDENT would be
"not(", CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector would
find a pseudo class type of PseudoClassNot, and the action would create an invalid
CSSSelector for a :not() without nested selector.

This patch fixes the issue by detecting the function case in
CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector().

An other solution would be to split PseudoClassAndCompatibilityElement into simple pseudo class
and functional pseudo classes. We may do that some day but at the moment it is a lot of work with
a little benefit.

Tests: fast/css/crash-on-incomplete-webkit-any.html

fast/css/pseudo-escaped-parenthesis.html
fast/selectors/invalid-functional-pseudo-class.html

  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector):

LayoutTests:

  • fast/selectors/invalid-functional-pseudo-class-expected.txt: Added.
  • fast/selectors/invalid-functional-pseudo-class.html: Added.

New test for all the functional pseudo classes.

  • fast/css/crash-on-incomplete-webkit-any-expected.txt: Added.
  • fast/css/crash-on-incomplete-webkit-any.html: Added.
  • fast/css/pseudo-escaped-parenthesis-expected.txt: Added.
  • fast/css/pseudo-escaped-parenthesis.html: Added.

Those tests come from blink. Rune solved the same problem a year ago on blink
in https://chromiumcodereview.appspot.com/23710067
The patch is quite different because blink uses an ancient code base, but the tests
can still be useful so I included them here.

4:09 PM Changeset in webkit [175431] by Lucas Forschler
  • 1 copy in tags/Safari-601.1.7

New Tag.

4:07 PM Changeset in webkit [175430] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebKit2

[WK2] Send origin & deletion requests to WebProcessess in additon to the DatabaseProcess.
https://bugs.webkit.org/show_bug.cgi?id=138212

Reviewed by Brady Eidson.

Now that the WebProcess has its own WebOriginDataManager, WebOriginDataManagerProxy needs to
send its origin and deletion messages to all the WebProcesses. This necessetates synchronizing
all the various process's callbacks so that the final callback is only triggered once all the
messaged processes reply.

Add a simple class, CallbackSynchronizer, which will keep track of outstanding process callbacks
and which will trigger the final callback once all of them finish.

  • UIProcess/WebOriginDataManagerProxy.cpp:

(WebKit::CallbackSynchronizer::create):
(WebKit::CallbackSynchronizer::~CallbackSynchronizer):
(WebKit::CallbackSynchronizer::taskStarted):
(WebKit::CallbackSynchronizer::taskCompleted):
(WebKit::CallbackSynchronizer::CallbackSynchronizer):
(WebKit::createSynchronizedCallback):
(WebKit::sendMessageToAllProcessesInContext):
(WebKit::WebOriginDataManagerProxy::getOrigins):
(WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin):
(WebKit::WebOriginDataManagerProxy::deleteEntriesModifiedBetweenDates):
(WebKit::WebOriginDataManagerProxy::deleteAllEntries):

Drive-by fix: check the correct enum value for WebMedia origin requests.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::getOrigins):
(WebKit::WebProcess::deleteEntriesForOrigin):
(WebKit::WebProcess::deleteEntriesModifiedBetweenDates):
(WebKit::WebProcess::deleteAllEntries):

3:42 PM Changeset in webkit [175429] by dburkart@apple.com
  • 13 edits in branches/safari-600.3-branch/Source/WebKit2

Re-Merge r174369. rdar://problem/18813684

2:49 PM Changeset in webkit [175428] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r175376): Occasional null deref when doing a dictionary lookup
https://bugs.webkit.org/show_bug.cgi?id=138261
<rdar://problem/18841709>

Reviewed by Anders Carlsson.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performDictionaryLookupAtLocation):
rangeForDictionaryLookupAtHitTestResult can easily return null.

2:43 PM Changeset in webkit [175427] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Make CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement() faster
https://bugs.webkit.org/show_bug.cgi?id=138227

Reviewed by Benjamin Poulain.

Restructure CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement()
a bit to do less if checks. The previous implementation was doing 7 if
checks no matter the input value. The new implementation does less
if checks depending on the input type.

Also, the isImageControlsRootElement() was showing in the profiles so
I updated the condition to only do this virtual function call if the
input is an HTMLDivElement (which we can check more efficiently).

With the change, I see that we're spending about ~26% less time in
this method when running speedometer. However, the impact on the
overall score is within noise.

No new tests, no behavior change.

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

2:27 PM Changeset in webkit [175426] by msaboff@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Add scope operand to op_push_with_scope, op_push_name_scope and op_pop_scope
https://bugs.webkit.org/show_bug.cgi?id=138252

Reviewed by Geoffrey Garen.

Added scope operand to op_push_with_scope, op_push_name_scope and op_pop_scope.
Although the scope register is filled in with the ScopeChain register for all
three bytecodes, this operand is not used in the processing of the bytecodes.
That will be addressed in a future patch.

  • bytecode/BytecodeList.json: Lengthened the three bytecodes.
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode): Added code to dump the scope operand.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitPushWithScope):
(JSC::BytecodeGenerator::emitPopScope):
(JSC::BytecodeGenerator::emitComplexPopScopes):
(JSC::BytecodeGenerator::emitPopScopes):
(JSC::BytecodeGenerator::emitPushFunctionNameScope):
(JSC::BytecodeGenerator::emitPushCatchScope):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::scopeRegister):
Added scope register to these emit functions and the bytecodes they emit.
New m_scopeRegister and accessor.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ContinueNode::emitBytecode):
(JSC::BreakNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::WithNode::emitBytecode):
(JSC::TryNode::emitBytecode):
Created a RegisterID for the ScopeChain register and used it to emit the updated
bytecodes.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_push_name_scope):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_push_with_scope):
(JSC::JIT::emit_op_push_name_scope):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.asm:

Updated the operand indecies for the processing of the updated bytecodes.

2:25 PM Changeset in webkit [175425] by Beth Dakin
  • 5 edits
    4 deletes in trunk/Source

Use system art for action menus when possible
https://bugs.webkit.org/show_bug.cgi?id=138260

Reviewed by Tim Horton.

Source/WebKit/mac:

  • WebView/WebActionMenuController.mm:

(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]):

Source/WebKit2:

  • Resources/AddImageToPhotosTemplate.pdf: Removed.
  • Resources/CopyImageTemplate.pdf: Removed.
  • Resources/SaveImageToDownloadsTemplate.pdf: Removed.
  • Resources/ShareImageTemplate.pdf: Removed.
  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController _createActionMenuItemForTag:]):

  • WebKit2.xcodeproj/project.pbxproj:
2:21 PM Changeset in webkit [175424] by jpfau@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed, fix ASan build after r175382

  • wtf/SizeLimits.cpp:
2:14 PM Changeset in webkit [175423] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Fix assertion in CachedResource::addDataBuffer

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::addDataBuffer):

Don't call to base class if buffering mode changed (happens with some special top level document types).

1:52 PM Changeset in webkit [175422] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build for Yosemite systems after r175417

  • UIProcess/mac/WKActionMenuController.mm:
1:42 PM Changeset in webkit [175421] by dino@apple.com
  • 19 edits
    14 adds in trunk

Remove webkit prefix from CSS columns.
https://bugs.webkit.org/show_bug.cgi?id=137132.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-10-31
Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Import tests for basic multi-column properties settings. They are approved by W3C and
pass the WebKit testing. More tests need to be imported when they are approved.

  • css: Added.
  • css/multicol: Added.
  • css/multicol/multicol-basic-001-expected.html: Added.
  • css/multicol/multicol-basic-001.html: Added.
  • css/multicol/multicol-basic-002-expected.html: Added.
  • css/multicol/multicol-basic-002.html: Added.
  • css/multicol/multicol-basic-003-expected.html: Added.
  • css/multicol/multicol-basic-003.html: Added.
  • css/multicol/multicol-basic-004-expected.html: Added.
  • css/multicol/multicol-basic-004.html: Added.

Source/WebCore:

CSS columns properties are ready for un-prefixing. There are still a couple
that we haven't implemented, such as the ones starting with "break-", so we're
just going to do the ones starting with "column-". The list of column un-
prefixed properties in this change set is:

  • column-count
  • column-fill
  • column-gap
  • column-progression
  • column-rule
  • column-rule-color
  • column-rule-style
  • column-rule-width
  • column-span
  • column-width
  • columns

Tests: fast/multicol/column-box-alignment-rtl.html

fast/multicol/multicol-aliases.html
imported/w3c/css/multicol/multicol-basic-001.html
imported/w3c/css/multicol/multicol-basic-002.html
imported/w3c/css/multicol/multicol-basic-003.html
imported/w3c/css/multicol/multicol-basic-004.html

Add new un-prefixed column properties and make the -webkit* ones be aliases
to the new ones.

  • css/CSSPropertyNames.in:

Use the new enums CSSPropertyColumn* instead of the prefixed ones.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isColorPropertyID):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleProperties.cpp:

(WebCore::StyleProperties::getPropertyValue):

  • css/StylePropertyShorthand.cpp:

(WebCore::webkitColumnsShorthand):
(WebCore::webkitColumnRuleShorthand):
(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):

  • css/StyleResolver.cpp:

(WebCore::isValidVisitedLinkProperty):
(WebCore::StyleResolver::applyProperty):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::paintColumnRules):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::colorIncludingFallback):

LayoutTests:

Ensure the CSS un-prefixed column properties are behaving the same way as the
prefixed ones. The CSS prefixed column properties are still supported by making
them aliases of the un-prefixed ones. Also port some of the W3C and Mozilla
tests for css column properties tests.

Change to the un-prefixed column names to be compared with the return of CSSStyleDeclaration.item().
And change the expected names to be the un-prefixed ones also.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • fast/css/getComputedStyle/resources/property-names.js:

Change to the un-prefixed column names and compare them with the return of object.style.cssText().

  • fast/css/remove-shorthand-expected.txt:

Test for the effect of the rtl settings on column flow; it is ported from Mozilla.

  • fast/multicol/column-box-alignment-rtl-expected.html: Added.
  • fast/multicol/column-box-alignment-rtl.html: Added.

Ensure the prefixed and the un-prefixed column properties are behaving exactly the same.

  • fast/multicol/multicol-aliases-expected.html: Added.
  • fast/multicol/multicol-aliases.html: Added.

Change to the un-prefixed column names to be compared with the return of CSSStyleDeclaration.item().

  • svg/css/getComputedStyle-basic-expected.txt:

Remove the use of the un-prefixed columns property since it seems unrelated to the test.

  • svg/custom/svg-fonts-in-html.html:
1:41 PM Changeset in webkit [175420] by timothy_horton@apple.com
  • 6 edits in trunk/Source/WebKit2

Fix the build for pre-Yosemite systems after r175417

  • UIProcess/API/mac/WKView.mm:

(-[WKView dealloc]):
(-[WKView initWithFrame:context:configuration:webView:]):

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::didPerformActionMenuHitTest):

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:
1:39 PM Changeset in webkit [175419] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

Rolled in r175389.

WebKit was failing to build 32bit on some Apple internal systems because
those systems were configured to build bmalloc 64-bit-only. Those systems
have been updated to build bmalloc as a universal binary, so everything
should work fine now.

The relevant setting is controlled by an environment variable on the
build system, and not by the project file in the source tree, so there's
no new code change here.

Enable bmalloc in 32bit builds
https://bugs.webkit.org/show_bug.cgi?id=138232

Reviewed by Andreas Kling.

  • wtf/FastMalloc.cpp:
1:21 PM Changeset in webkit [175418] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove "Add to iPhoto" from the action menu's sharing menu
https://bugs.webkit.org/show_bug.cgi?id=138251
<rdar://problem/18837197>

Reviewed by Anders Carlsson.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]):
Retain/autorelease the new array.

1:16 PM Changeset in webkit [175417] by timothy_horton@apple.com
  • 4 edits in trunk/Source

Remove "Add to iPhoto" from the action menu's sharing menu
https://bugs.webkit.org/show_bug.cgi?id=138251
<rdar://problem/18837197>

Reviewed by Anders Carlsson.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]):
Filter out "Add to iPhoto".

  • platform/spi/mac/NSSharingServiceSPI.h:

Add 'name' to the NSSharingService SPI header.

12:28 PM Changeset in webkit [175416] by akling@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Make writes to RegExpObject.lastIndex cacheable.
<https://webkit.org/b/138255>

Reviewed by Geoffrey Garen.

We were neglecting to IC the puts to RegExpObject.lastIndex on Octane/regexp,
and ended up spending 4.5% of a time profile in operationPutByIdNonStrict.

~3% progression on Octane/regexp.

  • runtime/RegExpObject.cpp:

(JSC::regExpObjectSetLastIndexStrict):
(JSC::regExpObjectSetLastIndexNonStrict):
(JSC::RegExpObject::put):

12:11 PM Changeset in webkit [175415] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix type clash warning in supports_error rule of CSSGrammar.
https://bugs.webkit.org/show_bug.cgi?id=138248

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-10-31
Reviewed by Antti Koivisto.

Added explicit actions to supports_error rule in CSSGrammar.y.in since
the default actions caused bison to emit type clash warnings.

No new tests because there is no behavior change.

  • css/CSSGrammar.y.in:
12:04 PM Changeset in webkit [175414] by commit-queue@webkit.org
  • 16 edits in trunk

[GTK] Support script message handlers WebKitUserContentManager
https://bugs.webkit.org/show_bug.cgi?id=133730

Patch by Adrian Perez de Castro <Adrian Perez de Castro> on 2014-10-31
Reviewed by Carlos Garcia Campos.

Support user script message handlers in WebKitUserContentManager.
This needs building with ENABLE_USER_MESSAGE_HANDLERS, for which
an option is added to the CMake build files. The option is disabled
globally by default, and the WebKitGTK port enables it. On the API
level, two new methods to register and unregister names are provided
in the "window.webkit" namespace, and on message reception the
"WebKitUserContentManager::script-message-received" signal is
emitted, using the registered names as signal detail.

.:

  • Source/cmake/OptionsGTK.cmake: For the GTK port, enable the

ENABLE_USER_MESSAGE_HANDLERS feature by default.

  • Source/cmake/WebKitFeatures.cmake: Add feature description for

ENABLE_USER_MESSAGE_HANDLERS, disabled by default.

Source/WebCore:

  • CMakeLists.txt: Conditionally add the needed files to the build

when the ENABLE_USER_MESSAGE_HANDLERS feature is enabled.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitJavascriptResult.cpp: Add a new private

function to construct a WebKitJavascriptResult directly from a
WebCore::SerializedScriptValue.
(_WebKitJavascriptResult::_WebKitJavascriptResult): Ditto.
(webkitJavascriptResultCreate): Ditto.

  • UIProcess/API/gtk/WebKitJavascriptResultPrivate.h: Ditto.
  • UIProcess/API/gtk/WebKitUserContentManager.cpp:

(webkit_user_content_manager_class_init): Install the
"script-message-received" signal.
(webkit_user_content_manager_register_script_message_handler):
Added.
(webkit_user_content_manager_unregister_script_message_handler):
Added.

  • UIProcess/API/gtk/WebKitUserContentManager.h: Added the new

public API methods.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
  • UIProcess/API/gtk/docs/webkit2gtk.types: Add

webkit_user_content_manager_get_type() to the list in order to make
gtk-doc to generate documentation for signals.

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp:

Add test case for user script message handlers.
(scriptMessageReceived):
(testUserContentManagerScriptMessageReceived):
(beforeAll):

12:02 PM Changeset in webkit [175413] by mhock@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, iOS build fix since 175406.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::performActionOnElement):

11:29 AM Changeset in webkit [175412] by eric.carlson@apple.com
  • 5 edits in trunk/LayoutTests

Clean-up use of boolean attributes in media tests
https://bugs.webkit.org/show_bug.cgi?id=138249

Reviewed by Brent Fulgham.

  • media/resources/foreignobject-media.svg: autoplay="true" => autoplay
  • media/resources/video-with-poster-as-object-fallback.html: controls="true" => controls
  • media/video-canvas-source.html: Ditto.
  • media/video-canvas.html-disabled: Ditto.
10:37 AM Changeset in webkit [175411] by Chris Dumez
  • 3 edits in trunk/Source/JavaScriptCore

Fix a couple of warnings in JSC reported by clang static analyzer
https://bugs.webkit.org/show_bug.cgi?id=138240

Reviewed by Geoffrey Garen.

Fix a couple of warnings in JSC reported by clang static analyzer about
value stored in variables never being read. This is addressed by
reducing the scope of the variable or removing the variable entirely.

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::emitGetByOffset):

  • runtime/VM.cpp:

(JSC::VM::throwException):

10:13 AM Changeset in webkit [175410] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed 64-bit Build Fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Correct symbol

export declarations.

9:23 AM WebKitGTK/2.6.x edited by kwm@freebsd.org
Add changeset and bugreport about two issues preventing 2.6 from … (diff)
8:26 AM Changeset in webkit [175409] by Lucas Forschler
  • 2 edits in trunk/Source/WTF

Unreviewed rollout r175389.

5:45 AM Changeset in webkit [175408] by commit-queue@webkit.org
  • 13 edits
    2 adds in trunk

[ATK] Improve AccessibilityTableCell's determineAccessibilityRole function.
https://bugs.webkit.org/show_bug.cgi?id=137737

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-10-31
Reviewed by Chris Fleizach.

Source/WebCore:

Use of new functions isRowHeaderCell and isColumnHeaderCell (bug 136818)
to more accurately determine accessibility role of the table cell.

Test: accessibility/table-cells-roles.html

  • accessibility/AccessibilityARIAGridCell.cpp:

(WebCore::AccessibilityARIAGridCell::rowIndexRange):
Change to const.

  • accessibility/AccessibilityARIAGridCell.h:

Change rowIndexRange function to const.

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::determineAccessibilityRole):
Use of isRowHeaderCell and isColumnHeaderCell to more accurately determine accessibility role (ATK).
(WebCore::AccessibilityTableCell::isColumnHeaderCell):
Add a case of direct placement a row in the table.
(WebCore::AccessibilityTableCell::isRowHeaderCell):
Add a case of direct placement a row in the table.
(WebCore::AccessibilityTableCell::rowIndexRange):
Change to const.

  • accessibility/AccessibilityTableCell.h:

Change rowIndexRange function to const.

LayoutTests:

The new test illustrates the different cases deciding whether a table cell
is a row header or column header or just a table cell.
Files of expected type and one html type are adapted to changes in the code of several member functions
of AccessibilityTableCell, i.e determineAccessibilityRole, isColumnHeaderCell, isRowHeaderCell.

  • accessibility/table-cells-roles-expected.txt: Added.
  • accessibility/table-cells-roles.html: Added.
  • platform/efl/accessibility/table-attributes-expected.txt:
  • platform/efl/accessibility/table-cells-expected.txt:
  • platform/gtk/accessibility/table-attributes-expected.txt:
  • platform/gtk/accessibility/table-cells-expected.txt:
  • platform/gtk/accessibility/table-hierarchy-expected.txt:
  • platform/gtk/accessibility/table-hierarchy.html:
12:18 AM Changeset in webkit [175407] by roger_fong@apple.com
  • 4 edits in trunk/LayoutTests

[Windows] Additional rebaselining after r175259.

  • platform/win/css1/box_properties/padding_right-expected.txt:
  • platform/win/fast/css/last-child-pseudo-class-expected.txt:
  • platform/win/fast/css/only-child-pseudo-class-expected.txt:
Note: See TracTimeline for information about the timeline view.