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):

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:

Oct 30, 2014:

9:25 PM Changeset in webkit [175406] by Darin Adler
  • 76 edits
    5 deletes in trunk/Source

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

Reviewed by Antti Koivisto.

Source/WebCore:

Refactoring, with test coverage across many existing tests.

  • CMakeLists.txt: Deleted ResourceBuffer.cpp.
  • WebCore.exp.in: Removed ResourceBuffer-related symbols, and updated symbol

for one function that used to take a PassRefPtr but now takes a reference instead.

  • WebCore.vcxproj/WebCore.vcxproj: Deleted ResourceBuffer.cpp/.h.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Deleted ResourceBuffer.mm/.cpp/.h.
  • bindings/objc/DOMUIKitExtensions.mm:

(-[DOMHTMLImageElement dataRepresentation:]): Use SharedBuffer directly.

  • editing/ios/EditorIOS.mm:

(WebCore::Editor::writeImageToPasteboard): Ditto.

  • editing/mac/EditorMac.mm:

(WebCore::Editor::writeImageToPasteboard): Ditto.

  • html/ImageDocument.cpp:

(WebCore::ImageDocument::updateDuringParsing): Use SharedBuffer directly, and
also pass a reference only if non-null rather than passing a pointer.
(WebCore::ImageDocument::finishedParsing): Ditto. Added a missing null check.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::cachedResourceContent): Use SharedBuffer directly.
(WebCore::InspectorPageAgent::mainResourceContent): Ditto.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didFinishLoading): Ditto.
(WebCore::InspectorResourceAgent::didFailLoading): Ditto.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::mainResourceData): Use SharedBuffer directly,
and use the copy function rather than a hand-written alternative.
(WebCore::DocumentLoader::maybeCreateArchive): Ditto.
(WebCore::DocumentLoader::mainResource): Ditto.
(WebCore::DocumentLoader::subresource): Ditto.
(WebCore::DocumentLoader::maybeFinishLoadingMultipartContent): Ditto.

  • loader/DocumentLoader.h: Changed mainResourceData to return a

PassRefPtr<SharedBuffer>. Would be better if it returned a SharedBuffer&,
but it currently returns a newly created buffer when there is substitute
data and can also return null, even though many callers assume it will not!

  • loader/MediaResourceLoader.cpp:

(WebCore::MediaResourceLoader::dataReceived): Removed call to unused client
function bufferReceived.
(WebCore::MediaResourceLoader::notifyFinished): Removed unused buffer
argument to client function loadFinished.

  • loader/ResourceBuffer.cpp: Removed.
  • loader/ResourceBuffer.h: Removed.
  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::addDataOrBuffer): Use SharedBuffer directly.

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::resourceData): Use SharedBuffer.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse): Use SharedBuffer.
(WebCore::SubresourceLoader::didReceiveDataOrBuffer): Ditto.

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::processNewCueData): Use SharedBuffer.

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Ditto.

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create): Ditto.

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::finishLoading): Use SharedBuffer.

  • loader/cache/CachedCSSStyleSheet.h: Ditto.
  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::finishLoading): Ditto.
(WebCore::CachedFont::ensureCustomFontData): Ditto.

  • loader/cache/CachedFont.h: Ditto.
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::didAddClient): Use SharedBuffer.
(WebCore::CachedImage::didRemoveClient): Ditto.
(WebCore::CachedImage::addIncrementalDataBuffer): Ditto. Changed to take
a reference rather than a pointer.
(WebCore::CachedImage::addDataBuffer): Ditto. Also added call through
to base class and changed to take a reference rather than a pointer.
(WebCore::CachedImage::addData): Ditto. Also added call through to base class.
(WebCore::CachedImage::finishLoading): Ditto.

  • loader/cache/CachedImage.h: Ditto. Also changed the type of some bit fields

to be unsigned instead of unsigend char.

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::calculateIncrementalDataChunk): Use SharedBuffer.
(WebCore::CachedRawResource::addDataBuffer): Ditto. Changed to take
a reference rather than a pointer.
(WebCore::CachedRawResource::addData): Ditto.
(WebCore::CachedRawResource::finishLoading): Ditto.
(WebCore::CachedRawResource::canReuse): Ditto.

  • loader/cache/CachedRawResource.h: Ditto.
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource): Reordered data members due to change
in header.
(WebCore::CachedResource::addDataBuffer): Changed argument type.
(WebCore::CachedResource::finishLoading): Ditto.
(WebCore::CachedResource::didAddClient): Refactored to eliminate one extra hash
table lookup by using the return value from the remove function.
(WebCore::CachedResource::addClientToSet): Use std::make_unique directly instead
of using a function named "schedule" to allocate the callback object.
(WebCore::CachedResource::Callback::Callback): Changed function and data member
name.
(WebCore::CachedResource::Callback::cancel): Ditto.
(WebCore::CachedResource::Callback::timerFired): Ditto.
(WebCore::CachedResource::tryReplaceEncodedData): Changed to take a SharedBuffer&.

  • loader/cache/CachedResource.h: Changed types to use SharedBuffer. Also made most

data members and one function member private instead of protected. Also renamed the
CachedResource::CachedResourceCallback function CachedResource::Callback and moved
its definition out of the CachedResource class definition.

  • loader/cache/CachedResourceClient.h: Removed unneeded include.
  • loader/cache/CachedSVGDocument.cpp:

(WebCore::CachedSVGDocument::finishLoading): Use SharedBuffer.

  • loader/cache/CachedSVGDocument.h: Ditto. Made data members private.
  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::finishLoading): Use SharedBuffer.

  • loader/cache/CachedScript.h: Ditto. Also fixed indenting and removed unneeded

forward declaration.

  • loader/cache/CachedTextTrack.cpp:

(WebCore::CachedTextTrack::updateData): Added, so that finishLoading does not
call addDataBuffer.
(WebCore::CachedTextTrack::addDataBuffer): Take SharedBuffer, call updateData.
(WebCore::CachedTextTrack::finishLoading): Ditto.

  • loader/cache/CachedTextTrack.h: Take out unneeded explicit override of the

destructor. Updated for above changes.

  • loader/cache/CachedXSLStyleSheet.cpp:

(WebCore::CachedXSLStyleSheet::finishLoading): Updated to use SharedBuffer.

  • loader/cache/CachedXSLStyleSheet.h: Took out unneeded includes, made everything

private rather than protected. Added an explicit virtual constructor so we can
compile without knowing how to ref/deref TextResourceDecoder.

  • loader/cf/SubresourceLoaderCF.cpp:

(WebCore::SubresourceLoader::didReceiveDataArray): Updated to use SharedBuffer
and to call addDataBuffer only if there is a new data buffer.

  • loader/cocoa/DiskCacheMonitorCocoa.h: Use SharedBuffer& instead of PassRefPtr.
  • loader/cocoa/DiskCacheMonitorCocoa.mm:

(WebCore::DiskCacheMonitor::DiskCacheMonitor): Ditto.
(WebCore::DiskCacheMonitor::resourceBecameFileBacked): Ditto.

  • loader/icon/IconLoader.cpp:

(WebCore::IconLoader::notifyFinished): Use SharedBuffer* instead of
RefPtr<ResourceBuffer>.

  • loader/mac/ResourceBuffer.mm: Removed.
  • loader/mac/ResourceLoaderMac.mm:

(WebCore::ResourceLoader::didReceiveDataArray): Use SharedBuffer.

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::clear): Use a modern for loop.
(WebCore::SharedBuffer::copy): Return a PassRef instead of a PassRefPtr, since
this never returns null. Use modern for loops.
(WebCore::SharedBuffer::copyBufferAndClear): Use a modern for loop.

  • platform/SharedBuffer.h: Changed copy to return PassRef instead of PassRefPtr.

Changed tryReplaceContentsWithPlatformBuffer to take a reference rather than
a pointer.

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::tryReplaceContentsWithPlatformBuffer): Take a reference
instead of a pointer.

  • platform/graphics/PlatformMediaResourceLoader.h: Removed unused function

bufferReceived and unneeded buffer argument from loadFinished. Also marked the
constructor explicit.

  • platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:

Removed include of ResourceBuffer.h.

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:

(WebCore::WebCoreAVFResourceLoader::fulfillRequestWithResource): Use
SharedBuffer directly.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(CachedResourceStreamingClient::loadFinished): Updated for change to
PlatformMediaResourceLoaderClient.

  • platform/mac/PasteboardMac.mm: Removed include of ResourceBuffer.h.
  • platform/soup/SharedBufferSoup.cpp: Removed unused, unneeded

tryReplaceContentsWithPlatformBuffer function.

Source/WebKit/mac:

  • WebView/WebDataSource.mm:

(-[WebDataSource data]): Use SharedBuffer directly.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.

Source/WebKit/win:

  • WebDataSource.cpp:

(WebDataSource::data): Use SharedBuffer directly.
(WebDataSource::subresourceForURL): Ditto.

Source/WebKit2:

  • CMakeLists.txt: Removed WebResourceBuffer.cpp.
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::sendBuffer): Use a reference instead of pointer.

  • NetworkProcess/NetworkResourceLoader.h: Ditto.
  • NetworkProcess/mac/NetworkDiskCacheMonitor.h: Ditto.
  • NetworkProcess/mac/NetworkDiskCacheMonitor.mm:

(WebKit::NetworkDiskCacheMonitor::resourceBecameFileBacked): Ditto.

  • NetworkProcess/mac/NetworkResourceLoaderMac.mm:

(WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer): Ditto.

  • Shared/WebResourceBuffer.cpp: Removed.
  • Shared/WebResourceBuffer.h: Removed.
  • WebKit2.xcodeproj/project.pbxproj: Removed WebResourceBuffer.cpp/h.
  • WebProcess/Network/NetworkProcessConnection.cpp: Removed unneeded includes.

(WebKit::NetworkProcessConnection::didCacheResource): Use a reference instead
of a pointer.

  • WebProcess/Network/WebResourceLoadScheduler.cpp: Removed unneeded include.
  • WebProcess/Network/WebResourceLoader.cpp: Ditto.
  • WebProcess/Network/WebResourceLoader.h: Ditto.
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Ditto.

(WebKit::WebFrameLoaderClient::finishedLoading): Use SharedBuffer directly.

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::source): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::runJavaScriptInMainFrame): Refactored to make the relationship
between the buffer and the DataReference clearer and to avoid having a long-lived
DataReference pointing to an underlying buffer with unclear lifetime.
(WebKit::WebPage::getContentsAsString): Ditto.
(WebKit::WebPage::getSelectionAsWebArchiveData): Ditto.
(WebKit::WebPage::getMainResourceDataOfFrame): Ditto. Also use SharedBuffer directly.
(WebKit::WebPage::getResourceDataFromFrame): Ditto.
(WebKit::WebPage::getWebArchiveOfFrame): Ditto.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::containingLinkElement): Use elementLineage.
(WebKit::WebPage::performActionOnElement): Use references and SharedBuffer.
ALso did a bit of other cleanup in here.
(WebKit::isAssistableElement): Take Element& instead of Node*, since that's what
the caller has.
(WebKit::nextAssistableElement): Changed name to match what the function does.
Added an obviously-missing check on the startNode argument. Updated for change
to isAssistableElement above. Take a Page& instead of a Page*.
(WebKit::hasAssistableElement): Changed name to match what the function does.
Updated for change to nextAssistableElement above. Took out incorrect comparison
of a C++ pointer to the Objective-C object pointer nil. Take a Page& instead of a Page*.
(WebKit::WebPage::focusNextAssistedNode): Updated for above changes.
(WebKit::WebPage::getAssistedNodeInformation): Updated for above changes.

7:37 PM Changeset in webkit [175405] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move border-image-source / -webkit-mask-box-image-source to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138209

Reviewed by Andreas Kling.

Move border-image-source / -webkit-mask-box-image-source CSS properties
from DeprecatedStyleBuilder to the new StyleBuilder so that they are
now generated from CSSPropertyNames.in.

No new tests, no behavior change.

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

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

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertBorderImageSource):

7:02 PM WebKitGTK/KeepingTheTreeGreen edited by yoon@igalia.com
(diff)
6:16 PM Changeset in webkit [175404] by timothy_horton@apple.com
  • 12 edits in branches/safari-600.3-branch/Source/WebKit2

Merge r175376 and r175390. <rdar://problem/18742297>

6:03 PM Changeset in webkit [175403] by timothy_horton@apple.com
  • 10 edits in branches/safari-600.3-branch

Merge r175160. <rdar://problem/18742297>

5:40 PM Changeset in webkit [175402] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Unreviewed Windows build fix after r175391.

Export a couple of symbols.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
5:26 PM Changeset in webkit [175401] by matthew_hanson@apple.com
  • 2 edits in trunk/Tools

bisect-builds should support WebKit clients other than Safari
https://bugs.webkit.org/show_bug.cgi?id=138225

This patch adds support for bisecting WebKit nightly builds with clients other than Safari.

The -a / --application optional argument allows the user to specify which application (or application bundle)
should be run against the WebKit nightly builds.

Reviewed by David Kilzer.

  • Scripts/bisect-builds:

Swap out $safariPath for the more general $applicationPath
Leave --safari-path as a commandline option for backwards compatibility
(mountAndRunNightly):
Use File::Spec->cat correctly (one directory per argument)
Use open --wait-apps instead of running the target application directly

5:18 PM Changeset in webkit [175400] by jer.noble@apple.com
  • 14 edits in trunk/Source

[EME] Add Setting for accessing storage location for MediaKeys data
https://bugs.webkit.org/show_bug.cgi?id=138147

Reviewed by Brady Eidson.

Source/WebCore:

Allow MediaPlayerPrivateAVFoundationObjC to query for the MediaKeys storage directory
by piping that request down from WebKit and WebKit2 into Settings.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaKeysStorageDirectory): Get the location from Settings and

append the current origin.

  • html/HTMLMediaElement.h:
  • page/Settings.h:

(WebCore::Settings::setMediaKeysStorageDirectory): Simple setter.
(WebCore::Settings::mediaKeysStorageDirectory): Simple accessor.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::mediaKeysStorageDirectory): Pass through to m_client.

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerMediaKeysStorageDirectory): Default implementation.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::streamSession): Fetch the location from MediaPlayer.
(WebCore::sessionStorageDirectory): Deleted.

Source/WebKit/mac:

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]): Set default location.
(-[WebPreferences mediaKeysStorageDirectory]): Simple accessor.
(-[WebPreferences setMediaKeysStorageDirectory:]): Simple setter.

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]): Pass location from WebPreferences into Settings.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Pass from WebMediaKeyStorageManager into Settings.

5:16 PM Changeset in webkit [175399] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Layout Test http/tests/xmlhttprequest/cross-origin-redirect-responseURL.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=138072

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

  • http/tests/xmlhttprequest/cross-origin-redirect-responseURL-expected.txt:
  • http/tests/xmlhttprequest/cross-origin-redirect-responseURL.html:
4:57 PM Changeset in webkit [175398] by dburkart@apple.com
  • 2 edits in trunk/Source/WebKit2

Workaround for <rdar://problem/18830639>

Unreviewed.

4:53 PM Changeset in webkit [175397] by dburkart@apple.com
  • 50 edits in trunk

<rdar://problem/18821260> Prepare for the mysterious future

Reviewed by Lucas Forschler.

4:50 PM Changeset in webkit [175396] by saambarati1@gmail.com
  • 6 edits in trunk/Source/JavaScriptCore

AST Nodes should keep track of their end offset
https://bugs.webkit.org/show_bug.cgi?id=138143

Reviewed by Filip Pizlo.

AST nodes nodes now have an int property for their end text
offsets. This change lays some foundational work that will be
needed in profiling which basic blocks have executed.

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::setEndOffset):

  • parser/Nodes.h:

(JSC::Node::endOffset):
(JSC::Node::setEndOffset):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseStatement):
(JSC::Parser<LexerType>::parseFunctionInfo):
(JSC::Parser<LexerType>::parseExpression):
(JSC::Parser<LexerType>::parseProperty):

  • parser/Parser.h:

(JSC::Parser<LexerType>::parse):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::operatorStackPop):

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

Short-circuit repaints with empty rects
https://bugs.webkit.org/show_bug.cgi?id=138234

Reviewed by Zalan Bujtas.

Repaints with an empty rectangle are common enough that it's worth
short-circuiting them.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintUsingContainer):

4:24 PM Changeset in webkit [175394] by roger_fong@apple.com
  • 2 edits
    1 add in trunk/LayoutTests

[Windows] More text rebaselining.

  • platform/win/TestExpectations:
  • platform/win/fast/text/tatechuyoko-expected.txt: Added.
4:18 PM Changeset in webkit [175393] by adachan@apple.com
  • 2 edits in trunk/Source/WebKit

Attempt to fix the Windows build after r175384.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
4:10 PM Changeset in webkit [175392] by roger_fong@apple.com
  • 15 edits
    1 add in trunk/LayoutTests

[Windows] Text rebaselining after r175384.

  • platform/win/css1/box_properties/margin_right-expected.txt:
  • platform/win/css1/box_properties/padding-expected.txt:
  • platform/win/css1/box_properties/padding_left-expected.txt:
  • platform/win/css1/box_properties/padding_right-expected.txt:
  • platform/win/css1/box_properties/padding_top-expected.txt:
  • platform/win/css1/font_properties/font-expected.txt:
  • platform/win/css1/formatting_model/vertical_formatting-expected.txt:
  • platform/win/css1/text_properties/text_transform-expected.txt:
  • platform/win/fast/css/empty-pseudo-class-expected.txt:
  • platform/win/fast/css/first-child-pseudo-class-expected.txt:
  • platform/win/fast/css/only-child-pseudo-class-expected.txt:
  • platform/win/fast/dom/HTMLProgressElement/progress-element-expected.txt: Added.
  • platform/win/fast/forms/targeted-frame-submission-expected.txt:
  • platform/win/fast/table/append-cells2-expected.txt:
  • platform/win/tables/mozilla/bugs/45621-expected.txt:
4:08 PM Changeset in webkit [175391] by Chris Dumez
  • 21 edits in trunk/Source/WebCore

Clean up virtual functions in css/
https://bugs.webkit.org/show_bug.cgi?id=138230

Reviewed by Benjamin Poulain.

Clean up virtual functions in css/ by:

  • Making virtual functions final when possible
  • Making classes final when possible
  • Using 'override' when appropriate
  • Explicitly marking functions / destructors as virtual when they are inherently virtual
  • Making isXXX() virtual functions private on XXX classes to avoid unnecessary type checks

No new tests, no behavior change.

  • WebCore.exp.in:
  • css/CSSBasicShapes.h:
  • css/CSSCharsetRule.h:
  • css/CSSComputedStyleDeclaration.h:
  • css/CSSCrossfadeValue.h:
  • css/CSSFilterImageValue.h:
  • css/CSSFontFaceLoadEvent.h:
  • css/CSSFontFaceRule.h:
  • css/CSSFontFaceSource.h:
  • css/CSSImportRule.h:
  • css/CSSMediaRule.h:
  • css/CSSPageRule.h:
  • css/CSSRuleList.h:

(WebCore::StaticCSSRuleList::ref): Deleted.
(WebCore::StaticCSSRuleList::styleSheet): Deleted.
(WebCore::StaticCSSRuleList::length): Deleted.
(WebCore::StaticCSSRuleList::item): Deleted.
(WebCore::LiveCSSRuleList::ref): Deleted.
(WebCore::LiveCSSRuleList::deref): Deleted.
(WebCore::LiveCSSRuleList::length): Deleted.
(WebCore::LiveCSSRuleList::item): Deleted.
(WebCore::LiveCSSRuleList::styleSheet): Deleted.

  • css/CSSStyleRule.h:
  • css/CSSSupportsRule.h:
  • css/CSSUnknownRule.h:
  • css/FontLoader.h:
  • css/PropertySetCSSStyleDeclaration.h:

(WebCore::PropertySetCSSStyleDeclaration::parentElement):

  • css/WebKitCSSKeyframeRule.h:
  • css/WebKitCSSViewportRule.h:
4:03 PM Changeset in webkit [175390] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the iOS build.

  • WebProcess/WebPage/WebPage.messages.in:
3:44 PM Changeset in webkit [175389] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

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

Reviewed by Andreas Kling.

Seems to work fine.

  • wtf/FastMalloc.cpp:
3:37 PM Changeset in webkit [175388] by timothy_horton@apple.com
  • 4 edits in trunk/Source

Long spins under rangeExpandedAroundPosition on Yahoo Mail
https://bugs.webkit.org/show_bug.cgi?id=138223
<rdar://problem/18819547>

Reviewed by Enrica Casucci.

  • WebCore.exp.in:

Export some things.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::rangeExpandedAroundPositionByCharacters):
Reimplement rangeExpandedAroundPosition to operate on characters instead of lines,
and to use Position. Moving VisiblePositions by line can be very expensive in some cases,
and for generating lookup/Data Detectors context, we don't care about that kind of precision.
This makes this function ~1000x faster when it hits on a row in the Yahoo Mail message list.

(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::scanForDataDetectedItems):
Adopt the new rangeExpandedAroundPositionByCharacters, expanding 250 characters
before and after, which roughly matches what we were usually getting going by line,
and is a reasonable amount of context for these operations.

3:33 PM Changeset in webkit [175387] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.25.2

New tag.

3:30 PM Changeset in webkit [175386] by bshafiei@apple.com
  • 4 edits in branches/safari-600.1.25-branch/Source/WebCore

Merged r175347. rdar://problem/18786900

3:09 PM Changeset in webkit [175385] by commit-queue@webkit.org
  • 25 edits
    3 copies
    7 adds in trunk/Source/JavaScriptCore

Web Inspector: Generate ObjC inspector protocol types and alternate dispatcher interfaces
https://bugs.webkit.org/show_bug.cgi?id=138048

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-30
Reviewed by Brian Burg.

Generate Objective-C interfaces for inspector protocol types, command, and event dispatchers.
This is very much like the InspectorProtocolTypes, BackendDispatchers, and FrontendDispatchers,
but with an ObjC spin on things.

The private API that clients would use is all encapsulated in RWIProtocol.h. It includes the
types interfaces, command handler protocol, and event dispatcher interface. Where possible the
API uses real enums, which hides the raw protocol enum strings from clients.

Inspector protocol types are, like InspectorProtocolObjects, built on top of an InspectorObject.
This offers the flexibilty of adding arbitrary key/values using the RWIProtocolJSONObject
interface, which may be required for certain protocol objects like "Network.Headers" which
have no fields, but expect arbitrary properties to be added.

Command handler protocols always have two callbacks. An error callback and a success callback.
The signature is very much like BackendDispatchers. In parameters are passed directly to
the selectors, and out parameters are defined by the success callback. It will be the client's
responsibility to call either of these callbacks to complete handling of a request.

Event dispatcher interfaces are straight forward, just packaging up the arguments and sending
the message to the frontend.

ObjC <-> Protocol conversion happens in each of the generated files. In type getters / setters,
in commands parameters and event parameters. For this to work we generate conversion helpers
for all enums, ObjC enum <-> protocol strings. For NSArray <-> InspectorArray there are some
static helpers to do the conversions. We do lose some type safety in these conversions.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • inspector/scripts/codegen/init.py:
  • inspector/scripts/codegen/generate_alternate_backend_dispatcher_header.py:

(AlternateBackendDispatcherHeaderGenerator._generate_handler_declarations_for_domain):

  • inspector/scripts/codegen/generate_backend_dispatcher_header.py:

(BackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains.AlternateInspector):
(BackendDispatcherHeaderGenerator._generate_handler_declarations_for_domain):
(BackendDispatcherHeaderGenerator._generate_dispatcher_declarations_for_domain):

  • inspector/scripts/codegen/generate_backend_dispatcher_implementation.py:

(BackendDispatcherImplementationGenerator._generate_handler_class_destructor_for_domain):
(BackendDispatcherImplementationGenerator._generate_dispatcher_implementations_for_domain):

  • inspector/scripts/codegen/generate_frontend_dispatcher_header.py:

(FrontendDispatcherHeaderGenerator._generate_dispatcher_declarations_for_domain):

  • inspector/scripts/codegen/generate_frontend_dispatcher_implementation.py:

(FrontendDispatcherImplementationGenerator._generate_dispatcher_implementations_for_domain):

  • inspector/scripts/codegen/generate_objective_c.py: Added.

(join_type_and_name):
(strip_comment_markers):
(remove_duplicate_from_str):
(ObjCTypeCategory):
(ObjCTypeCategory.category_of_type):
(ObjCGenerator):
(ObjCGenerator.identifier_to_objc_identifier):
(ObjCGenerator.objc_identifier_to_identifier):
(ObjCGenerator.should_generate_domain_types_filter):
(ObjCGenerator.should_generate_domain_types_filter.should_generate_domain_types):
(ObjCGenerator.should_generate_domain_command_handler_filter):
(ObjCGenerator.should_generate_domain_command_handler_filter.should_generate_domain_command_handler):
(ObjCGenerator.should_generate_domain_event_dispatcher_filter):
(ObjCGenerator.should_generate_domain_event_dispatcher_filter.should_generate_domain_event_dispatcher):
(ObjCGenerator.objc_name_for_type):
(ObjCGenerator.objc_enum_name_for_anonymous_enum_declaration):
(ObjCGenerator.objc_enum_name_for_anonymous_enum_member):
(ObjCGenerator.objc_enum_name_for_anonymous_enum_parameter):
(ObjCGenerator.objc_enum_name_for_non_anonymous_enum):
(ObjCGenerator.variable_name_prefix_for_domain):
(ObjCGenerator.objc_accessor_type_for_raw_name):
(ObjCGenerator.objc_type_for_raw_name):
(ObjCGenerator.objc_class_for_raw_name):
(ObjCGenerator.protocol_type_for_raw_name):
(ObjCGenerator.protocol_type_for_type):
(ObjCGenerator.objc_class_for_type):
(ObjCGenerator.objc_accessor_type_for_member):
(ObjCGenerator.objc_accessor_type_for_member_internal):
(ObjCGenerator.objc_type_for_member):
(ObjCGenerator.objc_type_for_member_internal):
(ObjCGenerator.objc_type_for_param):
(ObjCGenerator.objc_type_for_param_internal):
(ObjCGenerator.objc_protocol_export_expression_for_variable):
(ObjCGenerator.objc_protocol_import_expression_for_member):
(ObjCGenerator.objc_protocol_import_expression_for_parameter):
(ObjCGenerator.objc_protocol_import_expression_for_variable):
(ObjCGenerator.objc_to_protocol_expression_for_member):
(ObjCGenerator.protocol_to_objc_expression_for_member):
(ObjCGenerator.objc_setter_method_for_member):
(ObjCGenerator.objc_setter_method_for_member_internal):
(ObjCGenerator.objc_getter_method_for_member):
(ObjCGenerator.objc_getter_method_for_member_internal):

  • inspector/scripts/codegen/generate_objective_c_backend_dispatcher_header.py: Copied from Source/JavaScriptCore/inspector/scripts/codegen/generate_alternate_backend_dispatcher_header.py.

(ObjectiveCBackendDispatcherHeaderGenerator):
(ObjectiveCBackendDispatcherHeaderGenerator.output_filename):
(ObjectiveCBackendDispatcherHeaderGenerator.domains_to_generate):
(ObjectiveCBackendDispatcherHeaderGenerator.generate_output):
(ObjectiveCBackendDispatcherHeaderGenerator._generate_objc_forward_declarations):
(ObjectiveCBackendDispatcherHeaderGenerator._generate_objc_forward_declarations_for_domains):
(ObjectiveCBackendDispatcherHeaderGenerator._generate_objc_handler_declarations_for_domain):
(ObjectiveCBackendDispatcherHeaderGenerator._generate_objc_handler_declaration_for_command):

  • inspector/scripts/codegen/generate_objective_c_backend_dispatcher_implementation.py: Added.

(ObjectiveCConfigurationImplementationGenerator):
(ObjectiveCConfigurationImplementationGenerator.init):
(ObjectiveCConfigurationImplementationGenerator.output_filename):
(ObjectiveCConfigurationImplementationGenerator.domains_to_generate):
(ObjectiveCConfigurationImplementationGenerator.generate_output):
(ObjectiveCConfigurationImplementationGenerator._generate_handler_implementation_for_domain):
(ObjectiveCConfigurationImplementationGenerator._generate_handler_implementation_for_command):
(ObjectiveCConfigurationImplementationGenerator._generate_success_block_for_command):
(ObjectiveCConfigurationImplementationGenerator._generate_conversions_for_command):
(ObjectiveCConfigurationImplementationGenerator._generate_invocation_for_command):

  • inspector/scripts/codegen/generate_objective_c_configuration_header.py: Copied from Source/JavaScriptCore/inspector/scripts/codegen/generate_alternate_backend_dispatcher_header.py.

(ObjectiveCConfigurationHeaderGenerator):
(ObjectiveCConfigurationHeaderGenerator.output_filename):
(ObjectiveCConfigurationHeaderGenerator.generate_output):
(ObjectiveCConfigurationHeaderGenerator._generate_configuration_interface_for_domains):
(ObjectiveCConfigurationHeaderGenerator._generate_properties_for_domain):

  • inspector/scripts/codegen/generate_objective_c_configuration_implementation.py: Added.

(ObjectiveCBackendDispatcherImplementationGenerator):
(ObjectiveCBackendDispatcherImplementationGenerator.init):
(ObjectiveCBackendDispatcherImplementationGenerator.output_filename):
(ObjectiveCBackendDispatcherImplementationGenerator.generate_output):
(ObjectiveCBackendDispatcherImplementationGenerator._generate_configuration_implementation_for_domains):
(ObjectiveCBackendDispatcherImplementationGenerator._generate_ivars):
(ObjectiveCBackendDispatcherImplementationGenerator._generate_dealloc):
(ObjectiveCBackendDispatcherImplementationGenerator._generate_handler_setter_for_domain):
(ObjectiveCBackendDispatcherImplementationGenerator._generate_event_dispatcher_getter_for_domain):

  • inspector/scripts/codegen/generate_objective_c_conversion_helpers.py: Added.

(add_whitespace_separator):
(ObjectiveCConversionHelpersGenerator):
(ObjectiveCConversionHelpersGenerator.init):
(ObjectiveCConversionHelpersGenerator.output_filename):
(ObjectiveCConversionHelpersGenerator.domains_to_generate):
(ObjectiveCConversionHelpersGenerator.generate_output):
(ObjectiveCConversionHelpersGenerator._generate_enum_conversion_functions):
(ObjectiveCConversionHelpersGenerator._generate_anonymous_enum_conversion_for_declaration):
(ObjectiveCConversionHelpersGenerator._generate_anonymous_enum_conversion_for_member):
(ObjectiveCConversionHelpersGenerator._generate_anonymous_enum_conversion_for_parameter):
(ObjectiveCConversionHelpersGenerator._generate_enum_objc_to_protocol_string):
(ObjectiveCConversionHelpersGenerator._generate_enum_from_protocol_string):

  • inspector/scripts/codegen/generate_objective_c_frontend_dispatcher_implementation.py: Added.

(ObjectiveCFrontendDispatcherImplementationGenerator):
(ObjectiveCFrontendDispatcherImplementationGenerator.init):
(ObjectiveCFrontendDispatcherImplementationGenerator.output_filename):
(ObjectiveCFrontendDispatcherImplementationGenerator.domains_to_generate):
(ObjectiveCFrontendDispatcherImplementationGenerator.generate_output):
(ObjectiveCFrontendDispatcherImplementationGenerator._generate_event_dispatcher_implementations):
(ObjectiveCFrontendDispatcherImplementationGenerator._generate_event):
(ObjectiveCFrontendDispatcherImplementationGenerator._generate_event_signature):
(ObjectiveCFrontendDispatcherImplementationGenerator._generate_event_out_parameters):

  • inspector/scripts/codegen/generate_objective_c_header.py: Added.

(add_whitespace_separator):
(ObjectiveCHeaderGenerator):
(ObjectiveCHeaderGenerator.init):
(ObjectiveCHeaderGenerator.output_filename):
(ObjectiveCHeaderGenerator.generate_output):
(ObjectiveCHeaderGenerator._generate_forward_declarations):
(ObjectiveCHeaderGenerator._generate_enums):
(ObjectiveCHeaderGenerator._generate_types):
(ObjectiveCHeaderGenerator._generate_anonymous_enum_for_declaration):
(ObjectiveCHeaderGenerator._generate_anonymous_enum_for_member):
(ObjectiveCHeaderGenerator._generate_anonymous_enum_for_parameter):
(ObjectiveCHeaderGenerator._generate_enum):
(ObjectiveCHeaderGenerator._generate_enum.NS_ENUM):
(ObjectiveCHeaderGenerator._generate_type_interface):
(ObjectiveCHeaderGenerator._generate_init_method_for_required_members):
(ObjectiveCHeaderGenerator._generate_member_property):
(ObjectiveCHeaderGenerator._generate_command_protocols):
(ObjectiveCHeaderGenerator._generate_single_command_protocol):
(ObjectiveCHeaderGenerator._callback_block_for_command):
(ObjectiveCHeaderGenerator._generate_event_interfaces):
(ObjectiveCHeaderGenerator._generate_single_event_interface):

  • inspector/scripts/codegen/generate_objective_c_internal_header.py: Copied from Source/JavaScriptCore/inspector/scripts/codegen/generate_alternate_backend_dispatcher_header.py.

(ObjectiveCTypesInternalHeaderGenerator):
(ObjectiveCTypesInternalHeaderGenerator.output_filename):
(ObjectiveCTypesInternalHeaderGenerator.generate_output):
(ObjectiveCTypesInternalHeaderGenerator._generate_event_dispatcher_private_interfaces):

  • inspector/scripts/codegen/generate_objective_c_types_implementation.py: Added.

(add_whitespace_separator):
(ObjectiveCTypesImplementationGenerator):
(ObjectiveCTypesImplementationGenerator.init):
(ObjectiveCTypesImplementationGenerator.output_filename):
(ObjectiveCTypesImplementationGenerator.domains_to_generate):
(ObjectiveCTypesImplementationGenerator.generate_output):
(ObjectiveCTypesImplementationGenerator.generate_type_implementations):
(ObjectiveCTypesImplementationGenerator.generate_type_implementation):
(ObjectiveCTypesImplementationGenerator._generate_init_method_for_required_members):
(ObjectiveCTypesImplementationGenerator._generate_setter_for_member):
(ObjectiveCTypesImplementationGenerator._generate_getter_for_member):

  • inspector/scripts/codegen/generate_protocol_types_header.py:

(ProtocolTypesHeaderGenerator._generate_forward_declarations):
(_generate_typedefs_for_domain):
(_generate_builders_for_domain):

  • inspector/scripts/codegen/generator.py:

(Generator.wrap_with_guard_for_domain):
(Generator):
(Generator.wrap_with_guard):

  • inspector/scripts/codegen/generator_templates.py:

(AlternateInspector):
(ObjCInspector):

  • inspector/scripts/codegen/models.py:

(Framework.fromString):
(Frameworks):

  • inspector/scripts/generate-inspector-protocol-bindings.py:

(generate_from_specification):

  • 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/domains-with-varying-command-sizes.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/same-type-id-different-domain.json-result:
  • inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result:
  • inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-array-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-enum-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:
3:06 PM Changeset in webkit [175384] by adachan@apple.com
  • 12 edits
    2 adds in trunk

The Page's muted setting should not affect the HTMLMediaElement's 'muted' IDL attribute.
https://bugs.webkit.org/show_bug.cgi?id=138215

Reviewed by Eric Carlson.

Source/WebCore:

Add m_muted in Page to keep track of the Page's muted state. Change AudioProducer::setMuted()
to pageMutedStateDidChange(). When that method is called, the AudioProducer is supposed to
update its muted state again taking the Page's muted state into account.

Add HTMLMediaElement::effectiveMuted(), which returns the effective muted state of the
HTMLMediaElement, taking the Page's muted state into account.

Test: media/video-muted-after-setting-page-muted-state.html

  • dom/Document.cpp:

(WebCore::Document::pageMutedStateDidChange):
(WebCore::Document::setMuted): Deleted.

  • dom/Document.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setMuted):
Set the MediaPlayer's muted state to the result of effectiveMuted() rather than m_muted.
(WebCore::HTMLMediaElement::updateVolume):
Ditto, and also make sure the MediaController's muted state does not override the Page's
muted state.
(WebCore::HTMLMediaElement::updatePlayState):
Set the MediaPlayer's muted state to the result of effectiveMuted() rather than muted().
(WebCore::HTMLMediaElement::pageMutedStateDidChange):
Call updateVolume(), which will update the MediaPlayer's muted state.
(WebCore::HTMLMediaElement::effectiveMuted):
Figure out the muted value taking Page's muted state into account.

  • html/HTMLMediaElement.h:
  • page/AudioProducer.h:
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::setMuted):
Update m_muted, and only iterate through the frames' documents to call pageMutedStateDidChange()
if m_muted changes.

  • page/Page.h:

(WebCore::Page::isMuted):

  • testing/Internals.cpp:

(WebCore::Internals::setPageMuted):
Expose a way to set the Page's muted state in Internals for testing.

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • media/video-muted-after-setting-page-muted-state-expected.txt: Added.
  • media/video-muted-after-setting-page-muted-state.html: Added.
2:39 PM Changeset in webkit [175383] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Use references in calculateMinimumPageHeight() for non-optional arguments
https://bugs.webkit.org/show_bug.cgi?id=138231

Reviewed by Dean Jackson.

No new tests because there is no behavior change.

  • rendering/RenderBlockFlow.cpp:

(WebCore::calculateMinimumPageHeight):
(WebCore::RenderBlockFlow::adjustLinePositionForPagination):

2:35 PM Changeset in webkit [175382] by jpfau@apple.com
  • 2 edits in trunk/Source/WTF

ASSERT(!m_deletionHasBegun) in RefCounted.h should be ASSERT_WITH_SECURITY_IMPLICATION
https://bugs.webkit.org/show_bug.cgi?id=138141

Reviewed by Alexey Proskuryakov.

  • wtf/RefCounted.h:

(WTF::RefCountedBase::ref):
(WTF::RefCountedBase::relaxAdoptionRequirement):
(WTF::RefCountedBase::derefBase):
(WTF::adopted):

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

Move -webkit-border-image / -webkit-mask-box-image to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138207

Reviewed by Andreas Kling.

Move -webkit-border-image / -webkit-mask-box-image CSS properties to
the new StyleBuilder so that they are now generated from
CSSPropertyNames.in.

No new tests, no behavior change.

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

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

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertBorderImage):
(WebCore::StyleBuilderConverter::convertBorderMask):

2:25 PM Changeset in webkit [175380] by Chris Dumez
  • 9 edits in trunk/Source/WebCore

Optimize HTMLVideoElement / HTMLAudioElement type checks a bit
https://bugs.webkit.org/show_bug.cgi?id=138202

Reviewed by Benjamin Poulain.

Optimize HTMLVideoElement / HTMLAudioElement type checks a bit by:

  1. Using is<HTMLMediaElement>() instead of
(is<HTMLVideoElement>()
is<HTMLAudioElement>()) if the caller is

interested in both video and audio elements. This is faster because
it ends up doing:

  • virtual call to Element::isMediaElement()

instead of

  • Node::isHTMLElement() + virtual call to HTMLElement::isHTMLUnknownElement() + 2 * HTMLElement::hasTagName()
  1. Updating HTMLVideoElement / HTMLAudioElement type traits specializations to:
    • Avoid doing any virtual function call if the input type is an HTMLMediaElement (which is common in the code base).
    • Speed up check if the input is an Element by doing:
      • virtual call to Element::isMediaElement() + HTMLElement::hasTagName()
      instead of
      • Node::isHTMLElement() + virtual call to !HTMLElement::isHTMLUnknownElement() + HTMLElement::hasTagName()
      The speed stays the same if the input is a Node or an HTMLElement.

No new tests, no behavior change.

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • dom/make_names.pl:

(defaultTagPropertyHash):
(printTypeHelpers):

  • html/HTMLAudioElement.h:

(isType):

  • html/HTMLImageLoader.cpp:
  • html/HTMLTagNames.in:
  • html/HTMLVideoElement.h:

(isType):

  • page/ChromeClient.h:
2:17 PM Changeset in webkit [175379] by mmaxfield@apple.com
  • 3 edits
    1 add in trunk/Source/WebCore

Migrate ComplexTextControllerCoreText to use SPI instead of WKSI
https://bugs.webkit.org/show_bug.cgi?id=138228

Reviewed by Simon Fraser.

No new tests because there is no behavior change.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

  • platform/spi/cocoa/CoreTextSPI.h: Added.
2:00 PM Changeset in webkit [175378] by beidson@apple.com
  • 4 edits
    2 adds in trunk

IndexedDB is deleting data when a PK is shared amongst two objectStores
rdar://problem/18479306 and https://bugs.webkit.org/show_bug.cgi?id=137154

Reviewed by Jer Noble.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::v1RecordsTableSchema): Store away the v1 schema for introspection into the database.
(WebKit::v2RecordsTableSchema): Add utility methods to get the v2 schema with different Table names.
(WebKit::createOrMigrateRecordsTableIfNecessary): Check to see if the Records table exists with

the correct schema. If it is the v1 schema, then migrate the data to a new v2 table, drop the v1
table, then slide the new table into place.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::ensureValidRecordsTable): Make sure the Records table

exists and is v2, and then make sure the uniqueness index exists.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Don’t bother creating

the Records table here as it will have already been established earlier.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • storage/indexeddb/primary-key-unique-to-objectstore-expected.txt: Added.
  • storage/indexeddb/primary-key-unique-to-objectstore.html: Added.
1:57 PM Changeset in webkit [175377] by matthew_hanson@apple.com
  • 2 edits in trunk/Tools

Update safariVersion to safariVersionString
https://bugs.webkit.org/show_bug.cgi?id=138193

The preceding change updated safariVersion to safariVersionString for the "4 Public Beta" check in OS X 10.5.x,
but it should have also been done for the "4 Public Beta" check in OS X 10.4.x.

Rubber-stamped by David Kilzer.

  • Scripts/bisect-builds:

(makeNightlyList):
Compare safariVersionString to a string literal, instead of safariVersion.

12:38 PM Changeset in webkit [175376] by Beth Dakin
  • 12 edits in trunk/Source/WebKit2

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

Reviewed by Tim Horton.

Two new types of actions for the two text actions.

  • Shared/API/c/WKActionMenuItemTypes.h:

One new type of menu.

  • Shared/API/c/WKActionMenuTypes.h:

Pass willOpenMenu on to the WKActionMenuController.

  • UIProcess/API/mac/WKView.mm:

(-[WKView willOpenMenu:withEvent:]):

Two new WebPageProxy functions that will pass messages along to the web process.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::selectLookupTextAtLocation):

  • UIProcess/WebPageProxy.h:

At willOpenMenu time, text menus should select text so that it is clear what the
menu actions will apply to.

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

Menu items for text menus.
(-[WKActionMenuController willOpenMenu:withEvent:]):
(-[WKActionMenuController _defaultMenuItemsForText]):
(-[WKActionMenuController _copyText:]):
(-[WKActionMenuController _lookupText:]):
(-[WKActionMenuController _createActionMenuItemForTag:]):
(imageForResource:name::if):

New messages to the web process.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::performDictionaryLookupOfCurrentSelection):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

Re-factor performDictionaryLookupAtLocation() to re-use the code that finds the
Range for the dictionary lookup. That code now lives in
rangeForDictionaryLookupAtHitTestResult() and can be used by
performDictionaryLookupAtLocation() and our new function
selectLookupTextAtLocation().

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::rangeForDictionaryLookupAtHitTestResult):
(WebKit::WebPage::performDictionaryLookupAtLocation):

Since the action menu text is always selected, when the lookup action is chosen,
we can just lookup the current selection.
(WebKit::WebPage::performDictionaryLookupOfCurrentSelection):

Uses the new function rangeForDictionaryLookupAtHitTestResult() to get a lookup
range and then select it.
(WebKit::WebPage::selectLookupTextAtLocation):

12:04 PM Changeset in webkit [175375] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

Add diagnostic logging to track page loads.
https://bugs.webkit.org/show_bug.cgi?id=138205
<rdar://problem/18173017>

Reviewed by Jer Noble.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::checkLoadCompleteForThisFrame): Log page load success or failure.

  • page/DiagnosticLoggingKeys.cpp:

(WebCore::DiagnosticLoggingKeys::pageLoadedKey): New.

  • page/DiagnosticLoggingKeys.h:
11:48 AM Changeset in webkit [175374] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

When a client certificate is rejected, Safari says the website didn’t accept the certificate “unknown” instead of naming the certificate
https://bugs.webkit.org/show_bug.cgi?id=138216

Reviewed by Alexey Proskuryakov.

  • Shared/cf/ArgumentCodersCF.cpp:

(IPC::typeFromCFTypeRef): Remove no-longer-necessary platform guards around SecIdentityRef.
(IPC::encode): Ditto.
(IPC::decode): Ditto.

  • Shared/mac/WebCoreArgumentCodersMac.mm:

(IPC::ArgumentCoder<ResourceError>::encodePlatformData): If NSErrorClientCertificateChainKey
is present in the error’s userInfo dictionary, assert that it’s an array of identities and
certificates, and include it in the filtered dictionary.

10:39 AM Changeset in webkit [175373] by jer.noble@apple.com
  • 2 edits
    2 copies
    3 adds in trunk/LayoutTests

Unreviewed gardening; rebaseline two media/ tests.

  • platform/mac-mavericks/media/controls-after-reload-expected.txt: Added.
  • platform/mac-mavericks/media/controls-styling-expected.txt:
  • platform/mac-mountainlion/media/controls-after-reload-expected.txt: Added.
  • platform/mac-mountainlion/media/controls-styling-expected.txt: Copied from LayoutTests/platform/mac-mavericks/media/controls-styling-expected.txt.
  • platform/mac-wk1/media/controls-styling-expected.txt: Copied from LayoutTests/platform/mac-mavericks/media/controls-styling-expected.txt.
9:01 AM Changeset in webkit [175372] by akling@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed assertion fix.

RegExpCachedResult::m_reified is now the dedicated member that knows whether
the result was reified into an array or not. Check that instead of m_result
which is now single-purpose.

  • runtime/RegExpCachedResult.cpp:

(JSC::RegExpCachedResult::setInput):

6:45 AM Changeset in webkit [175371] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Minibrowser : Add window fullscreen support for Minibrowser
https://bugs.webkit.org/show_bug.cgi?id=137775

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-10-30
Reviewed by Carlos Garcia Campos.

  • MiniBrowser/gtk/BrowserWindow.c:

(toggleFullScreen): Callback to toggle window fullscreen on pressing F11 key.
(browser_window_init):

3:07 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
1:53 AM Changeset in webkit [175370] by Philippe Normand
  • 6 edits in trunk/Source/WebCore

[GStreamer] Video resolution changes trigger a crash in the TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=137065

Reviewed by Gustavo Noronha Silva.

Switch to GstSample for buffer+caps communication between the
video sink and the player. Using a single object type for this
avoid issues where the caps might not correctly describe the
buffer contents anymore, for example when the video resolution is
changed.

  • platform/graphics/gstreamer/ImageGStreamer.h: Use GstSample

instead of GstBuffer+GstCaps.
(WebCore::ImageGStreamer::createImage):

  • platform/graphics/gstreamer/ImageGStreamerCairo.cpp: Ditto.

(ImageGStreamer::ImageGStreamer):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::mediaPlayerPrivateRepaintCallback): The repaint signal
now uses a GstSample instead of a GstBuffer.
(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
Store the current sample instead of a buffer. Also renamed the
mutex protecting access to the sample.
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase): Ditto.
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSize): Return
early if no sample is available. The caps used to get the video
size are store in the sample.
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): Use
GstSample instead of GstBuffer.
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint): Ditto.
(WebCore::MediaPlayerPrivateGStreamerBase::paint): Ditto.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp: Now store a

GstSample internally. Also removed the now useless current-caps property.
(_WebKitVideoSinkPrivate::_WebKitVideoSinkPrivate): Renamed the
mutex protecting access to the sample.
(_WebKitVideoSinkPrivate::~_WebKitVideoSinkPrivate): Ditto.
(webkit_video_sink_init): Disable last-sample in basesink since we
already store one in our sink anyway.
(webkitVideoSinkTimeoutCallback): Switch to GstSample.
(webkitVideoSinkRender): Ditto.
(unlockSampleMutex): Ditto.
(webkitVideoSinkUnlock): Ditto.
(webkitVideoSinkUnlockStop): Ditto.
(webkitVideoSinkStop): Ditto!
(webkitVideoSinkStart): Ditto.
(webkit_video_sink_class_init): Drop current-caps property.
(webkitVideoSinkGetProperty): Deleted.
(unlockBufferMutex): Deleted.

1:02 AM Changeset in webkit [175369] by Carlos Garcia Campos
  • 4 edits in trunk/Source/WebCore

FormDataBuilder should not use Document
https://bugs.webkit.org/show_bug.cgi?id=138172

Reviewed by Alexey Proskuryakov.

It's only used by encodingFromAcceptCharset() to fallback to
document input encoding. That method is only used by
FormSubmission::create(), so it could be moved as a static
function to FormSubmission.cpp.

  • loader/FormSubmission.cpp:

(WebCore::encodingFromAcceptCharset):
(WebCore::FormSubmission::create):

  • platform/network/FormDataBuilder.cpp:

(WebCore::FormDataBuilder::encodingFromAcceptCharset): Deleted.

  • platform/network/FormDataBuilder.h:
12:37 AM Changeset in webkit [175368] by bshafiei@apple.com
  • 3 edits
    2 copies in tags/Safari-601.1.6

Merged r175312. rdar://problem/18808163

Note: See TracTimeline for information about the timeline view.