Timeline



Feb 8, 2014:

11:29 PM Changeset in webkit [163743] by akling@apple.com
  • 2 edits in trunk/Tools

Let Instruments time profiler run until tests finish.
<https://webkit.org/b/128488>

Pass "-T 0" to iprofiler to ensure that we get a time profile of the
entire performance test run instead of just the first 10 seconds.

Reviewed by Brady Eidson.

  • Scripts/webkitpy/common/system/profiler.py:

(IProfiler.attach_to_pid):

10:08 PM Changeset in webkit [163742] by beidson@apple.com
  • 4 edits in trunk

IDB: storage/indexeddb/mozilla/object-cursors.html fails
<rdar://problem/16020585> and https://bugs.webkit.org/show_bug.cgi?id=128479

Reviewed by Dan Bernstein.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Update the IndexInfo

table schema to allow for indexes with the same id/name as previous indexes.
But with different object stores, of course.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test.
10:07 PM Changeset in webkit [163741] by beidson@apple.com
  • 5 edits in trunk

IDB: storage/indexeddb/mozilla/index-prev-no-duplicate.html fails
<rdar://problem/16018918> and https://bugs.webkit.org/show_bug.cgi?id=128444

Reviewed by Dan Bernstein.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::getIndexStatement): Return different statements for unique cursors that will

sort the values in reverse of the cursor direction, matching expected IndexedDB behavior.

(WebKit::SQLiteIDBCursor::establishStatement):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::uncheckedPutIndexRecord): Insert the values as

strings since we need the collation function to be called for proper sorting.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test.
9:48 PM Changeset in webkit [163740] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/ios

Build fix after r163739.

  • WebCoreSupport/WebFrameIOS.mm:

(-[WebFrame collapseSelection]):
(-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):

8:58 PM Changeset in webkit [163739] by rniwa@webkit.org
  • 21 edits in trunk/Source

Cleanup the interface of FrameSelection
https://bugs.webkit.org/show_bug.cgi?id=128481

Reviewed by Andreas Kling.

Source/WebCore:

Removed FrameSelection::end() as intended in r163232, and the stale declaration of
paintDragCaret() which was supposed to be removed when we extracted DragCaretController.

Renamed caretRenderer() to caretRendererWithoutUpdatingLayout() to clarify the contract
as the only caller of this function is RenderBlock::paintCaret. Also renamed bounds()
to selectionBounds() to make it more easily identifiable / grep'able.

In addition, made recomputeCaretRect() and invalidateCaretRect() private.

  • WebCore.exp.in:
  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::caretRendererWithoutUpdatingLayout):
(WebCore::FrameSelection::selectionBounds):
(WebCore::FrameSelection::revealSelection):

  • editing/FrameSelection.h:

(WebCore::FrameSelection::setCaretVisible):

  • page/DragController.cpp:

(WebCore::dragLocForSelectionDrag):

  • page/FrameSnapshotting.cpp:

(WebCore::snapshotSelection):

  • page/win/FrameWin.cpp:

(WebCore::imageFromSelection):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paintCaret):

  • testing/Internals.cpp:

(WebCore::Internals::selectionBounds):

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::selectionRectangle):

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::rectangleForSelection):

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _lookUpInDictionaryFromMenu:]):
(-[WebHTMLView selectionRect]):
(-[WebHTMLView selectionImageRect]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::selectionRect):

Source/WebKit2:

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::getFindIndicatorBitmapAndRect):
(WebKit::FindController::drawRect):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::scaledSnapshotWithOptions):

8:31 PM Changeset in webkit [163738] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Reverted part of r163734, because the assertion it enabled still fails when running
loader/load-defer-resume-crash.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::dataReceived):

7:51 PM Changeset in webkit [163737] by andersca@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Simplify single character substrings in JSC
https://bugs.webkit.org/show_bug.cgi?id=128483

Reviewed by Andreas Kling.

With the recent work to make StringImpl occupy less space, it is actually more
efficient to allocate a single character string that it is to use createSubstringSharingImpl!

  • runtime/JSString.h:

(JSC::jsSingleCharacterString):
(JSC::jsSingleCharacterSubstring):
(JSC::jsString):
(JSC::jsSubstring8):

  • runtime/SmallStrings.cpp:

(JSC::SmallStringsStorage::SmallStringsStorage):
(JSC::SmallStrings::SmallStrings):

7:36 PM Changeset in webkit [163736] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

EFL build fix after r163729.

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::version):

6:56 PM Changeset in webkit [163735] by BJ Burg
  • 11 edits
    8 adds in trunk/Source/WebInspectorUI

Web Inspector: show probe sets for script content views in the details sidebar
https://bugs.webkit.org/show_bug.cgi?id=128333

Reviewed by Timothy Hatcher.

This patch adds a new details sidebar for showing the probes associated with any
breakpoint in the currently visible source file. Each probe set (corresponding to
multiple actions of single breakpoint) gets its own ProbeSetDetailsSection. The
section contains a custom DataGrid subclass to display probe data, and some icons
for clearing samples, deleting the probe, and adding a new probe expression.

The table containing probe data keeps its columns in sync with the probe set's
probe expressions. To support this, DataGrid has been further refactored to support
removing columns, and inserting columns (rather than only appending). With this
capability, probe columns are removed and re-inserted when the expression changes.

The availability of the probe details sidebar is controlled by providing the
probe sets matching the script content view's resource URL as supplemental
represented objects.

Lastly, added the utility EventListenerSet class. This holds a set of event listeners
that should be added and removed together, and takes care of binding thisObject
according to whether the event emitter is a Node or WebInspector.Object.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/BreakpointActionView.js:

(WebInspector.BreakpointActionView):
(WebInspector.BreakpointActionView.prototype._removeAction): Renamed from removeButtonClicked.
(WebInspector.BreakpointActionView.prototype._codeMirrorBlurred): Change the behavior
of CodeMirror-backed editors for probe and evaluate expression actions. If the expression
consists entirely of trimmable whitespace, then delete the action rather than saving it.

  • UserInterface/DataGrid.js:

(WebInspector.DataGrid): Copy over the column data into a map inside insertColumn() instead.
(WebInspector.DataGrid.prototype.insertColumn): Renamed from addColumn. It now takes an
optional insertionIndex argument and splices the column before the element at that index.
Also, convert code to use EventListenerSet for adding/removing per-column event listeners.

(WebInspector.DataGrid.prototype.removeColumn): Added. It splices the column out.
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle): Whitespace.

  • UserInterface/EventListenerSet.js: Added.

(WebInspector.EventListenerSet):
(WebInspector.EventListenerSet.prototype.register):
(WebInspector.EventListenerSet.prototype.unregister):
(WebInspector.EventListenerSet.prototype.install):
(WebInspector.EventListenerSet.prototype.uninstall):

  • UserInterface/Images/NavigationItemProbes.pdf: Added.
  • UserInterface/LayerTreeDataGrid.js:

(WebInspector.LayerTreeDataGrid.prototype._updateChildren): Fix a missing column.get().

  • UserInterface/Main.html: Add new JavaScript and CSS files.
  • UserInterface/Main.js:

(WebInspector.contentLoaded): Add the probe details sidebar.

  • UserInterface/ProbeDetailsSidebarPanel.css: Added.

(.sidebar > .panel.probes > .navigation-bar):
(.sidebar > .panel.probes > .content):
(.details-section.probe-set .options > .probe-add):
(.details-section.probe-set .options > .probe-clear-samples):
(.details-section.probe-set .options > .probe-remove):
(.details-section.probe-set .options > input):
(.panel.probes ::-webkit-scrollbar):
(.panel.probes ::-webkit-scrollbar-track):
(.panel.probes ::-webkit-scrollbar-thumb):
(.panel.probes ::-webkit-scrollbar-corner):
(.popover .probe-popover):
(.popover .probe-popover input):

  • UserInterface/ProbeDetailsSidebarPanel.js: Added.

(WebInspector.ProbeDetailsSidebarPanel):
(WebInspector.ProbeDetailsSidebarPanel.prototype.get inspectedProbeSets):
(WebInspector.ProbeDetailsSidebarPanel.prototype._probeSetAdded):

  • UserInterface/ProbeManager.js: Remove unused probeSetForBreakpoint function.
  • UserInterface/ProbeSet.js: Fix erroneous uses of probe.identifier instead of probe.id.

(WebInspector.ProbeSet.prototype.removeProbe):
(WebInspector.ProbeSet.prototype._sampleCollected):

  • UserInterface/ProbeSetDataGrid.css: Added.

(.details-section.probe-set .data-grid .data-container tr.past-value td):
(.details-section.probe-set .data-grid > .data-container td.unknown-value):
(.details-section.probe-set .data-grid .data-container tr.revealed.highlighted):
(@-webkit-keyframes blink-frame-highlight):
(100%):
(.details-section.probe-set .data-grid .data-container tr.separator):
(.details-section.probe-set .data-grid > .data-container tr.data-updated):
(@-webkit-keyframes blink-probe-frame):
(.details-section.probe-set .data-grid .data-container .selected .section *):
(.details-section.probe-set .data-grid .data-container .selected td.unknown-value):
(.details-section.probe-set .data-grid .data-container .section):
(.details-section.probe-set .data-grid th):
(.details-section.probe-set .data-grid th:not(:last-child)):
(.details-section.probe-set .data-grid td):

  • UserInterface/ProbeSetDataGrid.js: Added.

(WebInspector.ProbeSetDataGrid):
(WebInspector.ProbeSetDataGrid.prototype.closed):
(WebInspector.ProbeSetDataGrid.prototype._setupProbe):
(WebInspector.ProbeSetDataGrid.prototype._teardownProbe):
(WebInspector.ProbeSetDataGrid.prototype._setupData):
(WebInspector.ProbeSetDataGrid.prototype._teardownData):
(WebInspector.ProbeSetDataGrid.prototype._updateNodeForFrame.else.sortFunction):
(WebInspector.ProbeSetDataGrid.prototype._updateNodeForFrame.else.set node):
(WebInspector.ProbeSetDataGrid.prototype._dataFrameInserted):
(WebInspector.ProbeSetDataGrid.prototype._dataSeparatorInserted):
(WebInspector.ProbeSetDataGrid.prototype._probeExpressionChanged.get var):

  • UserInterface/ProbeSetDataGridNode.js: Added.

(WebInspector.ProbeSetDataGridNode):
(WebInspector.ProbeSetDataGridNode.prototype.get element):
(WebInspector.ProbeSetDataGridNode.prototype.get data):
(WebInspector.ProbeSetDataGridNode.prototype.set frame):
(WebInspector.ProbeSetDataGridNode.prototype.get frame):
(WebInspector.ProbeSetDataGridNode.prototype.createCellContent):
(WebInspector.ProbeSetDataGridNode.prototype.updateCellsFromFrame):
(WebInspector.ProbeSetDataGridNode.prototype.updateCellsForSeparator):

  • UserInterface/ProbeSetDataTable.js:

(WebInspector.ProbeSetDataTable.prototype.removeProbe): Fix a typo in for..of loop refactor.

  • UserInterface/ProbeSetDetailsSection.js: Added.

(WebInspector.ProbeSetDetailsSection):
(WebInspector.ProbeSetDetailsSection.prototype.closed):
(WebInspector.ProbeSetDetailsSection.prototype._probeSetPositionTextOrLink):
(WebInspector.ProbeSetDetailsSection.prototype._addProbeButtonClicked):
(WebInspector.ProbeSetDetailsSection.prototype._removeButtonClicked):
(WebInspector.ProbeSetDetailsSection.prototype._clearSamplesButtonClicked):

  • UserInterface/TextResourceContentView.js:

(WebInspector.TextResourceContentView):
(WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects):
Add probe sets whose breakpoint matches the represented object's URL.
(WebInspector.TextResourceContentView.prototype._probeSetsChanged): Tell listeners
to re-fetch supplementalRepresentedObjects when probe sets are added or removed.

6:37 PM Changeset in webkit [163734] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Remove outdated workarounds in DocumentLoader::dataReceived
https://bugs.webkit.org/show_bug.cgi?id=128465

Reviewed by Andreas Kling.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::dataReceived):

5:43 PM Changeset in webkit [163733] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Baseline JIT uses the wrong version of checkMarkWord in emitWriteBarrier
https://bugs.webkit.org/show_bug.cgi?id=128474

Reviewed by Michael Saboff.

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitWriteBarrier):

5:21 PM Changeset in webkit [163732] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Remove some unused functions from SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=128407

Reviewed by Oliver Hunt.

Removed more unused code, particularly in API helpers. Renamed one serialize()
function to create(), because it does the same thing as other create() functions.

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::put):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::create):
(WebCore::SerializedScriptValue::deserialize):

  • bindings/js/SerializedScriptValue.h:
5:13 PM Changeset in webkit [163731] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Remove use of PLATFORM(MAC) from WebKit/mac
https://bugs.webkit.org/show_bug.cgi?id=128476

Reviewed by Anders Carlsson.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

4:46 PM Changeset in webkit [163730] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Rename a field and some variables in JSLock to better describe what they contain.
<https://webkit.org/b/128475>

Reviewed by Oliver Hunt.

  • runtime/JSLock.cpp:

(JSC::JSLock::dropAllLocks):
(JSC::JSLock::dropAllLocksUnconditionally):
(JSC::JSLock::grabAllLocks):
(JSC::JSLock::DropAllLocks::DropAllLocks):
(JSC::JSLock::DropAllLocks::~DropAllLocks):

  • runtime/JSLock.h:
4:01 PM Changeset in webkit [163729] by beidson@apple.com
  • 4 edits in trunk

IDB: storage/indexeddb/mozilla/versionchange-abort.html fails
<rdar://problem/16018887> and https://bugs.webkit.org/show_bug.cgi?id=128442

Reviewed by Dan Bernstein.

Source/WebCore:

Tested by storage/indexeddb/mozilla/versionchange-abort.html (and probably others)

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::version): If the version is NoIntVersion, return DefaultIntVersion to script.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test. Also add all the other storage/indexeddb/mozilla test with expectations as they are what I’m focusing on right now.
4:00 PM Changeset in webkit [163728] by beidson@apple.com
  • 8 edits in trunk

IDB: storage/indexeddb/mozilla/cursors.html fails
<rdar://problem/16017998> and https://bugs.webkit.org/show_bug.cgi?id=128423

Reviewed by Dan Bernstein.

Source/WebCore:

Tested by storage/indexeddb/mozilla/cursors.html (And probably others)

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::OpenCursorOperation::perform): Distinguish between an error while opening the cursor

and opening a cursor that points to no records.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::internalAdvanceOnce): Store the primary key for object store cursors.
(WebKit::SQLiteIDBCursor::iterate): We’re not supposed to check for equality to the target key.

Depending on the direction of the cursor we should check for the next highest or next lowest key.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Unskip storage/indexeddb/mozilla/cursors.html.

Revert the change to storage/indexeddb/mozilla/clear.html as it is now clear how a
null cursor might be returned from openCursor:

  • storage/indexeddb/mozilla/clear-expected.txt:
  • storage/indexeddb/mozilla/resources/clear.js:
3:31 PM Changeset in webkit [163727] by andersca@apple.com
  • 5 edits in trunk/Source

Stop using getCharactersWithUpconvert in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=128457

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Change substituteBackreferencesSlow to take StringViews and use a StringBuilder instead of upconverting
if the source or replacement strings area 16-bit.

  • runtime/StringPrototype.cpp:

(JSC::substituteBackreferencesSlow):
(JSC::substituteBackreferences):

Source/WTF:

  • wtf/text/StringBuilder.h:

(WTF::StringBuilder::append):
Add a new overload that takes a StringView.

  • wtf/text/StringView.h:

(WTF::StringView::find):
Add new find member function.

2:29 PM Changeset in webkit [163726] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Remove unused ChromeClient::layoutUpdated().
<https://webkit.org/b/128470>

Nobody listens for this callback anymore so remove it.

Reviewed by Anders Carlsson.

  • page/Chrome.cpp:
  • page/Chrome.h:
  • page/ChromeClient.h:
  • page/FrameView.cpp:

(WebCore::FrameView::layout):

2:26 PM Changeset in webkit [163725] by mitz@apple.com
  • 71 edits in trunk/Source/WebCore

Stop using PLATFORM(MAC) in WebCore except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128464

Reviewed by Anders Carlsson.

  • Modules/webaudio/AudioContext.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::AudioContext::constructCommon):

  • accessibility/AccessibilityNodeObject.cpp: Ditto.

(WebCore::AccessibilityNodeObject::visibleText):

  • accessibility/AccessibilityObject.h: Ditto.
  • accessibility/AccessibilityRenderObject.cpp: Ditto.

(WebCore::AccessibilityRenderObject::clickPoint):
(WebCore::AccessibilityRenderObject::visiblePositionForPoint):
(WebCore::AccessibilityRenderObject::addChildren):

  • accessibility/AccessibilityRenderObject.h: Ditto.
  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::JSInspectorFrontendHost::platform): Made it explicit that this function returns
"mac" when built for iOS.

  • bindings/js/ScriptController.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::ScriptController::ScriptController):

  • bindings/js/ScriptController.h: Ditto.
  • crypto/CryptoKey.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) &&

!PLATFORM(GTK) when checking for whether to use CoreCrypto.

  • crypto/keys/CryptoKeyRSA.h: Ditto.
  • dom/Clipboard.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • dom/Document.cpp: Ditto.

(WebCore::Document::implicitClose):

  • dom/KeyboardEvent.h: Ditto.
  • editing/Editor.cpp: Ditto.

(WebCore::Editor::cut):
(WebCore::Editor::copy):
(WebCore::Editor::copyImage):

  • editing/Editor.h: Ditto.
  • editing/FrameSelection.h: Ditto.
  • editing/TypingCommand.cpp: Ditto.

(WebCore::TypingCommand::typingAddedToOpenCommand):

  • history/HistoryItem.h: Ditto.
  • html/HTMLMediaElement.cpp: Ditto.

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h: Ditto.
  • html/HTMLPlugInElement.cpp: Ditto.

(WebCore::registeredPluginReplacements):

  • html/HTMLPlugInImageElement.cpp: Ditto.

(WebCore::HTMLPlugInImageElement::setDisplayState):

  • html/HTMLSelectElement.cpp: Ditto.

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):

  • html/shadow/MediaControlElements.cpp: Ditto.

(WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):

  • html/shadow/MediaControlElements.h: Ditto.
  • inspector/InspectorIndexedDBAgent.cpp: Ditto.
  • loader/CookieJar.cpp: Ditto.
  • loader/DocumentLoader.cpp: Ditto.

(WebCore::DocumentLoader::dataReceived):

  • loader/DocumentLoader.h: Ditto.

(WebCore::DocumentLoader::didTellClientAboutLoad):

  • loader/EmptyClients.h: Ditto.
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadArchive): Added !PLATFORM(IOS) around Mac-only workaround.
(WebCore::FrameLoader::defaultObjectContentType): Changed PLATFORM(MAC) to PLATFORM(COCOA).
(WebCore::FrameLoader::subresourceCachePolicy): Ditto.

  • loader/ResourceBuffer.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around functions that

are implemented using Foundation.

  • loader/ResourceLoadScheduler.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::ResourceLoadScheduler::scheduleLoad):

  • loader/ResourceLoader.cpp: Ditto.

(WebCore::ResourceLoader::didReceiveAuthenticationChallenge):

  • loader/ResourceLoader.h: Ditto.
  • loader/archive/cf/LegacyWebArchive.cpp: Ditto.
  • loader/cache/CachedResource.cpp: Changed PLATFORM(MAC) to USE(FOUNDATION) around function

that is implemented using other USE(FOUNDATION)-guarded code.

  • loader/cache/CachedResource.h: Ditto.
  • page/Chrome.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • page/ChromeClient.h: Ditto.
  • page/ContextMenuClient.h: Ditto.
  • page/ContextMenuController.cpp: Ditto.

(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::createAndAppendFontSubMenu):
(WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):

  • page/DragClient.h: Ditto.
  • page/DragController.cpp: Ditto.

(WebCore::dragLocForDHTMLDrag):
(WebCore::dragLocForSelectionDrag):
(WebCore::DragController::startDrag):
(WebCore::DragController::doImageDrag):

  • page/EditorClient.h: Ditto.
  • page/EventHandler.cpp: Ditto.

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::logicalScrollRecursively):
(WebCore::EventHandler::clearDragState):
(WebCore::EventHandler::handleWheelEvent):
(WebCore::EventHandler::defaultWheelEventHandler):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):

  • page/EventHandler.h: Ditto.
  • page/FrameView.cpp: Ditto.

(WebCore::FrameView::layout):

  • page/Page.h: Ditto.
  • page/Settings.cpp: Ditto.
  • page/Settings.h: Ditto.
  • page/scrolling/ScrollingCoordinator.cpp: Ditto.
  • page/scrolling/ScrollingCoordinator.h: Ditto.
  • page/scrolling/ScrollingStateNode.h: Removed unused #include.
  • page/scrolling/ScrollingThread.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::ScrollingThread::createThreadIfNeeded):

  • page/scrolling/ScrollingThread.h: Ditto.
  • platform/network/cf/ResourceRequest.h: Added !PLATFORM(IOS) around

applyWebArchiveHackForMail.

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::applyWebArchiveHackForMail): Ditto.

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::applyWebArchiveHackForMail): Ditto.

  • plugins/PluginViewNone.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA)
  • rendering/RenderBox.cpp: Ditto.

(WebCore::RenderBox::logicalScroll):

  • rendering/RenderLayerBacking.cpp: Ditto.

(WebCore::RenderLayerBacking::createGraphicsLayer):
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):

  • rendering/RenderMenuList.h: Ditto.
  • rendering/RenderText.cpp: Ditto.

(WebCore::RenderText::previousOffsetForBackwardDeletion):

  • rendering/break_lines.cpp: Removed unused #include.
  • testing/js/WebCoreTestSupport.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • xml/XSLStyleSheetLibxslt.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) &&

!PLATFORM(GTK) around soft-linking libxslt.

  • xml/XSLTExtensions.cpp: Ditto.
  • xml/XSLTProcessorLibxslt.cpp: Ditto.
  • xml/XSLTUnicodeSort.cpp: Ditto.
2:20 PM Changeset in webkit [163724] by akling@apple.com
  • 19 edits in trunk/Source

Remove unused ChromeClient::formStateDidChange().
<https://webkit.org/b/128469>

Nobody listens for this callback anymore so remove it and stop
spamming no-op virtual dispatches in forms code.

Reviewed by Anders Carlsson.

  • html/FileInputType.cpp:

(WebCore::FileInputType::setFiles):

  • html/HTMLFormControlElementWithState.cpp:
  • html/HTMLFormControlElementWithState.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::setValue):
(WebCore::HTMLInputElement::setValueFromRenderer):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::updateListBoxSelection):
(WebCore::HTMLSelectElement::selectOption):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::updateValue):
(WebCore::HTMLTextAreaElement::setValueCommon):

  • loader/EmptyClients.h:
  • page/ChromeClient.h:
2:11 PM Changeset in webkit [163723] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: Find evaluates attributes in a case sensitive manner
https://bugs.webkit.org/show_bug.cgi?id=128405

Patch by Chris J. Shull <chrisjshull@gmail.com> on 2014-02-08
Reviewed by Timothy Hatcher.

Source/WebCore:

Changed matchesAttribute to ignore case.

Updated existing test with additional cases:
inspector-protocol/dom/dom-search.html

  • inspector/InspectorNodeFinder.cpp:

(WebCore::InspectorNodeFinder::matchesAttribute):

LayoutTests:

Added checks for searches where capitalization in the attributes did not match the capitalization in the search. Also fleshed out other search types with checks for valid capitalization differences.

  • inspector-protocol/dom/dom-search-expected.txt:
  • inspector-protocol/dom/resources/dom-search-queries.js:
2:05 PM Changeset in webkit [163722] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Remove unused FrameLoaderClient::dispatchWillOpenSocketStream().
<https://webkit.org/b/128472>

Nobody listens for this callback anymore so remove it.

Reviewed by Anders Carlsson.

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::willOpenSocketStream):

  • loader/FrameLoaderClient.h:
1:40 PM Changeset in webkit [163721] by rniwa@webkit.org
  • 8 edits in trunk/Source/WebCore

Split UserTriggered into FireSelectEvent and RevealSelection for selection options
https://bugs.webkit.org/show_bug.cgi?id=128441

Reviewed by Darin Adler.

Split UserTriggered by FireSelectEvent and RevealSelection for selection options.

Also added defaultSetSelectionOptions() to abstract away the default options.

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::respondToUnappliedSpellCorrection):

  • editing/Editor.cpp:

(WebCore::Editor::unappliedEditing):
(WebCore::Editor::reappliedEditing):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::moveTo):
(WebCore::FrameSelection::setSelectionByMouseIfDifferent): UserTriggered | DoNotRevealSelection
is replaced by FireSelectEvent.
(WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance): Check options & FireSelectEvent
instead of options & UserTriggered.
(WebCore::FrameSelection::setSelection): Check options & RevealSelection instead of
options & UserTriggered && !(options & DoNotRevealSelection).
(WebCore::FrameSelection::prepareForDestruction):
(WebCore::FrameSelection::setBase):
(WebCore::FrameSelection::setExtent):
(WebCore::FrameSelection::selectAll):
(WebCore::FrameSelection::wordSelectionContainingCaretSelection):

  • editing/FrameSelection.h:

(WebCore::FrameSelection::defaultSetSelectionOptions): Added.

  • editing/SpellingCorrectionCommand.cpp:

(WebCore::SpellingCorrectionCommand::doApply):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::selectionChanged): Renamed the argument.

  • html/HTMLTextFormControlElement.h:
12:58 PM Changeset in webkit [163720] by mitz@apple.com
  • 1 edit in trunk/Source/ThirdParty/gtest/xcode/gtest.xcodeproj

Added project.xcworkspace to the svn:ignore property of gtest.xcodeproj.

12:10 PM Changeset in webkit [163719] by zandobersek@gmail.com
  • 5 edits in trunk/Source/WebCore

Move TreeScope, IdTargetObserverRegistry to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127276

Reviewed by Andreas Kling.

Replace uses of OwnPtr in the TreeScope and IdTargetObserverRegistry classes with std::unique_ptr.

  • dom/IdTargetObserverRegistry.cpp:

(WebCore::IdTargetObserverRegistry::addObserver):

  • dom/IdTargetObserverRegistry.h:

(WebCore::IdTargetObserverRegistry::IdTargetObserverRegistry):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::destroyTreeScopeData):
(WebCore::TreeScope::addElementById):
(WebCore::TreeScope::addElementByName):
(WebCore::TreeScope::addImageMap):
(WebCore::TreeScope::labelElementForId):

  • dom/TreeScope.h:

(WebCore::TreeScope::shouldCacheLabelsByForAttribute):

12:02 PM Changeset in webkit [163718] by andersca@apple.com
  • 8 edits in trunk/Source/WebCore

Slight CTTE in PingLoader
https://bugs.webkit.org/show_bug.cgi?id=128462

Reviewed by Dan Bernstein.

PingLoader always wants a non-null frame.

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::sendPings):

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::didBlockScript):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::continueAfterPingLoader):

  • loader/PingLoader.cpp:

(WebCore::PingLoader::loadImage):
(WebCore::PingLoader::sendPing):
(WebCore::PingLoader::sendViolationReport):
(WebCore::PingLoader::createPingLoader):
(WebCore::PingLoader::PingLoader):

  • loader/PingLoader.h:
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestImage):

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::reportViolation):

11:58 AM Changeset in webkit [163717] by mitz@apple.com
  • 38 edits in trunk

Remove client-drawn highlights (-webkit-highlight, WebHTMLHighlighter)
https://bugs.webkit.org/show_bug.cgi?id=128456

Reviewed by Anders Carlsson.

Source/WebCore:

Updated fast/css/getComputedStyle and svg/css results.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue): Removed CSSPropertyWebKitHighlight case.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Ditto.

  • css/CSSPropertyNames.in: Removed -webkit-highlight.
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Removed
CSSPropertyWebKitHighlight handler.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty): Removed CSSPropertyWebKitHighlight case.

  • page/Chrome.cpp: Removed customHighlightRect and paintCustomHighlight.
  • page/ChromeClient.h: Ditto.
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint): Removed painting custom highlight.

  • rendering/InlineTextBox.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns): Removed adding overflow for custom
highlights.

  • rendering/RenderBox.cpp: Removed paintCustomHighlight.
  • rendering/RenderBox.h:
  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintReplaced): Removed painting custom highlight.

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::paint): Ditto.

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::paintSnapshot): Ditto.

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::paint): Ditto.

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::paint): Ditto.

  • rendering/RootInlineBox.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout): Removed highlight comparison.

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData): Removed initializer.
(WebCore::StyleRareInheritedData::operator==): Removed highlight comparison.

  • rendering/style/StyleRareInheritedData.h: Removed highlight member variable.

Source/WebInspectorUI:

  • UserInterface/CSSKeywordCompletions.js: Removed -webkit-highlight.

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: Removed customHighlightRect and paintCustomHighlight.
  • WebView/WebHTMLView.mm:

(-[WebHTMLViewPrivate dealloc]): Removed highlighters ivar.
(-[WebHTMLViewPrivate clear]): Ditto.

  • WebView/WebHTMLViewInternal.h: Removed declaration.
  • WebView/WebHTMLViewPrivate.h: Removed WebHTMLHighlighter protocol and method declarations.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp: Removed customHighlightRect and

paintCustomHighlight.

  • WebProcess/WebCoreSupport/WebChromeClient.h:

LayoutTests:

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
10:37 AM Changeset in webkit [163716] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

One more build fix fix.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):

10:35 AM Changeset in webkit [163715] by mitz@apple.com
  • 6 edits in trunk/Source

Source/WebCore: More (and more correct) iOS build fix after r163712.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(AXAttributedStringAppendText):
(-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):

  • page/ios/FrameIOS.mm:

(WebCore::Frame::wordsInCurrentParagraph):

Source/WebKit/mac: iOS build fix after r163712.

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:
10:06 AM Changeset in webkit [163714] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix after r163712

  • page/ios/FrameIOS.mm:

(WebCore::Frame::indexCountOfWordPrecedingSelection):
(WebCore::Frame::wordsInCurrentParagraph):

9:08 AM Changeset in webkit [163713] by zandobersek@gmail.com
  • 12 edits
    18 adds
    19 deletes in trunk/LayoutTests

Convert current MHTML tests into reftests
https://bugs.webkit.org/show_bug.cgi?id=116443

Reviewed by Andreas Kling.

Convert the current set of MHTML tests into reference tests. Reference files are copied from the *_original files
where available (with the *_original files removed) or from the source markup and code that's stored in the archive.
Both the archives and the reference files are adjusted to now dump pixel output instead of text.

  • mhtml/check_domain-expected.html: Added.
  • mhtml/check_domain-expected.txt: Removed.
  • mhtml/check_domain.mht:
  • mhtml/frame_4.html_original: Removed.
  • mhtml/multi_frames.html_original: Removed.
  • mhtml/multi_frames_binary-expected.html: Added.
  • mhtml/multi_frames_binary-expected.txt: Removed.
  • mhtml/multi_frames_binary.mht:
  • mhtml/multi_frames_ie-expected.html: Added.
  • mhtml/multi_frames_ie-expected.txt: Removed.
  • mhtml/multi_frames_ie.mht:
  • mhtml/multi_frames_unmht-expected.html: Added.
  • mhtml/multi_frames_unmht-expected.txt: Removed.
  • mhtml/multi_frames_unmht.mht:
  • mhtml/page_with_css_and_js_ie-expected.html: Copied from LayoutTests/mhtml/page_with_css_and_js.html_original.
  • mhtml/page_with_css_and_js_ie-expected.txt: Removed.
  • mhtml/page_with_css_and_js_ie.mht:
  • mhtml/page_with_css_and_js_unmht-expected.html: Renamed from LayoutTests/mhtml/page_with_css_and_js.html_original.
  • mhtml/page_with_css_and_js_unmht-expected.txt: Removed.
  • mhtml/page_with_css_and_js_unmht.mht:
  • mhtml/page_with_image.html_original: Removed.
  • mhtml/page_with_image_ie-expected.html: Added.
  • mhtml/page_with_image_ie-expected.txt: Removed.
  • mhtml/page_with_image_ie.mht:
  • mhtml/page_with_image_unmht-expected.html: Added.
  • mhtml/page_with_image_unmht-expected.txt: Removed.
  • mhtml/page_with_image_unmht.mht:
  • mhtml/resources/frame_0.html: Renamed from LayoutTests/mhtml/frame_0.html_original.
  • mhtml/resources/frame_1.html: Renamed from LayoutTests/mhtml/frame_1.html_original.
  • mhtml/resources/frame_2.html: Renamed from LayoutTests/mhtml/frame_2.html_original.
  • mhtml/resources/frame_4.html: Added.
  • mhtml/resources/hide_image.css: Added.

(#secondDiv):

  • mhtml/resources/remove_image_script.js: Added.

(onLoad):

  • mhtml/resources/style.css: Copied from LayoutTests/mhtml/shared_buffer_bug.mht.

(h1):

  • mhtml/shared_buffer_bug-expected.html: Added.
  • mhtml/shared_buffer_bug-expected.txt: Removed.
  • mhtml/shared_buffer_bug.mht:
  • mhtml/simple_page_ie-expected.html: Copied from LayoutTests/mhtml/simple_page.html_original.
  • mhtml/simple_page_ie-expected.txt: Removed.
  • mhtml/simple_page_ie.mht:
  • mhtml/simple_page_unmht-expected.html: Renamed from LayoutTests/mhtml/simple_page.html_original.
  • mhtml/simple_page_unmht-expected.txt: Removed.
  • mhtml/simple_page_unmht.mht:
8:32 AM Changeset in webkit [163712] by Darin Adler
  • 51 edits
    2 copies in trunk/Source

Change TextIterator to use StringView, preparing to wean it from deprecatedCharacters
https://bugs.webkit.org/show_bug.cgi?id=128233

Reviewed by Anders Carlsson.

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp: Removed unneeded TextIterator.h include.
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::hasMisspelling): Updated to use StringView for checkSpelling.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetSpelling): Changed to take a StringView.
(AXAttributedStringAppendText): Ditto.
(-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): Pass StringView.

  • editing/Editor.cpp:

(WebCore::Editor::misspelledWordAtCaretOrRange): Pass StringView.
(WebCore::Editor::misspelledSelectionString): Ditto.
(WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.

  • editing/TextCheckingHelper.cpp:

(WebCore::findGrammaticalErrors): Renamed this function. Changed to use StringView.
(WebCore::findMisspellings): Use StringView.
(WebCore::TextCheckingHelper::findFirstMisspelling): Ditto. Also separated out assertions
that were asserting multiple things with &&.
(WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar): Ditto.
(WebCore::TextCheckingHelper::findFirstGrammarDetail): Ditto.
(WebCore::TextCheckingHelper::findFirstBadGrammar): Ditto.
(WebCore::TextCheckingHelper::isUngrammatical): Ditto.
(WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Ditto.
(WebCore::checkTextOfParagraph): Ditto.

  • editing/TextCheckingHelper.h: Made TextCheckingParagraph::text public. Deleted

TextCheckingParagraph::textDeprecatedCharacters. Added comments about additional
TextCheckingParagraph refinements. Changed checkTextOfParagraph to take a client
reference instead of pointer and StringView instead of characters pointer with length.

  • editing/TextIterator.cpp:

(WebCore::TextIterator::appendTextToStringBuilder): Use data members directly,
rather than using functions, since we already checked m_textCharacters for null.
(WebCore::CharacterIterator::string): Use text() instead of characters().
(WebCore::WordAwareIterator::WordAwareIterator): Removed initialization of
m_previousText now that it's a StringView rather than a pointer.
(WebCore::WordAwareIterator::advance): Use TextIterator::text instead of
TextIterator::characters. Also added a FIXME about a fundamental problem
with the implementation of this class!
(WebCore::WordAwareIterator::length): Updated for m_previousText change.
(WebCore::WordAwareIterator::text): Replaced WordAwareIterator::characters with this.
(WebCore::SearchBuffer::append): Changed to take a StringView.
(WebCore::SearchBuffer::prependContext): Ditto.
(WebCore::SearchBuffer::isWordStartMatch): Use StringView.
(WebCore::SearchBuffer::search): Ditto.
(WebCore::findPlainText): Ditto.

  • editing/TextIterator.h: Added TextIterator::text that returns a StringView, and

renamed TextIterator::characters to TextIterator::deprecatedTextIteratorCharacters
(easy to search for in source code). Added SimplifiedBackwardsTextIterator::text
and removed SimplifiedBackwardsTextIterator::characters. Added CharacterIterator::text,
and removed CharacterIterator::characters. Added WordAwareIterator::text and removed
WorkdAwareIterator::characters. Changed WordAwareIterator data members to use StringView.

  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::appendTrailingWhitespace): Use TextIterator::text instead
of TextIterator::characters.

  • editing/VisibleUnits.cpp:

(WebCore::previousBoundary): Updated to use StringView.
(WebCore::nextBoundary): Ditto.
(WebCore::startWordBoundary): Ditto.
(WebCore::startOfWord): Ditto.
(WebCore::endWordBoundary): Ditto.
(WebCore::endOfWord): Fixed formatting.
(WebCore::previousWordPositionBoundary): Updated to use StringView.
(WebCore::previousWordPosition): Fixed formatting and got rid of local variable.
(WebCore::nextWordPositionBoundary): Updated to use StringView.
(WebCore::nextWordPosition): Fixed formatting and got rid of local variable.
(WebCore::inSameLine): Fixed formatting.
(WebCore::isStartOfLine): Ditto.
(WebCore::isEndOfLine): Ditto.
(WebCore::absoluteLineDirectionPointToLocalPointInBlock): Changed to take a reference.
(WebCore::previousLinePosition): Fixed formatting chand changed to pass a reference.
(WebCore::nextLinePosition): Ditto.
(WebCore::startSentenceBoundary): Updated to use StringView and got rid of a local.
(WebCore::startOfSentence): Fixed formatting.
(WebCore::endSentenceBoundary): Updated to use StringView and got rid of a local.
(WebCore::endOfSentence): Fixed formatting.
(WebCore::previousSentencePositionBoundary): Updated to use StringView and got rid of
a local.
(WebCore::previousSentencePosition): Ditto.
(WebCore::nextSentencePositionBoundary): Ditto.
(WebCore::nextSentencePosition): Fixed formatting.
(WebCore::endOfParagraph): Ditto.
(WebCore::inSameParagraph): Ditto.
(WebCore::isStartOfParagraph): Ditto.
(WebCore::isEndOfParagraph): Ditto.
(WebCore::inSameBlock): Ditto.
(WebCore::isStartOfBlock): Ditto.
(WebCore::isEndOfBlock): Ditto.
(WebCore::startOfDocument): Ditto.
(WebCore::endOfDocument): Ditto.
(WebCore::inSameDocument): Ditto.
(WebCore::isStartOfDocument): Ditto.
(WebCore::isEndOfDocument): Ditto.
(WebCore::isEndOfEditableOrNonEditableContent): Ditto.

  • loader/EmptyClients.h: Use StringView.
  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]): Use StringView.

  • platform/text/TextBoundaries.cpp:

(WebCore::endOfFirstWordBoundaryContext): Use StringView and unsigned.
(WebCore::startOfLastWordBoundaryContext): Ditto.

  • platform/text/TextBoundaries.h: Change interfaces to use StringView,

and in some cases, unsigned instead of int. All call sites were better off
with unsigned.

  • platform/text/TextCheckerClient.h: Use StringView.
  • platform/text/mac/TextBoundaries.mm: Changed conditionals to say

USE(APPKIT) instead of PLATFORM(IOS), since that's the real issue.
(WebCore::isSkipCharacter): Tweaked formatting.
(WebCore::isWhitespaceCharacter): Ditto.
(WebCore::isWordDelimitingCharacter): Ditto, also removed local variable.
(WebCore::isSymbolCharacter): Ditto.
(WebCore::tokenizerForString): Ditto.
(WebCore::findSimpleWordBoundary): Use StringView. Also changed to mostly
use unsigned instead of int.
(WebCore::findComplexWordBoundary): Use StringView. Also restructured to
be much more readable, with early returns and such.
(WebCore::findWordBoundary): Use StringView and unsigned.
(WebCore::findEndWordBoundary): Removed redudant copy of the findWordBoundary
function and changed this to just call findWordBoundary. The reason this
function exists is to optimize this case for some non-Mac, non-iOS platforms.
We can always do that for Mac and/or iOS later if we like.
(WebCore::findNextWordFromIndex): Use StringView. Also use wordBreakIterator
instead of using UBreakIterator directly so we get a cached iterator instead
of creating and destroying a new one each time this function is called.

  • bindings/objc/DOMUIKitExtensions.mm: Removed unneeded includes.
  • dom/Element.cpp: Ditto.
  • dom/PositionIterator.cpp: Ditto.
  • editing/ApplyBlockElementCommand.cpp: Ditto.
  • editing/IndentOutdentCommand.cpp: Ditto.
  • editing/InsertListCommand.cpp: Ditto.
  • editing/markup.cpp: Ditto.
  • html/HTMLElement.cpp: Ditto.
  • html/HTMLTextAreaElement.cpp: Ditto.
  • page/Frame.cpp: Ditto.
  • rendering/RenderTextControl.cpp: Ditto.

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::checkSpellingOfString): Use StringView.
(WebCore::EditorClientEfl::checkGrammarOfString): Ditto.

  • WebCoreSupport/EditorClientEfl.h: Ditto.

Source/WebKit/gtk:

  • WebCoreSupport/TextCheckerClientGtk.cpp:

(WebKit::TextCheckerClientGtk::checkSpellingOfString): Use StringView.
(WebKit::TextCheckerClientGtk::checkGrammarOfString): Ditto.

  • WebCoreSupport/TextCheckerClientGtk.h: Ditto.

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.h: Made most data members private. Moved inlines

for iOS out of the class definition. Fixed formatting. Added missing virtual keyword.
Changed interfaces to use StringView.

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::checkTextOfParagraph): Use the new StringView::createNSStringWithoutCopying
function instead of a similar function that was local in this file.
(WebEditorClient::ignoreWordInSpellDocument): Tweaked formatting.
(WebEditorClient::checkSpellingOfString): Changed to take a StringView.
(WebEditorClient::checkGrammarOfString): Ditto.

  • WebView/WebTextIterator.mm:

(-[WebTextIterator currentTextPointer]): Call TextIterator::deprecatedTextIteratorCharacters.
(-[WebTextIterator currentText]): Convert a the text to an NSString with TextIterator::text
instead of with TextIterator::characters/length.

Source/WebKit/win:

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::checkSpellingOfString): Use StringView.
(WebEditorClient::checkGrammarOfString): Ditto.

  • WebCoreSupport/WebEditorClient.h: Ditto.

Source/WebKit/wince:

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::checkSpellingOfString): Use StringView.
(WebKit::EditorClientWinCE::checkGrammarOfString): Ditto.

  • WebCoreSupport/EditorClientWinCE.h: Ditto.

Source/WebKit2:

  • WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:

(-[WKDOMTextIterator currentTextPointer]): Call TextIterator::deprecatedTextIteratorCharacters.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::checkSpellingOfString): Use StringView.
(WebKit::WebEditorClient::checkGrammarOfString): Ditto.

  • WebProcess/WebCoreSupport/WebEditorClient.h: Ditto.

Source/WTF:

  • WTF.xcodeproj/project.pbxproj: Added new source files.
  • wtf/text/StringView.h: Added operator[], createCFStringWithoutCopying, and

createNSStringWithoutCopying.

  • wtf/text/cf/StringViewCF.cpp:

(WTF::StringView::createCFStringWithoutCopying): Added.

  • wtf/text/mac/StringViewObjC.mm:

(WTF::StringView::createNSString): Added.
(WTF::StringView::createNSStringWithoutCopying): Added.

8:14 AM Changeset in webkit [163711] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Add stdlib include file to fix ImageDiff build with libc++
https://bugs.webkit.org/show_bug.cgi?id=128454

Patch by Rajaram Gaunker <zimbabao@gmail.com> on 2014-02-08
Reviewed by Darin Adler.

  • ImageDiff/gtk/ImageDiff.cpp:
2:33 AM Changeset in webkit [163710] by mrowe@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

<https://webkit.org/b/128452> Don't duplicate the list of input files for postprocess-headers.sh

Reviewed by Dan Bernstein.

  • postprocess-headers.sh: Pull the list of headers to process out of the environment.
2:03 AM Changeset in webkit [163709] by mrowe@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix the iOS build.

  • API/WebKitAvailability.h: Skip the workarounds specific to OS X when we're building for iOS.
1:26 AM Changeset in webkit [163708] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Build break in WebKitWebViewBase.cpp::webkitWebViewBaseCreateWebPage
https://bugs.webkit.org/show_bug.cgi?id=128449

Patch by Piotr Grad <p.grad@samsung.com> on 2014-02-08
Reviewed by Carlos Garcia Campos.

Parameter passed to context->createWebPage was inproper.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseCreateWebPage):

1:01 AM Changeset in webkit [163707] by mrowe@apple.com
  • 5 edits
    1 add in trunk/Source/JavaScriptCore

<https://webkit.org/b/128448> Fix use of availability macros on recently-added APIs

Reviewed by Dan Bernstein.

  • API/JSContext.h: Remove some #ifs.
  • API/JSManagedValue.h: Ditto.
  • API/WebKitAvailability.h: #define the macros that availability macros mentioning

newer OS X versions would expand to when building on older OS versions.

  • JavaScriptCore.xcodeproj/project.pbxproj: Call the new postprocess-headers.sh.
  • postprocess-headers.sh: Extracted from the Xcode project. Updated to remove content

from headers based on the MAC_OS_X_VERSION_MIN_REQUIRED macro, and to
process WebKitAvailability.h.

12:53 AM Changeset in webkit [163706] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Remove two unused function declarations.

Scrub "highQualityRepaintTimerFired" declarations from RenderImage
and RenderBoxModelObject since they're not actually defined.

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderImage.h:
12:50 AM Changeset in webkit [163705] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

CTTE: SVGTRefTargetEventListener is always owned by SVGTRefElement.
<https://webkit.org/b/128432>

Tighten up the relationship between SVGTRefElement and its internal
event listener helper by storing the listener in a Ref, and making
the listeners backpointer to the element be a reference.

Reviewed by Anders Carlsson.

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefTargetEventListener::create):
(WebCore::SVGTRefTargetEventListener::SVGTRefTargetEventListener):
(WebCore::SVGTRefTargetEventListener::operator==):
(WebCore::SVGTRefTargetEventListener::handleEvent):
(WebCore::SVGTRefElement::SVGTRefElement):

  • svg/SVGTRefElement.h:
12:48 AM Changeset in webkit [163704] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Devirtualize RenderBlockFlowRareData.
<https://webkit.org/b/128427>

This class had a virtual destructor for no reason. Removing it
shrinks RenderBlockFlowRareData by 8 bytes.

Reviewed by Anders Carlsson.

  • rendering/RenderBlockFlow.h:

(WebCore::RenderBlockFlow::RenderBlockFlowRareData::~RenderBlockFlowRareData):

12:45 AM Changeset in webkit [163703] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Use renderer iterators in two more places.
<https://webkit.org/b/128371>

Reviewed by Antti Koivisto.

  • dom/Position.cpp:

(WebCore::Position::primaryDirection):

Use lineageOfType instead of walking the parent chain.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::insertOnlyThisLayer):

Use childrenOfType instead of walking the children.

12:42 AM Changeset in webkit [163702] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

Font size-related preference values should be CGFloats backed by doubles
https://bugs.webkit.org/show_bug.cgi?id=128445

Reviewed by Filip Pizlo.

  • Shared/WebPreferencesStore.h: Changed minimumFontSize, minimumLogicalFontSize,

defaultFontSize, and defaultFixedFontSize into double-value preferences.

  • UIProcess/API/Cocoa/WKPreferences.h: Changed minimumFontSize into CGFloat.
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences minimumFontSize]): Changed return type.
(-[WKPreferences setMinimumFontSize:]): Changed parameter type.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Changed to use double getters.

12:36 AM Changeset in webkit [163701] by akling@apple.com
  • 5 edits in trunk

Remove unused ENABLE(REPAINT_THROTTLING) flag.
<https://webkit.org/b/128329>

Reviewed by Antti Koivisto.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WTF:

  • wtf/FeatureDefines.h:
12:27 AM Changeset in webkit [163700] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

JSLock should not "restore" VM stack values if it did not re-grab locks.
<https://webkit.org/b/128447>

Reviewed by Geoffrey Garen.

In the existing code, if DropAllLocks is instantiate with DontAlwaysDropLocks
in a thread that does not own the JSLock, then a bug will manifest where:

  1. The DropAllLocks constructor will save the VM's stackPointerAtEntry, lastStackTop, and reservedZoneSize even though it will not drop the JSLock.
  2. The DropAllLocks destructor will restore those 3 values to the VM even though the JSLock will not grab its internal lock.

The former only causes busy work but does not impact correctness. The latter
however, will corrupt those 3 VM values which belong to the thread that
actually owns the JSLock.

The fix is to only save the values when the JSLock will actually drop its
internal lock, and only restore the values if it did re-grab the internal lock.

  • runtime/JSLock.cpp:

(JSC::JSLock::dropAllLocks):
(JSC::JSLock::dropAllLocksUnconditionally):
(JSC::JSLock::grabAllLocks):
(JSC::JSLock::DropAllLocks::DropAllLocks):

  • Moved the saving of VM stack values to dropAllLocks() and dropAllLocksUnconditionally().

(JSC::JSLock::DropAllLocks::~DropAllLocks):

  • Moved the restoring of VM stack values to grabAllLocks().
12:26 AM Changeset in webkit [163699] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Minibrowser: Matched words of a searched text are not highlighted after reopening search bar
https://bugs.webkit.org/show_bug.cgi?id=128380

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-02-08
Reviewed by Carlos Garcia Campos.

When open the search bar, perform last search if there is any.

  • MiniBrowser/gtk/BrowserSearchBar.c:

(browser_search_bar_open):

12:25 AM Changeset in webkit [163698] by commit-queue@webkit.org
  • 6 edits in trunk

[GTK] Make process model names properly meaningful
https://bugs.webkit.org/show_bug.cgi?id=128389

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

The name WEBKIT_PROCESS_MODEL_ONE_SECONDARY_PROCESS_PER_WEB_VIEW
is misleading because there are situations in which web views may
share the same web process even when multi-process mode is enabled;
for example when opening a related view and both interact using JS.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_set_process_model):
(webkit_web_context_get_process_model):
Update names of WebKitProcessModel enum values.

  • UIProcess/API/gtk/WebKitWebContext.h:

Ditto.

Tools:

  • MiniBrowser/gtk/main.c:

(main):
Update usage of WebKitProcessModel enum values.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:

(beforeAll):
Ditto.

12:24 AM Changeset in webkit [163697] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] build-webkit script always generate-gtk-doc even if '--disable-gtk-doc' param is passed
https://bugs.webkit.org/show_bug.cgi?id=128376

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-02-08
Reviewed by Carlos Garcia Campos.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject):

12:21 AM Changeset in webkit [163696] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Build break in WebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=128446

Patch by Piotr Grad <p.grad@samsung.com> on 2014-02-08
Reviewed by Ryosuke Niwa.

Argument for WebPreferences::create was missing

  • UIProcess/API/gtk/WebKitSettings.cpp:

(_WebKitSettingsPrivate::_WebKitSettingsPrivate):

Feb 7, 2014:

10:56 PM Changeset in webkit [163695] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Don't throw away code if there is code on the worklists
https://bugs.webkit.org/show_bug.cgi?id=128443

Reviewed by Joseph Pecoraro.

If we throw away compiled code and there is code currently being JITed then the JIT
will get confused after it resumes: it will see a code block that had claimed to belong
to an executable except that it doesn't belong to any executables anymore.

  • dfg/DFGWorklist.h:

(JSC::DFG::Worklist::isActive):

  • heap/Heap.cpp:

(JSC::Heap::deleteAllCompiledCode):

9:59 PM Changeset in webkit [163694] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed EFL WebKit2 build fix after r163671.

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::WebView): Use WebPageConfiguration in creating WebPage.

9:33 PM Changeset in webkit [163693] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

[ASan] Use new/delete in PODFreeListArena
<http://webkit.org/b/128437>

Reviewed by Oliver Hunt.

  • platform/PODFreeListArena.h:

(WebCore::PODFreeListArena::allocateObject): Use new when
ADDRESS_SANITIZER is defined.
(WebCore::PODFreeListArena::freeObject): Use delete when
ADDRESS_SANITIZER is defined.

9:27 PM Changeset in webkit [163692] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Merge updateSelectionCachesIfSelectionIsInsideTextFormControl into setSelectionWithoutUpdatingAppearance
https://bugs.webkit.org/show_bug.cgi?id=128439

Reviewed by Anders Carlsson.

FrameSelection::selectAll had a superfluous call to updateSelectionCachesIfSelectionIsInsideTextFormControl
because it wasn't setting UserTriggered option to avoid revealing selection.

Call setSelection with UserTriggered and recently added DoNotRevealSelection option and merge
updateSelectionCachesIfSelectionIsInsideTextFormControl into setSelectionWithoutUpdatingAppearance.

Also rename local variables in setSelectionWithoutUpdatingAppearance, newSelection to
newSelectionPossiblyWithoutDirection and s to newSelection so that they're self explanatory.

In addition, we now update the input element's selection caches before calling
selectFrameElementInParentIfFullySelected but this should be fine because selection cannot simultaneously
select the entire document and be inside a text form control.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance):
(WebCore::FrameSelection::selectAll):

9:06 PM Changeset in webkit [163691] by fpizlo@apple.com
  • 21 edits in trunk/Source/JavaScriptCore

GC should safepoint the DFG worklist in a smarter way rather than just waiting for everything to complete
https://bugs.webkit.org/show_bug.cgi?id=128297

Reviewed by Oliver Hunt.

This makes DFG worklist threads have a rightToRun lock that gives them the ability to
be safepointed by the GC in much the same way as you'd expect from a fully
multithreaded VM.

The idea is that the worklist threads's roots are the DFG::Plan. They only touch those
roots when holding the rightToRun lock. They currently grab that lock to run the
compiler, but relinquish it when accessing - and waiting on - the worklist.

  • bytecode/CodeBlock.h:

(JSC::CodeBlockSet::mark):

  • dfg/DFGCompilationKey.cpp:

(JSC::DFG::CompilationKey::visitChildren):

  • dfg/DFGCompilationKey.h:
  • dfg/DFGDesiredStructureChains.cpp:

(JSC::DFG::DesiredStructureChains::visitChildren):

  • dfg/DFGDesiredStructureChains.h:
  • dfg/DFGDesiredTransitions.cpp:

(JSC::DFG::DesiredTransition::visitChildren):
(JSC::DFG::DesiredTransitions::visitChildren):

  • dfg/DFGDesiredTransitions.h:
  • dfg/DFGDesiredWeakReferences.cpp:

(JSC::DFG::DesiredWeakReferences::visitChildren):

  • dfg/DFGDesiredWeakReferences.h:
  • dfg/DFGDesiredWriteBarriers.cpp:

(JSC::DFG::DesiredWriteBarrier::visitChildren):
(JSC::DFG::DesiredWriteBarriers::visitChildren):

  • dfg/DFGDesiredWriteBarriers.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::visitChildren):

  • dfg/DFGPlan.h:
  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::finishCreation):
(JSC::DFG::Worklist::suspendAllThreads):
(JSC::DFG::Worklist::resumeAllThreads):
(JSC::DFG::Worklist::visitChildren):
(JSC::DFG::Worklist::runThread):
(JSC::DFG::Worklist::threadFunction):

  • dfg/DFGWorklist.h:

(JSC::DFG::numberOfWorklists):
(JSC::DFG::worklistForIndexOrNull):

  • heap/CodeBlockSet.h:
  • heap/Heap.cpp:

(JSC::Heap::markRoots):
(JSC::Heap::collect):

  • runtime/IntendedStructureChain.cpp:

(JSC::IntendedStructureChain::visitChildren):

  • runtime/IntendedStructureChain.h:
  • runtime/VM.cpp:

(JSC::VM::~VM):
(JSC::VM::prepareToDiscardCode):

7:54 PM Changeset in webkit [163690] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

EFL build fix attempt after r163662.

  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::encodeIDBKey):

7:50 PM Changeset in webkit [163689] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

FrameSelection's destructor shouldn't notify accessibility
https://bugs.webkit.org/show_bug.cgi?id=128421

Reviewed by Benjamin Poulain.

Extracted setSelectionWithoutUpdatingAppearance out of setSelection and called it in prepareForDestruction
instead of setting DoNotUpdateAppearance option. This new function doesn't reveal selection or notify
accessibility code in addition to not updating appearance.

Note that all implementations of notifyAccessibilityForSelectionChange in FrameSelectionAtk.cpp and
FrameSelectionMac.mm exit early when the selection type is not caret or either start or end is null,
which is already the case inside FrameSelection's destructor. In addition, revealSelection is never called
when selection change was not triggered by user so there should be no behavioral change from this patch.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance):
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::prepareForDestruction):

  • editing/FrameSelection.h:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange): Added the trivial implementation in the case
accessibility is disabled to tidy up call sites.

7:11 PM Changeset in webkit [163688] by rniwa@webkit.org
  • 61 adds in trunk/Websites/perf.webkit.org

Merge database-common.js and utility.js into run-tests.js.

Reviewed by Matthew Hanson.

Now that run-tests is the only node.js script, merged database-common.js and utility.js into it.
Also moved init-database.sql out of the database directory and removed the directory entirely.

  • database: Removed.
  • database/database-common.js: Removed.
  • database/utility.js: Removed.
  • init-database.sql: Moved from database/init-database.sql.
  • run-tests.js:

(connect): Moved from database-common.js.
(pathToDatabseSQL): Extracted from pathToLocalScript.
(pathToTests): Moved from database-common.js.
(config): Ditto.
(TaskQueue): Ditto.
(SerializedTaskQueue): Ditto.
(main):
(initializeDatabase):
(TestEnvironment.it):
(TestEnvironment.queryAndFetchAll):
(sendHttpRequest):

7:11 PM Changeset in webkit [163687] by Martin Robinson
  • 2 edits in trunk/Source/WebCore

Build fix for the GTK+ CMake build

  • PlatformGTK.cmake: VTTCue.idl was unintentionally added to the list of GObject DOM bindings

output files. Remove it.

7:01 PM Changeset in webkit [163686] by krit@webkit.org
  • 4 edits in trunk

Per CSSOM, computed rect() function values must be comma separated
https://bugs.webkit.org/show_bug.cgi?id=128401

Reviewed by Simon Fraser.

Updated tests.

  • css/Rect.h:

(WebCore::Rect::generateCSSString):

6:52 PM Changeset in webkit [163685] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unify JSLock implementation for iOS and non-iOS ports.
<https://webkit.org/b/128409>

Reviewed by Michael Saboff.

The iOS and non-iOS implementations of dropAllLocks(),
dropAllLocksUnconditionally(), and grabAllLocks() effectively do the
same work. The main difference is that the iOS implementation acquires
the JSLock spin lock in the DropAllLocks class while the other ports
acquire it when it calls JSLock::lock() and unlock().

The other difference is that the iOS implementation will only increment
m_locksDropDepth if it actually drops locks, whereas other ports will
increment it unconditionally. Analogously, iOS decrements the depth only
when needed while other ports will decrement it unconditionally when
re-grabbing locks.

We can unify the 2 implementations by having both use the iOS
implementation for a start.

  • runtime/JSLock.cpp:

(JSC::JSLock::dropAllLocks):
(JSC::JSLock::dropAllLocksUnconditionally):
(JSC::JSLock::grabAllLocks):
(JSC::JSLock::DropAllLocks::DropAllLocks):
(JSC::JSLock::DropAllLocks::~DropAllLocks):

6:51 PM Changeset in webkit [163684] by barraclough@apple.com
  • 4 edits in trunk/Source/WebKit2

Add better comments to code that boosts the NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=128431

Rubber stamped by Tim Horton

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(WebKit::XPCServiceEventHandler):

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler):

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService):

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

Build fix.

  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView initWithFrame:configuration:]):

6:39 PM Changeset in webkit [163682] by zoltan@webkit.org
  • 2 edits
    2 adds in trunk/PerformanceTests

[CSS Shapes] Add initial performance tests for inset shape
https://bugs.webkit.org/show_bug.cgi?id=128378

Reviewed by Ryosuke Niwa.

  • Layout/Shapes/ShapeOutsideContentBox.html: Move js to shapes.js.
  • Layout/Shapes/ShapeOutsideInset.html: Added.
  • Layout/Shapes/resources/shapes.js: Added.

(.):

6:38 PM Changeset in webkit [163681] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Pass the preferences through from the WKWebViewConfiguration object
https://bugs.webkit.org/show_bug.cgi?id=128430

Reviewed by Tim Horton.

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

(-[WKPreferences init]):
Don't return nil if [super init] returns a valid object.

(-[WKPreferences minimumFontSize]):
(-[WKPreferences setMinimumFontSize:]):
Change this property to be unsigned.

  • UIProcess/API/Cocoa/WKPreferencesInternal.h:

Use @package.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):
Set up a WebKit::WebPageConfiguration and use the new -[WKView initWithFrame:context:configuration:] method.

  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView initWithFrame:configuration:]):
Set the preferences.

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:context:configuration:]):
Add a new initializer that takes a WebContext and a WebPageConfiguration.

(-[WKView _registerDraggedTypes]):
This shouldn't be in the private category.

(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
Call the new initializer.

  • UIProcess/API/mac/WKViewInternal.h:
6:28 PM Changeset in webkit [163680] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the WebKit2 build after r163671.

  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):

6:25 PM Changeset in webkit [163679] by barraclough@apple.com
  • 16 edits in trunk

Remove isInitialState flag from Page::setViewState
https://bugs.webkit.org/show_bug.cgi?id=128428

Reviewed by Sam Weinig.

Source/WebCore:

  • WebCore.exp.in:
    • removed isInitialState.
  • page/Page.cpp:

(WebCore::Page::setViewState):

  • removed isInitialState.

(WebCore::Page::setIsVisible):

  • removed isInitialState.

(WebCore::Page::setIsVisibleInternal):

  • removed isInitialState.
  • page/Page.h:
    • removed isInitialState.

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(ewk_view_visibility_state_set):

  • don't pass isInitialState to setViewState.

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::setPageVisibility):

  • don't pass isInitialState to setViewState.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _updateVisibilityState]):
(-[WebView _setIsVisible:]):
(-[WebView _setVisibilityState:isInitialState:]):
(-[WebView _windowWillOrderOnScreen:]):
(-[WebView _windowWillOrderOffScreen:]):

  • don't pass isInitialState to setViewState.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • don't pass isInitialState to setViewState.

(WebKit::WebPage::reinitializeWebPage):

  • if the viewState changes this should fire a visibility event.

(WebKit::WebPage::setViewState):

  • merged with setViewStateInternal.
  • WebProcess/WebPage/WebPage.h:
    • removed setViewStateInternal.

LayoutTests:

  • fast/events/page-visibility-iframe-delete-test.html:
  • fast/events/page-visibility-iframe-move-test.html:
    • resetPageVisibility will now cause additional visibiliy events to fire; clean up the event listeners to avoid this affecting the test results.
6:23 PM Changeset in webkit [163678] by Lucas Forschler
  • 13 edits in tags/Safari-538.16.3

Merged r163674.

6:19 PM Changeset in webkit [163677] by Simon Fraser
  • 6 edits in trunk/Source

Encode requestedScrollPosition on ScrollingStateScrollingNodes to send to the UI process
https://bugs.webkit.org/show_bug.cgi?id=128416

Source/WebCore:

Reviewed by Tim Horton.

Change requestedScrollPosition() to be a FloatPoint, and export
ScrollingStateScrollingNode::setRequestedScrollPosition(WebCore::FloatPoint const&, bool)
for WK2.

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):

  • page/scrolling/ScrollingStateScrollingNode.h:

Source/WebKit2:

Reviewed by Tim Horton.

Encode and decode requestedScrollPosition() and requestedScrollPositionRepresentsProgrammaticScroll(),
which can't use the macros because the setter takes both arguments.

The UI process needs this to notice programmatic scrolls.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):

6:19 PM Changeset in webkit [163676] by Simon Fraser
  • 7 edits in trunk/Source/WebKit2

Add typesafe casts for DrawingAreaProxy classes
https://bugs.webkit.org/show_bug.cgi?id=128419

Reviewed by Andreas Kling.

Add typesafe casts, and use one in RemoteScrollingCoordinatorProxy::layerTreeHost().

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::contentsSizeChanged):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
6:12 PM Changeset in webkit [163675] by Beth Dakin
  • 12 edits in trunk

Should get rid of TileController's CoverageForSlowScrolling mode
https://bugs.webkit.org/show_bug.cgi?id=128339

Reviewed by Simon Fraser.

Source/WebCore:

This patch gets rid of CoverageForSlowScrolling in the TileController. It also
makes sure that margin tiles are properly invalidated on pages with slow repaint
objects that cause slow scrolling.

When we invalidate because of slow scrolling, don’t clip the update rect to the
layer bounds.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsSlowPath):

Call new RenderObject paint function repaintSlowRepaintObject() instead of the
more-generic repaint().
(WebCore::FrameView::repaintSlowRepaintObjects):

Remove CoverageForSlowScrolling.

  • platform/graphics/TiledBacking.h:
  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::tilesWouldChangeForVisibleRect):
(WebCore::TileController::computeTileCoverageRect):
(WebCore::TileController::revalidateTiles):

  • rendering/RenderLayerBacking.cpp:

(WebCore::computeTileCoverage):

Handle repainting a slow repaint object. Don’t clip when we shouldn’t, use the
RenderView’s backgroundRect as a repaintRect when this is the root background
since that will take the extended background rect into consideration.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintSlowRepaintObject):

  • rendering/RenderObject.h:

LayoutTests:

Slow scrolling no longer creates tiles of a different size.

  • platform/mac-wk2/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt:
  • platform/mac-wk2/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
  • platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
6:11 PM Changeset in webkit [163674] by fpizlo@apple.com
  • 13 edits in trunk

More FTL build scaffolding
https://bugs.webkit.org/show_bug.cgi?id=128330

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:
  • llvm/library/LLVMAnchor.cpp:

Source/WebCore:

The FTL already has tests.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/Platform.h:

Tools:

  • Scripts/copy-webkitlibraries-to-product-directory:
6:02 PM Changeset in webkit [163673] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

Move allowsBackForwardNavigationGestures back to private because apparently our build systems are broken.

  • UIProcess/API/Cocoa/WKView.h:
  • UIProcess/API/Cocoa/WKViewPrivate.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView setAllowsBackForwardNavigationGestures:]):
(-[WKView allowsBackForwardNavigationGestures]):

6:01 PM Changeset in webkit [163672] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

iOS port needs to clear VM::stackPointerAtVMEntry when it drops locks.
<https://webkit.org/b/128424>

Reviewed by Geoffrey Garen.

The iOS code path for dropping locks differ from the non-iOS code path
in that it (iOS) does not clear m_vm->stackPointerAtVMEntry nor reset the
VM stack limit. This is now fixed by copying that snippit from
JSLock::unlock().

  • runtime/JSLock.cpp:

(JSC::JSLock::dropAllLocks):
(JSC::JSLock::dropAllLocksUnconditionally):

5:57 PM Changeset in webkit [163671] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Simplify web page creation
https://bugs.webkit.org/show_bug.cgi?id=128425

Reviewed by Andreas Kling.

Add a WebPageConfiguration class and stick the page group, preferences, session etc there
instead of adding more and more parameters to the WebPageProxy constructor.

Make WebContext::createWebPage fill in the missing pieces in the WebPageConfiguration object.

  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView initWithFrame:configuration:]):
(-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createWebPage):

  • UIProcess/WebContext.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::create):
(WebKit::WebPageProxy::WebPageProxy):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::createWebPage):

  • UIProcess/WebProcessProxy.h:
5:49 PM Changeset in webkit [163670] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Touch Minibrowser for a hopeful build fix.

  • MiniBrowser/mac/WK2BrowserWindowController.m:
5:25 PM Changeset in webkit [163669] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix. Wrong section of the file.

  • UIProcess/API/mac/WKView.mm:

(-[WKView setAllowsBackForwardNavigationGestures:]):
(-[WKView allowsBackForwardNavigationGestures]):

5:10 PM Changeset in webkit [163668] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] The WebPageProxy's copy of pageScaleFactor is not update when the scale is changed from the viewport configuration
https://bugs.webkit.org/show_bug.cgi?id=128415

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-07
Reviewed by Simon Fraser.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportConfigurationChanged):
The scale needs to be updated through WebPage::scalePage().

5:09 PM Changeset in webkit [163667] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Remove some unused functions from SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=128407

Reviewed by Anders Carlsson.

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::undefinedValue):
(WebCore::SerializedScriptValue::nullValue):

  • bindings/js/SerializedScriptValue.h:
4:58 PM Changeset in webkit [163666] by timothy_horton@apple.com
  • 18 edits
    1 add in trunk/Source/WebKit2

WebKit2 View Gestures (Swipe): Support for iOS
https://bugs.webkit.org/show_bug.cgi?id=128363
<rdar://problem/15194194>

Reviewed by Anders Carlsson.

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::renderTreeSize):
(WebKit::RemoteLayerTreeTransaction::setRenderTreeSize):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
Send the render tree size along with remote layer tree commits,
so that we can act upon it (to hide snapshots) in the UI process
in sync with layer commits.

  • UIProcess/API/Cocoa/WKViewPrivate.h:

We want allowsBackForwardNavigationGestures for both platforms.

  • UIProcess/API/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::takeViewSnapshot):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView _takeViewSnapshot]):

  • UIProcess/API/ios/WKContentViewInternal.h:

Plumb snapshotting through to WKViewIOS.

  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView setAllowsBackForwardNavigationGestures:]):
(-[WKView allowsBackForwardNavigationGestures]):
Create/destroy the gesture controller when we turn on/off back-forward swipe.
Tell WebPageProxy to save snapshots if swipe is enabled.

(-[WKView contentView:didCommitLayerTree:]):
Forward the current transaction's render tree size to ViewGestureController.

(-[WKView takeViewSnapshotForContentView:]):
Snapshot the view. This is not the best SPI to use, we should consider
using one of those which returns an IOSurface and plumbing it through
to ViewSnapshotStore, but all of our PageClient abstraction makes that annoying.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::recordNavigationSnapshot):
Record snapshots on iOS as well.

  • UIProcess/ios/ViewGestureControllerIOS.mm: Added.

(-[WKSwipeInteractiveTransitionDelegate initWithViewGestureController:WebKit::swipingView:]):
(-[WKSwipeInteractiveTransitionDelegate WebKit::ViewGestureController::directionForTransition:]):
(-[WKSwipeInteractiveTransitionDelegate startInteractiveTransition:]):
(-[WKSwipeInteractiveTransitionDelegate shouldBeginInteractiveTransition:]):
(-[WKSwipeInteractiveTransitionDelegate interactiveTransition:gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKSwipeInteractiveTransitionDelegate interactiveTransition:gestureRecognizer:shouldReceiveTouch:]):
(-[WKSwipeInteractiveTransitionDelegate gestureRecognizerForInteractiveTransition:WithTarget:action:]):
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::~ViewGestureController):
(WebKit::ViewGestureController::installSwipeHandler):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::canSwipeInDirection):
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::setRenderTreeSize):
(WebKit::ViewGestureController::swipeSnapshotWatchdogTimerFired):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureController.h:

Add iOS-specific methods, and don't include all of the Mac-specific code.
We can move towards sharing more logic in the future.

  • UIProcess/mac/ViewGestureController.messages.in:
  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::ViewGestureController):

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

(WebKit::ViewSnapshotStore::recordSnapshot):
(WebKit::ViewSnapshotStore::snapshotAndRenderTreeSize):
Make ViewSnapshotStore build/work without IOSurface.

  • WebKit2.xcodeproj/project.pbxproj:
4:55 PM Changeset in webkit [163665] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Removed superflous JSLock::entryStackPointer field.
<https://webkit.org/b/128413>

Reviewed by Geoffrey Garen.

  • runtime/JSLock.cpp:

(JSC::JSLock::lock):

  • runtime/JSLock.h:
4:46 PM Changeset in webkit [163664] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Revert workaround committed in http://trac.webkit.org/r163595.
<https://webkit.org/b/128408>

Reviewed by Geoffrey Garen.

Now that we have fixed the bugs in JSLock's stack limit adjusments
in https://bugs.webkit.org/show_bug.cgi?id=128406, we can revert the
workaround in r163595.

  • API/JSContextRef.cpp:

(JSContextGroupCreate):
(JSGlobalContextCreateInGroup):

  • API/tests/testapi.js:
  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::updateStackLimitWithReservedZoneSize):

  • runtime/VM.h:
4:37 PM Changeset in webkit [163663] by andersca@apple.com
  • 6 edits
    1 copy in trunk/Source/WebKit2

Implement more of WKPreferences
https://bugs.webkit.org/show_bug.cgi?id=128411

Reviewed by Tim Horton.

Give WKPreferences an underlying WebKit::WebPreferences object, add a minimumFontSize preference
and make sure that WKWebView's initializer creates a WKPreferences object if the configuration doesn't specify one.

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

(-[WKPreferences init]):
(-[WKPreferences minimumFontSize]):
(-[WKPreferences setMinimumFontSize:]):

  • UIProcess/API/Cocoa/WKPreferencesInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKPreferences.mm.
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/WebPageProxy.h:
  • WebKit2.xcodeproj/project.pbxproj:
4:30 PM Changeset in webkit [163662] by beidson@apple.com
  • 21 edits in trunk

IDB: Some Mozilla cursor mutation tests fail
<rdar://problem/16011680> and https://bugs.webkit.org/show_bug.cgi?id=128374

Reviewed by Sam Weinig.

Source/WebCore:

Tested by:
storage/indexeddb/mozilla/cursor-mutation-objectstore-only.html
storage/indexeddb/mozilla/cursor-mutation.html

The previous comment about LevelDB was wrong.
Apparently calling onSuccess() with a null SharedBuffer means the cursor reached the end.
Update to distinguish between an error and reaching the end:

  • Modules/indexeddb/IDBCursorBackendOperations.cpp:

(WebCore::CursorAdvanceOperation::perform):
(WebCore::CursorIterationOperation::perform):

Add a new IDBKey type - Maximum - To be used in comparisons between keys.
This will allow the DatabaseProcess to operate on the range of all keys:

  • Modules/indexeddb/IDBKey.cpp:

(WebCore::IDBKey::compare):

  • Modules/indexeddb/IDBKey.h:
  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::IDBKeyData):
(WebCore::IDBKeyData::maybeCreateIDBKey):
(WebCore::IDBKeyData::isolatedCopy):
(WebCore::IDBKeyData::encode):
(WebCore::IDBKeyData::decode):
(WebCore::IDBKeyData::compare):
(WebCore::IDBKeyData::loggingString):

  • Modules/indexeddb/IDBKeyData.h:

(WebCore::IDBKeyData::minimum):
(WebCore::IDBKeyData::maximum):

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::idbKeyToJSValue):

Remove an unused callback:

  • Modules/indexeddb/IDBCallbacks.h:
  • Modules/indexeddb/IDBRequest.h:

Source/WebKit2:

After a SQLite statement is prepared, stepping it will not pick up any subsequent changes
to the object store.

By keeping track of the current record we’re looking at in the object store and being told
that the object store changed its contents, we can reset the statement to pick up where it
left off but with the new object store contents.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::putRecordInBackingStore): Tell the backing store to notify

its cursors that the object store changed its records.

(WebKit::UniqueIDBDatabase::deleteRangeInBackingStore): Ditto.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::notifyCursorsOfChanges): Tell the transaction

to notify its cursors that the object store changed its records.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::notifyCursorsOfChanges): Tell the relevant cursors that their

object store changed its records.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::SQLiteIDBCursor):
(WebKit::getIndexStatement): All statements now have a lower and upper range. By default we bind

IDBKey::Minimum to the lower range and IDBKey::Maximum to the upper range.

(WebKit::getObjectStoreStatement): Ditto.
(WebKit::SQLiteIDBCursor::establishStatement):
(WebKit::SQLiteIDBCursor::createSQLiteStatement):
(WebKit::SQLiteIDBCursor::objectStoreRecordsChanged): Set the flag indicating the statement

needs to be reset and rebound.

(WebKit::SQLiteIDBCursor::resetAndRebindStatement):
(WebKit::SQLiteIDBCursor::bindArguments): Factored out to be shared between statement prepare()

and statement reset().

(WebKit::SQLiteIDBCursor::advance):
(WebKit::SQLiteIDBCursor::advanceOnce): If the statement needs to be reset, do so before advancing it.
(WebKit::SQLiteIDBCursor::internalAdvanceOnce): In a few cases, tell advanceOnce that it needs to

try again because it is on a missing record or is repeating a record.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h:

(WebKit::SQLiteIDBCursor::objectStoreID):

Make sure Maximum and Minimum keys are never sent across IPC, as that doesn’t make sense:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<IDBKeyData>::encode):
(IPC::ArgumentCoder<IDBKeyData>::decode):

LayoutTests:

  • platform/mac-wk2/TestExpectations: Add two tests that now pass.
4:24 PM Changeset in webkit [163661] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix bug in stack limit adjustments in JSLock.
<https://webkit.org/b/128406>

Reviewed by Geoffrey Garen.

  1. JSLock::unlock() was only clearing the VM::stackPointerAtEntry when m_vm->stackPointerAtVMEntry == entryStackPointer. FYI, entryStackPointer is a field in JSLock.

When DropAllLocks::~DropAllLocks() will call JSLock::grabAllLocks()
to relock the JSLock, JSLock::grabAllLocks() will set a new
entryStackPointer value. Thereafter, DropAllLocks::~DropAllLocks() will
restore the saved VM::stackPointerAtEntry, which will now defer from
the JSLock's entryStackPointer value.

It turns out that when m_vm->stackPointerAtVMEntry was initialized,
it was set to whatever value entryStackPointer is set to. At no time
do we ever expect the 2 values to differ. The only time it differs is
when this bug manifests.

The fix is to remove the entryStackPointer field in JSLock and its uses
altogether.

  1. DropAllLocks was unconditionally clearing VM::stackPointerAtEntry in its constructor instead of letting JSLock::unlock() do the clearing.

However, DropAllLocks will not actually drop locks if it isn't required
to (e.g. when alwaysDropLocks is DontAlwaysDropLocks), and when we've
already drop locks once (i.e. JSLock::m_lockDropDepth is not 0).

We should not have cleared VM::stackPointerAtEntry here if we don't
actually drop the locks.

  • runtime/JSLock.cpp:

(JSC::JSLock::unlock):
(JSC::JSLock::DropAllLocks::DropAllLocks):

4:19 PM Changeset in webkit [163660] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

iOS build fix.

  • Misc/WebElementDictionary.mm:

(+[WebElementDictionary initializeLookupTable]):
(-[WebElementDictionary _image]):
(-[WebElementDictionary _imageRect]):

4:16 PM Changeset in webkit [163659] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

CGContextGetUserSpaceToDeviceSpaceTransform returns the wrong value on Windows.
https://bugs.webkit.org/show_bug.cgi?id=128395.

Rubberstamped by Zalan Bujtas.

The call essentially returns 0 and causes an assertion failure when running many layout tests.

  • platform/graphics/cg/GraphicsContextCG.cpp: Don't make the call on Windows. We default to 1.

(WebCore::GraphicsContext::platformInit):

4:07 PM Changeset in webkit [163658] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix.

  • platform/PlatformKeyboardEvent.h: Fixed a typo.
3:37 PM Changeset in webkit [163657] by mitz@apple.com
  • 104 edits in trunk/Source/WebCore

Stop using PLATFORM(MAC) in WebCore/platform except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128404

Reviewed by Anders Carlsson.

  • Configurations/WebCore.xcconfig: Removed KeyEventMac.mm from

EXCLUDED_SOURCE_FILE_NAMES_iphoneos, because that file contains !PLATFORM(IOS) guards.
Removed WheelEventMac.mm from the same definition, because that file no longer exists.

  • platform/ContentFilter.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/ContextMenu.h: Ditto.
  • platform/ContextMenuItem.h: Ditto.
  • platform/Cursor.cpp: Ditto.
  • platform/Cursor.h: Ditto.
  • platform/DragData.cpp: Ditto.
  • platform/DragImage.cpp: Ditto.
  • platform/Language.cpp:

(WebCore::displayNameForLanguageLocale): Changed PLATFORM(MAC) to USE(CF) && !PLATFORM(WIN).

  • platform/LocalizedStrings.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::contextMenuItemTagSearchWeb):

  • platform/LocalizedStrings.h: Ditto.
  • platform/MIMETypeRegistry.cpp: Ditto.

(WebCore::initializeSupportedImageMIMETypesForEncoding):

  • platform/PasteboardStrategy.h: Ditto.
  • platform/PlatformKeyboardEvent.h: Ditto.
  • platform/PlatformMenuDescription.h: Ditto.
  • platform/PlatformSpeechSynthesizer.h: Ditto.
  • platform/PlatformWheelEvent.h: Ditto.

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/SchemeRegistry.cpp: Ditto.

(WebCore::localURLSchemes):
(WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
(WebCore::SchemeRegistry::shouldCacheResponsesFromURLSchemeIndefinitely):

  • platform/ScrollAnimator.cpp: Ditto.

(WebCore::ScrollAnimator::handleWheelEvent):

  • platform/ScrollAnimator.h: Ditto.
  • platform/ScrollView.cpp: Ditto.
  • platform/ScrollView.h: Ditto.
  • platform/ScrollbarThemeComposite.h: Ditto.
  • platform/SharedBuffer.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around NSData-related

code.

  • platform/URL.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around NSURL-related code.
  • platform/Widget.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/Widget.h: Ditto.
  • platform/audio/AudioSession.cpp: Changed !PLATFORM(MAC) && !PLATFORM(IOS) to

!PLATFORM(COCOA).

  • platform/audio/HRTFElevation.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/audio/MediaSessionManager.cpp: Ditto.
  • platform/audio/mac/AudioSessionMac.cpp: Updated comment.
  • platform/audio/mac/MediaSessionManagerMac.cpp: Removed PLATFORM(MAC) from Cocoa-only file.
  • platform/cf/SharedBufferCF.cpp: Changed !PLATFORM(MAC) to !USE(FOUNDATION) and updated

comment.

  • platform/cf/URLCF.cpp: Changed !PLATFORM(MAC) to !USE(FOUNDATION).
  • platform/graphics/BitmapImage.h: Changed one instance of PLATFORM(MAC) to
USE(CG)
USE(APPKIT), and another to PLATFORM(COCOA).
  • platform/graphics/DisplayRefreshMonitor.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):

  • platform/graphics/DisplayRefreshMonitor.h: Ditto.
  • platform/graphics/FloatPoint.h: Collapsed nested #ifs into a single #if.
  • platform/graphics/FloatRect.h: Ditto.
  • platform/graphics/FloatSize.h: Ditto.
  • platform/graphics/Font.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/graphics/Font.h: Ditto.
  • platform/graphics/FontCache.cpp: Ditto.

(WebCore::FontCache::getFontData):

  • platform/graphics/FontCache.h: Ditto. Also removed redundant friend class declaration.
  • platform/graphics/FontGlyphs.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::FontGlyphs::glyphDataAndPageForCharacter):

  • platform/graphics/GlyphPage.h: Ditto.
  • platform/graphics/GraphicsContext3D.h: Ditto.
  • platform/graphics/Image.h: Changed PLATFORM(MAC) to USE(APPKIT) around use of NSImage.

Changed another PLATFORM(MAC) to PLATFORM(COCOA).

  • platform/graphics/IntRect.h: Collapsed nested #ifs into a single #if.
  • platform/graphics/IntSize.h: Ditto.
  • platform/graphics/MediaPlayer.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).

(WebCore::installedMediaEngines):
(WebCore::MediaPlayer::supportsType):

  • platform/graphics/SimpleFontData.cpp: Ditto.

(WebCore::SimpleFontData::nonSyntheticItalicFontData):
(WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):

  • platform/graphics/SimpleFontData.h: Ditto.
  • platform/graphics/TiledBacking.h: Ditto.
  • platform/graphics/ca/GraphicsLayerCA.cpp: Ditto.

(WebCore::GraphicsLayerCA::filtersCanBeComposited):
(WebCore::GraphicsLayerCA::createPlatformCALayer):

  • platform/graphics/ca/LayerFlushScheduler.h: Ditto.
  • platform/graphics/ca/PlatformCAAnimation.h: Ditto.
  • platform/graphics/ca/PlatformCAFilters.h: Ditto.
  • platform/graphics/ca/PlatformCALayer.h: Ditto.
  • platform/graphics/cg/BitmapImageCG.cpp: Ditto.
  • platform/graphics/cg/GraphicsContextCG.cpp: Ditto.

(WebCore::GraphicsContext::setAllowsFontSmoothing):

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: Ditto.
  • platform/graphics/cg/ImageBufferCG.cpp: Ditto.
  • platform/graphics/cg/ImageBufferDataCG.h: Ditto.
  • platform/graphics/cg/ImageCG.cpp: Ditto.
  • platform/graphics/cg/ImageSourceCG.cpp: Ditto.

(WebCore::ImageSource::setData):

  • platform/graphics/cg/ImageSourceCG.h: Ditto.
  • platform/graphics/cg/PathCG.cpp: Ditto.

(WebCore::Path::platformAddPathForRoundedRect):

  • platform/graphics/cg/PatternCG.cpp: Ditto.
  • platform/graphics/gpu/DrawingBuffer.h: Ditto.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::createQTMovieView): Removed PLATFORM(MAC) guards, since
this file is only used on Mac and iOS.

  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::supportsExtension): Changed the GL_EXT_draw_buffers check to
match the implementation.

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Changed PLATFORM(MAC) to

PLATFORM(COCOA).

  • platform/mac/KeyEventMac.mm: Added !PLATFORM(IOS).
  • platform/mac/PlatformEventFactoryMac.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/mac/WebCoreSystemInterface.h: Ditto. Removed redundant check for PLATFORM(MAC).
  • platform/mac/WebCoreSystemInterface.mm: Removed redundant check for PLATFORM(MAC).
platform/network/Credential.h: Changed PLATFORM(IOS)
PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/network/NetworkStateNotifier.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • platform/network/NetworkStorageSession.h: Ditto.
  • platform/network/NetworkingContext.h: Ditto.
  • platform/network/ProtectionSpace.cpp: Ditto.

(WebCore::ProtectionSpace::receivesCredentialSecurely):

  • platform/network/ResourceHandle.cpp: Ditto.

(WebCore::ResourceHandle::clearAuthentication):
(WebCore::ResourceHandle::shouldContentSniffURL):

  • platform/network/ResourceHandle.h: Ditto.
  • platform/network/ResourceHandleClient.cpp: Ditto.
  • platform/network/ResourceHandleClient.h: Ditto.
  • platform/network/ResourceHandleInternal.h: Ditto.

(WebCore::ResourceHandleInternal::ResourceHandleInternal):

  • platform/network/ResourceRequestBase.cpp: Ditto.
  • platform/network/cf/AuthenticationCF.h: Ditto.
  • platform/network/cf/CookieStorageCFNet.cpp: Ditto.
  • platform/network/cf/CredentialStorageCFNet.cpp: Ditto.
  • platform/network/cf/FormDataStreamCFNet.cpp: Ditto.
  • platform/network/cf/NetworkStorageSessionCFNet.cpp: Ditto.

(WebCore::NetworkStorageSession::switchToNewTestingSession):
(WebCore::NetworkStorageSession::createPrivateBrowsingSession):

  • platform/network/cf/ResourceError.h: Ditto.
  • platform/network/cf/ResourceHandleCFNet.cpp: Ditto.

(WebCore::ResourceHandle::createCFURLConnection):

  • platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
  • platform/network/cf/ResourceRequest.h: Ditto.

(WebCore::ResourceRequest::ResourceRequest):

  • platform/network/cf/ResourceRequestCFNet.cpp: Ditto.

(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
(WebCore::ResourceRequest::setStorageSession):

  • platform/network/cf/ResourceResponse.h: Ditto.
  • platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:

(WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveResponse):

  • platform/network/mac/ResourceResponseMac.mm: Ditto.
  • platform/posix/FileSystemPOSIX.cpp: Changed PLATFORM(MAC) to OS(DARWIN) &&

!PLATFORM(EFL) && !PLATFORM(GTK).

  • platform/text/TextBoundaries.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
3:26 PM Changeset in webkit [163656] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Make it possible for each web page to have different preferences
https://bugs.webkit.org/show_bug.cgi?id=128403

Reviewed by Tim Horton.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesCreate):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebIconDatabase.cpp:

(WebKit::WebIconDatabase::setDatabasePath):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::WebPageGroup):
(WebKit::WebPageGroup::~WebPageGroup):
(WebKit::WebPageGroup::setPreferences):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::~WebPageProxy):
(WebKit::WebPageProxy::setPreferences):
(WebKit::WebPageProxy::preferencesDidChange):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::~WebPreferences):
(WebKit::WebPreferences::addPage):
(WebKit::WebPreferences::removePage):
(WebKit::WebPreferences::update):
(WebKit::WebPreferences::updatePrivateBrowsingValue):
(WebKit::WebPreferences::anyPagesAreUsingPrivateBrowsing):

  • UIProcess/WebPreferences.h:
3:07 PM Changeset in webkit [163655] by rniwa@webkit.org
  • 7 edits
    3 deletes in trunk

Revert r154384 and r154674 as they broke selection rect computations for text with ligatures.

Source/WebCore:

  • platform/graphics/Font.cpp:

(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::selectionRectForText):
(WebCore::Font::offsetForPosition):

  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::selectionRectForSimpleText):
(WebCore::Font::offsetForPositionForSimpleText):

  • platform/graphics/GlyphBuffer.h:
  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::WidthIterator):
(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advanceOneCharacter):

  • platform/graphics/WidthIterator.h:

LayoutTests:

  • fast/text/partial-textruns-expected.html: Removed.
  • fast/text/partial-textruns.html: Removed.
  • fast/text/resources/PTS55F-webfont.ttf: Removed.
3:03 PM Changeset in webkit [163654] by benjamin@webkit.org
  • 10 edits in trunk/Source

[WK2] Add support for text document viewport configuration
https://bugs.webkit.org/show_bug.cgi?id=128359

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-07
Reviewed by Simon Fraser.

Source/WebCore:

Define a set of ViewportParameters suitable for displaying text documents.
Add a documents class for text document to differentiate them from other type of documents.

  • WebCore.exp.in:
  • dom/Document.h:

(WebCore::Document::isTextDocument):

  • html/TextDocument.cpp:

(WebCore::TextDocument::TextDocument):

  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::ViewportConfiguration):
(WebCore::ViewportConfiguration::webpageParameters):
(WebCore::ViewportConfiguration::plainTextParameters):

  • page/ViewportConfiguration.h:

Source/WebKit2:

When a text document is being loaded, use the plainText viewport parameters.

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didCommitLoad):

3:02 PM Changeset in webkit [163653] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.3/Source/JavaScriptCore

Merged r163342.

3:01 PM Changeset in webkit [163652] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.3/Source

Versioning.

3:01 PM Changeset in webkit [163651] by Bem Jones-Bey
  • 2 edits in trunk/Source/WebCore

FloatingObject::unsafeClone should not copy m_originatingLine
https://bugs.webkit.org/show_bug.cgi?id=128381

Reviewed by Andreas Kling.

Copying the originatingLine allows to break the invariant that the
floating object must only contain lines that are owned by the renderer
it is attached to.

  • rendering/FloatingObjects.cpp:

(WebCore::FloatingObject::unsafeClone):

2:56 PM Changeset in webkit [163650] by Lucas Forschler
  • 1 copy in tags/Safari-538.16.3

New Tag.

2:32 PM Changeset in webkit [163649] by b.long@cablelabs.com
  • 41 edits
    3 copies
    2 moves
    2 adds in trunk

Update TextTrack API to current spec
https://bugs.webkit.org/show_bug.cgi?id=122218

Refactoring VTTCue out of TextTrackCue.

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-vttcue.html

  • CMakeLists.txt: Add VTTCue and rename RenderTextTrackCue to RenderVTTCue.
  • DerivedSources.cpp: Same.
  • DerivedSources.make: Same.
  • GNUmakefile.list.am: Same.
  • PlatformGTK.cmake: Same.
  • WebCore.vcxproj/WebCore.vcxproj: Same.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Same.
  • WebCore.xcodeproj/project.pbxproj: Same.
  • bindings/js/JSTextTrackCueCustom.cpp:

(WebCore::toJS): Use VTTCue DOM wrapper for VTTCue and its subclasses.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updateActiveTextTrackCues): Convert to VTTCue as needed.
(WebCore::HTMLMediaElement::textTrackRemoveCue): Same.

  • html/HTMLMediaElement.h: Only print cue.text in debug output if the cue type has a .text attribute
  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTextTrackContainerElement::updateDisplay): Convert to VTTCue as needed, and fix TextTrackCueBox to VTTCueBox.
(WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Convert to VTTCue as needed.

  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::addGenericCue): Use refactored VTTCue attributes.

  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::newCuesParsed): Use VTTCue's constructor instead of deprecated TextTrackCue constructor.

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::setMode): Convert to VTTCue as needed.
(WebCore::TextTrack::hasCue): Make this function only accept VTTCues, since it's only used for them anyway, and convert existing cues to VTTCues as needed.

  • html/track/TextTrack.h: Same as hasCue above.
  • html/track/TextTrackCue.cpp: Refactor a lot of code out. Everything that was removed went to VTTCue.cpp.

(WebCore::TextTrackCue::create): For backwards compatibility, just call VTTCue::create().
(WebCore::TextTrackCue::TextTrackCue): Refactor a lot of code out.
(WebCore::TextTrackCue::~TextTrackCue): Same.
(WebCore::TextTrackCue::didChange): Same.
(WebCore::TextTrackCue::setIsActive): Same.

  • html/track/TextTrackCue.h: Same.
  • html/track/TextTrackCue.idl: Remove VTTCue attributes and add custom toJS function.
  • html/track/TextTrackCueGeneric.cpp: Use VTTCue instead of TextTrackCue.
  • html/track/TextTrackCueGeneric.h: Same.
  • html/track/VTTCue.cpp: Copied from Source/WebCore/html/track/TextTrackCue.cpp.
  • html/track/VTTCue.h: Copied from Source/WebCore/html/track/TextTrackCue.h.
  • html/track/VTTCue.idl: Copied from Source/WebCore/html/track/TextTrackCue.idl.
  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::getNewCues): Use VTTCue instead of TextTrackCue.

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::CaptionUserPreferencesMediaAF::captionsStyleSheetOverride): Use VTTCueBox instead of TextTrackCueBox.

  • rendering/RenderVTTCue.cpp: Renamed from Source/WebCore/rendering/RenderTextTrackCue.cpp. Changed to use VTTCue instead of TextTrackCue.
  • rendering/RenderVTTCue.h: Renamed from Source/WebCore/rendering/RenderTextTrackCue.h. Changed to use VTTCue instead of TextTrackCue.
  • rendering/RenderingAllInOne.cpp: Rename RenderTextTrackCue to RenderVTTCue.

LayoutTests:

  • js/dom/constructor-length.html: Add VTTCue constructor.
  • platform/efl/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/efl/js/dom/constructor-length-expected.txt: Same.
  • js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/gtk-wk2/js/dom/constructor-length-expected.txt: Same.
  • platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/gtk/js/dom/constructor-length-expected.txt: Same.
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/mac/js/dom/constructor-length-expected.txt: Same.
  • platform/mac/js/dom/global-constructors-attributes-expected.txt: Same.
  • platform/win/js/dom/global-constructors-attributes-expected.txt: Same.
  • media/track/track-cues-cuechange-expected.txt: Cues are of type VTTCue now.
  • media/track/track-cues-enter-exit-expected.txt: Same.
  • media/track/track-vttcue-expected.txt: Test VTTCue interface.
  • media/track/track-vttcue.html: Same.
  • media/video-test.js:

(testExpected): Add "instanceof" as a valid operator.

2:31 PM Changeset in webkit [163648] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[iOS] Eliminate race between XPC connection queue and Notification queue
https://bugs.webkit.org/show_bug.cgi?id=128384

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-07
Reviewed by Timothy Hatcher.

  • inspector/remote/RemoteInspector.h:
  • inspector/remote/RemoteInspector.mm:

(Inspector::RemoteInspector::RemoteInspector):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
Create the queue to use for RemoteInspector xpc connection
management and the connection itself.

  • inspector/remote/RemoteInspectorXPCConnection.h:
  • inspector/remote/RemoteInspectorXPCConnection.mm:

(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
Use the passed in queue instead of creating one for itself.

2:27 PM Changeset in webkit [163647] by barraclough@apple.com
  • 5 edits in trunk/Source

Should report user input to PageThrottler
https://bugs.webkit.org/show_bug.cgi?id=128398

Reviewed by Tim Horton.

Make sure we wake from AppNap if there is user interaction.

Source/WebCore:

  • page/PageThrottler.h:

(WebCore::PageThrottler::didReceiveUserInput):
(WebCore::PageThrottler::pluginDidEvaluate):

  • added, these call reportInterestingEvent()

Source/WebKit2:

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::evaluate):

  • reportInterestingEvent() -> pluginDidEvaluate()
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::wheelEvent):
(WebKit::WebPage::keyEvent):

  • call didReceiveUserInput()
2:12 PM Changeset in webkit [163646] by dino@apple.com
  • 3 edits in trunk/Source/WebKit2

WebGL doesn't update with remotely hosted layers
https://bugs.webkit.org/show_bug.cgi?id=128390

Reviewed by Simon Fraser.

PlatformCALayerRemote was intercepting the setNeedsDisplay calls to
WebGL layers, and thus causing them to not draw. Fix this by adding an
override in PlatformCALayerRemoteCustom to check if it is a WebGLLayer
and call setNeedsDisplay directly.

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

(PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
(PlatformCALayerRemoteCustom::setNeedsDisplay):

2:01 PM Changeset in webkit [163645] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Fitler touch events only based on touch start
https://bugs.webkit.org/show_bug.cgi?id=128354

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-07
Reviewed by Simon Fraser.

Touch Events track their target, we should not test the touch regions
again after a touch sequence starts.

This patch adds a boolean flag to know if we are sending events to the WebProcess
(m_isTrackingTouchEvents). The flag is updated every time a touch sequence starts.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::shouldStartTrackingTouchEvents):
(WebKit::WebPageProxy::handleTouchEvent):

  • UIProcess/WebPageProxy.h:
1:42 PM Changeset in webkit [163644] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Simplify WebPreferences creation inside WebPageGroup
https://bugs.webkit.org/show_bug.cgi?id=128392

Reviewed by Andreas Kling.

Always create a WebPreferences object when creating the web page group.
This is another step towards letting WebPageProxy manage web preferences.

  • UIProcess/WebPageGroup.cpp:

(WebKit::pageGroupData):
(WebKit::WebPageGroup::WebPageGroup):
(WebKit::WebPageGroup::~WebPageGroup):
(WebKit::WebPageGroup::setPreferences):
(WebKit::WebPageGroup::preferences):

  • UIProcess/WebPageGroup.h:
1:39 PM Changeset in webkit [163643] by barraclough@apple.com
  • 2 edits in trunk/Source/WebKit2

Reenable AppNap
https://bugs.webkit.org/show_bug.cgi?id=128394

Reviewed by Tim Horton.

  • Shared/WebPreferencesStore.h:
    • pageVisibilityBasedProcessSuppressionEnabled shoud default to true.
1:23 PM Changeset in webkit [163642] by k.czech@samsung.com
  • 2 edits in trunk/Tools

Build fix after r163632

Unreviewed EFL build fix

Added empty stub to WKTR to not break EFL build.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::selectTextWithCriteria):

1:17 PM Changeset in webkit [163641] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for 32-bit iOS.

Use magic ? values to allow the exported symbol to be different on 32- and 64-bit builds.

  • WebCore.exp.in:
12:14 PM Changeset in webkit [163640] by timothy_horton@apple.com
  • 2 edits
    1 move in trunk/Source/WebKit2

Rename ViewGestureController.mm to ViewGestureControllerMac.mm
https://bugs.webkit.org/show_bug.cgi?id=128387

Reviewed by Anders Carlsson.

As a precursor to having a second nearly completely divergent
ViewGestureController implementation for iOS.

  • UIProcess/mac/ViewGestureControllerMac.mm: Renamed from Source/WebKit2/UIProcess/mac/ViewGestureController.mm.
  • WebKit2.xcodeproj/project.pbxproj:

Rename ViewGestureController.mm to ViewGestureControllerMac.mm.
Unfortunately, since we're not renaming the class, the header
has to keep its name (and will be the recipient of a giant #if in a later
patch), because the message receiver generated code will try to import
ViewGestureController.h (without the Mac suffix).

11:59 AM Changeset in webkit [163639] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION (r160628): LLint does not appear to handle impure get own property properly
https://bugs.webkit.org/show_bug.cgi?id=127943

Reviewed by Filip Pizlo.

Make sure the LLINT doesn't attempt to cache property
access on structures with impureGetOwnPropertySlot set.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

11:57 AM Changeset in webkit [163638] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Convert ProgressTracker to std::chrono
https://bugs.webkit.org/show_bug.cgi?id=128377

Reviewed by Andreas Kling.

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::ProgressTracker):
(WebCore::ProgressTracker::reset):
(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::finalProgressComplete):
(WebCore::ProgressTracker::incrementProgress):

  • loader/ProgressTracker.h:
11:49 AM Changeset in webkit [163637] by BJ Burg
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Clean up DataGrid and add table columns incrementally
https://bugs.webkit.org/show_bug.cgi?id=128332

Reviewed by Timothy Hatcher.

Miscellaneous improvements to DataGrid to make it more maintainable.
In particular, it now uses a Map to store column settings, and the
construction sequence has been simplified so that it is safe to add
columns at the end of the constructor (or any later time).

DataGrid stores a bunch of settings per-column, but before this was done
by both storing properties on the provided column objects as well as
keeping several columnIdentifier-keyed maps for properties like group
and hidden.

Improve code readability by using for..of loops, destructuring assignment,
Node.createElement, and updating variable names. All variables that refer
to DOM nodes now have a Element suffix to distinguish them from model objects.

  • UserInterface/DataGrid.js:

(.sortDataGrid):
(WebInpector.DataGrid): Create all DOM elements before populating columns.
Remove redundant objects for storing per-column values. Copy column settings
into a map rather than mutating the passed-in JSON-like settings data structure.

(WebInspector.DataGrid.createSortableDataGrid):
(WebInspector.DataGrid.prototype.get length):
(WebInspector.DataGrid.prototype.updateLayout):
(WebInspector.DataGrid.prototype.get scrollContainer):
(WebInspector.DataGrid.prototype.isScrolledToLastRow):
(WebInspector.DataGrid.prototype.scrollToLastRow):
(WebInspector.DataGrid.prototype._positionResizerElements):
(WebInspector.DataGrid.prototype.addCreationNode):
(WebInspector.DataGrid.prototype.):
(WebInspector.DataGrid.prototype.sortNodes):
(WebInspector.DataGrid.prototype.dataGridNodeFromPoint):
(WebInspector.DataGrid.prototype._clickInHeaderCell):
(WebInspector.DataGrid.prototype.isColumnSortColumn):
(WebInspector.DataGrid.prototype.headerTableHeader):
(WebInspector.DataGrid.prototype._copyTextForDataGridNode):
(WebInspector.DataGrid.prototype._resizerDragging):
(WebInspector.DataGridNode.prototype.createCells):
(WebInspector.DataGridNode.prototype.createCell.get var):
(WebInspector.DataGridNode.prototype.elementWithColumnIdentifier):
(WebInspector.DataGridNode.prototype._attach):

  • UserInterface/TimelineDataGrid.js:

(WebInspector.TimelineDataGrid.prototype.treeElementMatchesActiveScopeFilters.scopeBar.this.columns.get scopeBar):
(WebInspector.TimelineDataGrid.prototype.treeElementMatchesActiveScopeFilters):

11:43 AM Changeset in webkit [163636] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Copying a WebPreferences object should be done through a member function
https://bugs.webkit.org/show_bug.cgi?id=128385

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesCreateCopy):

  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::copy):

  • UIProcess/WebPreferences.h:
11:10 AM Changeset in webkit [163635] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

WebPageGroup::setPreferences should set the preferences on all pages in the group
https://bugs.webkit.org/show_bug.cgi?id=128383

Reviewed by Alexey Proskuryakov.

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::setPreferences):

10:53 AM Changeset in webkit [163634] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

32-bit build fix.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(accessibilitySelectTextCriteriaForCriteriaParameterizedAttribute):

10:46 AM Changeset in webkit [163633] by commit-queue@webkit.org
  • 50 edits in trunk

[CSS Background Blending] Unprefix the -webkit-background-blend-mode property

https://bugs.webkit.org/show_bug.cgi?id=128270

Patch by Mihai Tica <mitica@adobe.com> on 2014-02-07
Reviewed by Dean Jackson.

Source/WebCore:

This patch consist of unprefixing the -webkit-background-blend-mode.
The property now changes to background-blend-mode.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillProperty):

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

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

Source/WebInspectorUI:

  • UserInterface/CSSKeywordCompletions.js: Refactor -webkit-background-blend-mode to background-blend-mode.

LayoutTests:

This patch consist of unprefixing the -webkit-background-blend-mode.
The property now changes to background-blend-mode.

  • css3/compositing/background-blend-mode-background-attachement-fixed-expected.html:
  • css3/compositing/background-blend-mode-background-attachement-fixed.html:
  • css3/compositing/background-blend-mode-background-clip-content-box-expected.html:
  • css3/compositing/background-blend-mode-background-clip-content-box.html:
  • css3/compositing/background-blend-mode-background-clip-padding-box-expected.html:
  • css3/compositing/background-blend-mode-background-clip-padding-box.html:
  • css3/compositing/background-blend-mode-background-origin-border-box-expected.html:
  • css3/compositing/background-blend-mode-background-origin-border-box.html:
  • css3/compositing/background-blend-mode-background-position-percentage-expected.html:
  • css3/compositing/background-blend-mode-background-position-percentage.html:
  • css3/compositing/background-blend-mode-background-repeat-no-repeat-expected.html:
  • css3/compositing/background-blend-mode-background-repeat-no-repeat.html:
  • css3/compositing/background-blend-mode-background-size-contain-expected.html:
  • css3/compositing/background-blend-mode-background-size-contain.html:
  • css3/compositing/background-blend-mode-background-size-cover-expected.html:
  • css3/compositing/background-blend-mode-background-size-cover.html:
  • css3/compositing/background-blend-mode-crossfade-image.html:
  • css3/compositing/background-blend-mode-data-uri-svg-image.html:
  • css3/compositing/background-blend-mode-default-value.html:
  • css3/compositing/background-blend-mode-different-image-formats.html:
  • css3/compositing/background-blend-mode-gif-color-2.html:
  • css3/compositing/background-blend-mode-gif-color.html:
  • css3/compositing/background-blend-mode-gradient-color.html:
  • css3/compositing/background-blend-mode-gradient-gradient.html:
  • css3/compositing/background-blend-mode-gradient-image.html:
  • css3/compositing/background-blend-mode-image-color.html:
  • css3/compositing/background-blend-mode-image-image.html:
  • css3/compositing/background-blend-mode-image-svg.html:
  • css3/compositing/background-blend-mode-multiple-background-layers.html:
  • css3/compositing/background-blend-mode-property-expected.txt:
  • css3/compositing/background-blend-mode-property-parsing-expected.txt:
  • css3/compositing/background-blend-mode-separate-layer-declaration.html:
  • css3/compositing/background-blend-mode-single-layer-no-blending.html:
  • css3/compositing/background-blend-mode-svg-color.html:
  • css3/compositing/background-blend-mode-svg.html:
  • css3/compositing/background-blend-mode-tiled-layers.html:
  • css3/compositing/blend-mode-layers.html:
  • css3/compositing/effect-background-blend-mode-stacking.html:
  • css3/compositing/effect-background-blend-mode-tiled.html:
  • css3/compositing/effect-background-blend-mode.html:
  • css3/compositing/script-tests/background-blend-mode-property-parsing.js:

(testBlendModeRule):

  • css3/compositing/script-tests/background-blend-mode-property.js:

(testblendmode):

10:43 AM Changeset in webkit [163632] by Samuel White
  • 20 edits
    2 adds in trunk

AX: Find and select text with respect to insertion point using accessibility API.
https://bugs.webkit.org/show_bug.cgi?id=128026

Reviewed by Chris Fleizach.

Source/WebCore:

Added facilities to support semi-ambiguous text selection through the accessibility API. All
requests are handled with respect to the current selection. The requests are disambiguated in
WebCore using passed parameters such as: SelectStringAfterSelection , ..Before.., ..ClosestTo...,
etc. Callers can also supply an array of strings to select and the closest that matches the
disambiguation criteria will be used.

Test: platform/mac/accessibility/select-text.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::rangeClosestToRange):
(WebCore::AccessibilityObject::rangeOfStringClosestToRangeInDirection):
(WebCore::AccessibilityObject::selectionRange):
(WebCore::AccessibilityObject::selectText):
(WebCore::AccessibilityObject::frame):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilitySelectTextCriteria::AccessibilitySelectTextCriteria):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(accessibilitySelectTextCriteriaForCriteriaParameterizedAttribute):
(-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

  • dom/Position.cpp:

(WebCore::Position::positionCountBetweenPositions):

  • dom/Position.h:

Tools:

Added method to AccessibilityUIElement to enable testing of accessibility text selection.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(selectTextWithCriteriaCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::selectTextWithCriteria):

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::selectTextWithCriteria):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(selectTextParameterizedAttributeForCriteria):
(AccessibilityUIElement::selectTextWithCriteria):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::selectTextWithCriteria):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::selectTextWithCriteria):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::selectTextWithCriteria):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::selectTextParameterizedAttributeForCriteria):
(WTR::AccessibilityUIElement::selectTextWithCriteria):

LayoutTests:

Tests that text selection via the accessibility API works as expected.

  • platform/mac/accessibility/bounds-for-range-expected.txt:
  • platform/mac/accessibility/select-text-expected.txt: Added.
  • platform/mac/accessibility/select-text.html: Added.
10:37 AM Changeset in webkit [163631] by Bem Jones-Bey
  • 3 edits in trunk/Source/WebCore

FloatingObject m_paginationStrut should be LayoutUnit
https://bugs.webkit.org/show_bug.cgi?id=119808

Reviewed by Andreas Kling.

Make the paginationStrut in FloatingObject have the same type as all
of the other paginationStruts in the code.

  • rendering/FloatingObjects.h:

(WebCore::FloatingObject::paginationStrut):
(WebCore::FloatingObject::setPaginationStrut):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::positionNewFloatOnLine):

10:32 AM Changeset in webkit [163630] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] WKRemoteObjectInterface doesn’t support aribtrary argument classes
https://bugs.webkit.org/show_bug.cgi?id=128368

Reviewed by Anders Carlsson.

  • Shared/API/Cocoa/WKRemoteObjectInterface.h: Declared new methods.
  • Shared/API/Cocoa/WKRemoteObjectInterface.mm:

(propertyListClasses): Removed NSNull, which is not really a property list class.
(classesForSelectorArgument): Added helper function.
(-[WKRemoteObjectInterface classesForSelector:argumentIndex:]): Added.
(-[WKRemoteObjectInterface setClasses:forSelector:argumentIndex:]): Added.

10:32 AM Changeset in webkit [163629] by mitz@apple.com
  • 8 edits
    4 adds in trunk/Source/WebKit2

[Cocoa] API::FrameHandle has a generic wrapper
https://bugs.webkit.org/show_bug.cgi?id=128366

Reviewed by Anders Carlsson.

Added WKFrameHandle.

  • Shared/API/Cocoa/WKFrameHandle.h: Added.
  • Shared/API/Cocoa/WKFrameHandle.mm: Added.

(-[WKFrameHandle dealloc]): Calls the API::FrameHandle destructor.
(-[WKFrameHandle isEqual:]): Checks for frame ID equality.
(-[WKFrameHandle hash]): Returns the frame ID.
(-[WKFrameHandle _frameID]): Ditto.
(-[WKFrameHandle copyWithZone:]): Retains self.
(+[WKFrameHandle supportsSecureCoding]): Returns YES.
(-[WKFrameHandle initWithCoder:]): Decodes the frame ID and constructs an API::FrameHandle
with it.
(-[WKFrameHandle encodeWithCoder:]): Encodes the frame ID.
(-[WKFrameHandle _apiObject]): Returns the wrapped API::FrameHandle.

  • Shared/API/Cocoa/WKFrameHandleInternal.h: Added.

(WebKit::wrapper): Added. Returns an API::FrameHandle’s wrapper as a WKFrameHandle.

  • Shared/APIFrameHandle.cpp:

(API::FrameHandle::create): Changed to return a PassRefPtr.

  • Shared/APIFrameHandle.h: Made the constructor public for -[WKFrameHandle initWithCoder:].
  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject): Allocate a WKFrameHandle if the object is an API::FrameHandle.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h: Declared handle property.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(+[WKWebProcessPlugInFrame lookUpFrameFromHandle:]): Added. Calls WebProcess::webFrame to
look up a frame with the given handle’s frame ID.
(-[WKWebProcessPlugInFrame handle]): Added. Returns a new handle with the frame’s ID.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrameInternal.h: Updated #import.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h: Added.
10:31 AM Changeset in webkit [163628] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[Cocoa] WKWebProcessPlugInNodeHandle methods leak and may crash
https://bugs.webkit.org/show_bug.cgi?id=128365

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

(+[WKWebProcessPlugInNodeHandle nodeHandleWithJSValue:inContext:]): Null-check the result
of InjectedBundleNodeHandle::getOrCreate, and autorelease the return value.
(-[WKWebProcessPlugInNodeHandle htmlIFrameElementContentFrame]): Null-check the result of
InjectedBundleNodeHandle::htmlIFrameElementContentFrame, and autorelease the return value.

10:26 AM Changeset in webkit [163627] by beidson@apple.com
  • 20 edits in trunk

IDB: storage/indexeddb/create-index-with-integer-keys.html fails
<rdar://problem/16002857> and https://bugs.webkit.org/show_bug.cgi?id=128316

Reviewed by Geoff Garen.

Source/WebCore:

Tested by storage/indexeddb/create-index-with-integer-keys.html (and probably some others)

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::update): Update createIDBKeyFromScriptValueAndKeyPath usage.
(WebCore::IDBCursor::setValueReady): Update createIDBKeyFromScriptValueAndKeyPath usage.

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::put): Update usage of binding utilities.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess): Update createIDBKeyFromScriptValueAndKeyPath usage.

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::createIDBKeyFromScriptValueAndKeyPath): Changed to take an ExecState*.
(WebCore::deserializeIDBValueBuffer): Added new version that starts with ExecState* and Vector<uint8_t>

instead of RequestState and SharedBuffer.

(WebCore::generateIndexKeysForValue): Moved from IDBObjectStore.cpp and changed to take an ExecState*

  • bindings/js/IDBBindingUtilities.h:

Added new blob fetcher that works with uint8_t buffers:

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::getColumnBlobAsVector):

  • platform/sql/SQLiteStatement.h:
  • WebCore.exp.in:

Source/WebKit2:

Update Vector<char> to Vector<uint8_t> throughout:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::openCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didOpenCursorInBackingStore):
(WebKit::UniqueIDBDatabase::advanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didAdvanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::iterateCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didIterateCursorInBackingStore):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Update Vector<char> to Vector<uint8_t> throughout:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce):

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h:

(WebKit::SQLiteIDBCursor::currentValueBuffer):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex): Create a script value from the value data, use

generateIndexKeysForValue to get the index keys, and then write the resulting index records.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putIndexRecord): Call through to uncheckedPutIndexRecord.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::uncheckedPutIndexRecord): Version of putIndexRecord that doesn’t

validate the transaction or its mode.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::openCursor): Update Vector<char> to Vector<uint8_t>.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::advanceCursor): Ditto.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::iterateCursor): Ditto.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test.
10:20 AM Changeset in webkit [163626] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

childShouldCreateRenderer should return false for the mspace element
https://bugs.webkit.org/show_bug.cgi?id=128325

Patch by Frédéric Wang <fred.wang@free.fr> on 2014-02-07
Reviewed by Chris Fleizach.

Source/WebCore:

The mspace element can not have children so this makes its
childShouldCreateRenderer always return false.

Test: mathml/presentation/mspace-children.html

  • mathml/MathMLTextElement.cpp:

(WebCore::MathMLTextElement::childShouldCreateRenderer):

LayoutTests:

Add tests to ensure that the mspace element does not have renderer
children.

  • mathml/presentation/mspace-children-expected.png: Added.
  • mathml/presentation/mspace-children-expected.txt: Added.
  • mathml/presentation/mspace-children.html: Added.
  • platform/mathml/presentation/mspace-children-expected.txt: Added.
9:45 AM Changeset in webkit [163625] by commit-queue@webkit.org
  • 90 edits in trunk

[CSS Grid Layout] Rename grid-definition-{columns|rows} to match the new syntax
https://bugs.webkit.org/show_bug.cgi?id=127989

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-02-07
Reviewed by Andreas Kling.

In the latest WD, grid-definition-{columns|rows} were renamed to grid-template-{columns|rows}.

Source/WebCore:

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

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

(WebCore::StyleResolver::applyProperty):

LayoutTests:

  • fast/css-grid-layout/auto-content-resolution-columns.html:
  • fast/css-grid-layout/auto-content-resolution-rows.html:
  • fast/css-grid-layout/breadth-size-resolution-grid.html:
  • fast/css-grid-layout/calc-resolution-grid-item.html:
  • fast/css-grid-layout/flex-and-minmax-content-resolution-columns.html:
  • fast/css-grid-layout/flex-and-minmax-content-resolution-rows.html:
  • fast/css-grid-layout/flex-content-resolution-columns.html:
  • fast/css-grid-layout/flex-content-resolution-rows.html:
  • fast/css-grid-layout/grid-auto-columns-rows-auto-flow-resolution.html:
  • fast/css-grid-layout/grid-auto-columns-rows-resolution.html:
  • fast/css-grid-layout/grid-auto-columns-rows-update.html:
  • fast/css-grid-layout/grid-auto-flow-resolution.html:
  • fast/css-grid-layout/grid-auto-flow-update.html:
  • fast/css-grid-layout/grid-columns-rows-get-set-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
  • fast/css-grid-layout/grid-columns-rows-get-set.html:
  • fast/css-grid-layout/grid-dynamic-updates-relayout.html:
  • fast/css-grid-layout/grid-element-border-grid-item.html:
  • fast/css-grid-layout/grid-element-border-padding-grid-item.html:
  • fast/css-grid-layout/grid-element-change-columns-repaint-expected.txt:
  • fast/css-grid-layout/grid-element-change-columns-repaint.html:
  • fast/css-grid-layout/grid-element-change-rows-repaint-expected.txt:
  • fast/css-grid-layout/grid-element-change-rows-repaint.html:
  • fast/css-grid-layout/grid-element-empty-row-column.html:
  • fast/css-grid-layout/grid-element-min-max-width.html:
  • fast/css-grid-layout/grid-element-padding-grid-item.html:
  • fast/css-grid-layout/grid-element-padding-margin.html:
  • fast/css-grid-layout/grid-element-repeat-get-set-expected.txt:
  • fast/css-grid-layout/grid-element-repeat-get-set.html:
  • fast/css-grid-layout/grid-item-addition-auto-placement-update.html:
  • fast/css-grid-layout/grid-item-addition-track-breadth-update.html:
  • fast/css-grid-layout/grid-item-bad-named-area-auto-placement.html:
  • fast/css-grid-layout/grid-item-bad-resolution-double-span.html:
  • fast/css-grid-layout/grid-item-change-column-repaint.html:
  • fast/css-grid-layout/grid-item-change-row-repaint.html:
  • fast/css-grid-layout/grid-item-margin-resolution.html:
  • fast/css-grid-layout/grid-item-multiple-minmax-content-resolution.html:
  • fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
  • fast/css-grid-layout/grid-item-named-grid-line-resolution.html:
  • fast/css-grid-layout/grid-item-negative-integer-explicit-grid-resolution.html:
  • fast/css-grid-layout/grid-item-negative-position-resolution.html:
  • fast/css-grid-layout/grid-item-order-auto-flow-resolution.html:
  • fast/css-grid-layout/grid-item-order-paint-order.html:
  • fast/css-grid-layout/grid-item-removal-auto-placement-update.html:
  • fast/css-grid-layout/grid-item-removal-track-breadth-update.html:
  • fast/css-grid-layout/grid-item-spanning-resolution.html:
  • fast/css-grid-layout/grid-item-with-percent-height-in-auto-height-grid-resolution.html:
  • fast/css-grid-layout/grid-item-with-percent-min-max-height-dynamic.html:
  • fast/css-grid-layout/grid-preferred-logical-widths.html:
  • fast/css-grid-layout/implicit-columns-auto-resolution.html:
  • fast/css-grid-layout/implicit-position-dynamic-change.html:
  • fast/css-grid-layout/implicit-rows-auto-resolution.html:
  • fast/css-grid-layout/minmax-fixed-logical-height-only.html:
  • fast/css-grid-layout/minmax-fixed-logical-width-only.html:
  • fast/css-grid-layout/minmax-max-content-resolution-columns.html:
  • fast/css-grid-layout/minmax-max-content-resolution-rows.html:
  • fast/css-grid-layout/minmax-min-content-column-resolution-columns.html:
  • fast/css-grid-layout/minmax-min-content-column-resolution-rows.html:
  • fast/css-grid-layout/minmax-spanning-resolution-columns.html:
  • fast/css-grid-layout/minmax-spanning-resolution-rows.html:
  • fast/css-grid-layout/named-grid-line-get-set-expected.txt:
  • fast/css-grid-layout/named-grid-line-get-set.html:
  • fast/css-grid-layout/non-grid-columns-rows-get-set-expected.txt:
  • fast/css-grid-layout/non-grid-columns-rows-get-set-multiple-expected.txt:
  • fast/css-grid-layout/non-grid-columns-rows-get-set-multiple.html:
  • fast/css-grid-layout/non-grid-columns-rows-get-set.html:
  • fast/css-grid-layout/non-grid-element-repeat-get-set-expected.txt:
  • fast/css-grid-layout/non-grid-element-repeat-get-set.html:
  • fast/css-grid-layout/non-named-grid-line-get-set-expected.txt:
  • fast/css-grid-layout/non-named-grid-line-get-set.html:
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track-in-percent-grid.html:
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track-update.html:
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track.html:
  • fast/css-grid-layout/percent-padding-margin-resolution-grid-item-update.html:
  • fast/css-grid-layout/percent-padding-margin-resolution-grid-item.html:
  • fast/css-grid-layout/percent-resolution-grid-item.html:
  • fast/css-grid-layout/place-cell-by-index.html:
  • fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js:

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/grid-columns-rows-get-set.js:

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:

(testGridTemplatesValues):
(testGridTemplatesSetJSValues):
(testNonGridTemplatesSetJSValues):
(checkGridTemplatesSetJSValues):
(testGridTemplatesSetBadJSValues):

  • fast/css-grid-layout/resources/non-grid-columns-rows-get-set-multiple.js:

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/non-grid-columns-rows-get-set.js:

(testInherit):
(testInitial):

  • ietestcenter/css3/grid/display-grid-001-expected.htm:
9:43 AM Changeset in webkit [163624] by dino@apple.com
  • 2 edits in trunk/LayoutTests

animations/suspend-resume-animation.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=128379

Marking it as such.

  • platform/mac/TestExpectations:
8:11 AM Changeset in webkit [163623] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Remove test expectations after r163586 and skip two http tests.

  • platform/efl-wk2/TestExpectations:
4:02 AM Changeset in webkit [163622] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

CTTE: DocumentThreadableLoader always has a Document.
<https://webkit.org/b/128364>

DocumentThreadableLoader always has an "owner" Document, so store
that as a reference instead of a pointer. Removed some unnecessary
assertions exposed by this change.

Reviewed by Antti Koivisto.

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::loadResourceSynchronously):
(WebCore::DocumentThreadableLoader::create):
(WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
(WebCore::DocumentThreadableLoader::didReceiveResponse):
(WebCore::DocumentThreadableLoader::didReceiveData):
(WebCore::DocumentThreadableLoader::didFinishLoading):
(WebCore::DocumentThreadableLoader::didFail):
(WebCore::DocumentThreadableLoader::preflightFailure):
(WebCore::DocumentThreadableLoader::loadRequest):
(WebCore::DocumentThreadableLoader::securityOrigin):

  • loader/DocumentThreadableLoader.h:
  • loader/ThreadableLoader.cpp:

(WebCore::ThreadableLoader::create):
(WebCore::ThreadableLoader::loadResourceSynchronously):

  • loader/WorkerThreadableLoader.cpp:

(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):

3:44 AM Changeset in webkit [163621] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

[GTK] Disable gtk-doc in EWS
https://bugs.webkit.org/show_bug.cgi?id=128370

Reviewed by Carlos Garcia Campos.

Disable gtk-doc generation in EWS due to http://webkit.org/b/128369.

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command): Add --disable-gtk-doc arg.
(GtkWK2Port.build_webkit_command): Ditto.

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_port): Ditto.
(DeprecatedPortTest.test_gtk_wk2_port): Ditto.

2:52 AM Changeset in webkit [163620] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] editing/style/block-style-005.html failing
https://bugs.webkit.org/show_bug.cgi?id=114612

Patch by Lukasz Bialek <l.bialek@samsung.com> on 2014-02-07
Reviewed by Ryosuke Niwa.

After r148378 editing/style/block-style-005.htm test stopped passing.
Number of "moveSelectionByLineCommand" is changed to 4 to match intended
test behaviour. Test is confirmed to pass in EFL and GTK ports now.

  • editing/style/block-style-005.html:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
2:49 AM Changeset in webkit [163619] by mihnea@adobe.com
  • 7 edits
    1 delete in trunk/LayoutTests

[CSSRegions] Remove style-scoped tests
https://bugs.webkit.org/show_bug.cgi?id=128361

Reviewed by Andrei Bucur.

Remove tests combining style-scoped and regions. The support was removed from code base
and the tests were skipped from a long time.

  • fast/regions/style-scoped/style-scoped-in-flow-expected.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-container-style-expected.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-container-style.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-region-styling-expected.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-region-styling-multiple-regions-expected.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-region-styling-multiple-regions.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow-override-region-styling.html: Removed.
  • fast/regions/style-scoped/style-scoped-in-flow.html: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
2:44 AM Changeset in webkit [163618] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Vector-effect updates require a re-layout
https://bugs.webkit.org/show_bug.cgi?id=127553

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2014-02-07
Reviewed by Andreas Kling.

As noted in the stale SVGRenderStyle::diff() comment, now that layout() observes vector-effect
we need to trigger a re-layout on attribute changes.

Merged from Blink: https://src.chromium.org/viewvc/blink?revision=152570&view=revision

Source/WebCore:

Tests: svg/custom/non-scaling-stroke-update-expected.svg

svg/custom/non-scaling-stroke-update.svg

  • rendering/style/SVGRenderStyle.cpp:

(WebCore::SVGRenderStyle::diff):

LayoutTests:

  • svg/custom/non-scaling-stroke-update-expected.svg: Added.
  • svg/custom/non-scaling-stroke-update.svg: Added.
2:21 AM Changeset in webkit [163617] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebCore

Renaming isTableElement() to isRenderedTable() as per the FIXME comment
https://bugs.webkit.org/show_bug.cgi?id=127769

Patch by Laszlo Vidacs <lvidacs.u-szeged@partner.samsung.com> on 2014-02-07
Reviewed by Andreas Kling.

Rename method and use IsTable() instead of local type checking.

  • dom/Position.cpp:

(WebCore::Position::parentAnchoredEquivalent):
(WebCore::Position::upstream):
(WebCore::Position::downstream):
(WebCore::Position::isCandidate):

  • dom/PositionIterator.cpp:

(WebCore::PositionIterator::isCandidate):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
(WebCore::CompositeEditCommand::moveParagraphWithClones):

  • editing/FrameSelection.cpp:

(WebCore::caretRendersInsideNode):

  • editing/VisibleUnits.cpp:

(WebCore::startOfParagraph):
(WebCore::endOfParagraph):

  • editing/htmlediting.cpp:

(WebCore::firstInSpecialElement):
(WebCore::lastInSpecialElement):
(WebCore::isRenderedTable):

  • editing/htmlediting.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::localCaretRect):

2:10 AM Changeset in webkit [163616] by ChangSeok Oh
  • 3 edits in trunk/LayoutTests

Unreviewed GTK port gardening

  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
1:20 AM Changeset in webkit [163615] by g.czajkowski@samsung.com
  • 5 edits in trunk/LayoutTests

Verify misspellings after lines merge/split asynchronously
https://bugs.webkit.org/show_bug.cgi?id=128305

Reviewed by Ryosuke Niwa.

Adapt two spelling tests to use asynchronous spellchecking.

  • editing/spelling/script-tests/spelling-backspace-between-lines.js:

(testTwoLinesMisspellings):
(testMisspellingsAfterLineMergeUsingDelete):
(testMisspellingsAfterLineMergeUsingForwardDelete):
Group test cases into separated methods.
Use shouldBeEqualToString to compare strings.
Add newly created div elements instead of overriding
the previous one in order that non DumpRenderTree users
can see what has been tested.

  • editing/spelling/spelling-backspace-between-lines-expected.txt:
  • editing/spelling/spelling-linebreak-expected.txt:
  • editing/spelling/spelling-linebreak.html:
12:32 AM Changeset in webkit [163614] by jinwoo7.song@samsung.com
  • 6 edits in trunk

[EFL][WK2] WebView should be able to configure to set fixed layout
https://bugs.webkit.org/show_bug.cgi?id=128300

Reviewed by Gyuyoung Kim.

Source/WebKit2:

Currently, webview is created by setting fixed layout as true and there is no way to change the setting.
But some applications may do not want to use fixed layout so I'd like to add ewk APIs to configure to it.

  • UIProcess/API/efl/ewk_view.cpp:

(EWKViewCreate): Do not set to use fixed layout as default.
(ewk_view_layout_fixed_set):
(ewk_view_layout_fixed_get):

  • UIProcess/API/efl/ewk_view.h: Add ewk APIs to set fixed layout.
  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F):

Tools:

  • MiniBrowser/efl/main.c:

(window_create):
(elm_main): Add command argument option to use fixed layout.

Feb 6, 2014:

11:23 PM Changeset in webkit [163613] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix after r163612.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
10:37 PM Changeset in webkit [163612] by beidson@apple.com
  • 23 edits in trunk/Source

IDB: Remove the entirely unnecessary "Value Key" concept
https://bugs.webkit.org/show_bug.cgi?id=128360

Reviewed by Dan Bernstein.

Source/WebCore:

No new tests (No change in behavior)

All cursor operations were set up to pass a value key parameter around, but it was:
1 - Entirely unused
2 - The same thing that the primary key is supposed to be

  • Modules/indexeddb/IDBCallbacks.h:
  • Modules/indexeddb/IDBCursorBackend.cpp:

(WebCore::IDBCursorBackend::updateCursorData):
(WebCore::IDBCursorBackend::clear):

  • Modules/indexeddb/IDBCursorBackend.h:
  • Modules/indexeddb/IDBCursorBackendOperations.cpp:

(WebCore::CursorAdvanceOperation::perform):
(WebCore::CursorIterationOperation::perform):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::OpenCursorOperation::perform):

  • Modules/indexeddb/IDBServerConnection.h:
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::cursorAdvance):
(WebCore::IDBServerConnectionLevelDB::cursorIterate):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:

Source/WebKit2:

All cursor operations were set up to pass a value key parameter around, but it was:
1 - Entirely unused
2 - The same thing that the primary key is supposed to be

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::openCursor):
(WebKit::DatabaseProcessIDBConnection::cursorAdvance):
(WebKit::DatabaseProcessIDBConnection::cursorIterate):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::openCursor):
(WebKit::UniqueIDBDatabase::cursorAdvance):
(WebKit::UniqueIDBDatabase::cursorIterate):
(WebKit::UniqueIDBDatabase::openCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didOpenCursorInBackingStore):
(WebKit::UniqueIDBDatabase::advanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didAdvanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::iterateCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didIterateCursorInBackingStore):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce): Clean this logic up to not need temporaries,

and also to save the correct primary key (previously the 'value key')

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h:
  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::openCursor):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::advanceCursor):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::iterateCursor):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::didOpenCursor):
(WebKit::WebIDBServerConnection::didAdvanceCursor):
(WebKit::WebIDBServerConnection::didIterateCursor):
(WebKit::WebIDBServerConnection::openCursor):
(WebKit::WebIDBServerConnection::cursorAdvance):
(WebKit::WebIDBServerConnection::cursorIterate):

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
10:32 PM Changeset in webkit [163611] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix on GTK build since r163597

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseUpdatePreferences):

9:38 PM Changeset in webkit [163610] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Need a ObjC SPI to get the process identifier for web process.
https://bugs.webkit.org/show_bug.cgi?id=128356

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2014-02-06
Reviewed by Dan Bernstein.

Add a SPI for WKBrowsingContextController to return the process identifier of web
process in the current page.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController processIdentifier]):

  • UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h:
9:14 PM Changeset in webkit [163609] by ryuan.choi@samsung.com
  • 6 edits in trunk/Source/WebKit2

Unreviewed build fix on EFL build since r163597

preferences() changed return type from pointer to reference.

  • UIProcess/API/efl/ewk_settings.cpp:

(EwkSettings::preferences):
(ewk_settings_fullscreen_enabled_set):
(ewk_settings_fullscreen_enabled_get):
(ewk_settings_javascript_enabled_set):
(ewk_settings_javascript_enabled_get):
(ewk_settings_loads_images_automatically_set):
(ewk_settings_loads_images_automatically_get):
(ewk_settings_developer_extras_enabled_set):
(ewk_settings_developer_extras_enabled_get):
(ewk_settings_file_access_from_file_urls_allowed_set):
(ewk_settings_file_access_from_file_urls_allowed_get):
(ewk_settings_frame_flattening_enabled_set):
(ewk_settings_frame_flattening_enabled_get):
(ewk_settings_dns_prefetching_enabled_set):
(ewk_settings_dns_prefetching_enabled_get):
(ewk_settings_encoding_detector_enabled_set):
(ewk_settings_encoding_detector_enabled_get):
(ewk_settings_preferred_minimum_contents_width_set):
(ewk_settings_preferred_minimum_contents_width_get):
(ewk_settings_offline_web_application_cache_enabled_set):
(ewk_settings_offline_web_application_cache_enabled_get):
(ewk_settings_scripts_can_open_windows_set):
(ewk_settings_scripts_can_open_windows_get):
(ewk_settings_local_storage_enabled_set):
(ewk_settings_local_storage_enabled_get):
(ewk_settings_plugins_enabled_set):
(ewk_settings_plugins_enabled_get):
(ewk_settings_default_font_size_set):
(ewk_settings_default_font_size_get):
(ewk_settings_private_browsing_enabled_set):
(ewk_settings_private_browsing_enabled_get):
(ewk_settings_text_autosizing_enabled_set):
(ewk_settings_text_autosizing_enabled_get):
(ewk_settings_spatial_navigation_enabled_set):
(ewk_settings_spatial_navigation_enabled_get):
(EwkSettings::setDefaultTextEncodingName):

  • UIProcess/API/efl/ewk_settings_private.h:

(EwkSettings::EwkSettings):

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:

(WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy):

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::WebView):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::preferencesDidChange):

8:11 PM Changeset in webkit [163608] by Joseph Pecoraro
  • 2 edits in trunk

[iOS] make should build WebKit2
https://bugs.webkit.org/show_bug.cgi?id=128351

Reviewed by Daniel Bates.

  • Source/Makefile:
7:12 PM Changeset in webkit [163607] by gyuyoung.kim@samsung.com
  • 4 edits
    2 adds in trunk/LayoutTests

Add a test case for navigator.isProtocolHandlerRegistered
https://bugs.webkit.org/show_bug.cgi?id=128302

Reviewed by Anders Carlsson.

Add a test case for navigator.isProtocolHandlerRegistered. This new test will
check if "navigator.isProtocolHandlerRegistered" throws the proper exceptions
and returns a proper state of handler.

Currently, this function is only supported by EFL WK1 port.

  • fast/dom/is-protocol-handler-registered-expected.txt: Added.
  • fast/dom/is-protocol-handler-registered.html: Added.
  • platform/efl-wk2/TestExpectations: Skip this test.
  • platform/gtk/TestExpectations: ditto.
  • platform/mac/TestExpectations: ditto.
7:10 PM Changeset in webkit [163606] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.17.1/Source/JavaScriptCore

Merged r163595.

7:04 PM Changeset in webkit [163605] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.17.1/Source

Versioning.

7:02 PM Changeset in webkit [163604] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.17.1

New tag.

6:41 PM Changeset in webkit [163603] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash in MiniBrowser when using Command-W to close a WK2 window
https://bugs.webkit.org/show_bug.cgi?id=128355
<rdar://problem/16008531>

Reviewed by Simon Fraser.

Don't set the API clients to nullptr when closing the page, just create new empty ones instead.
Too much code depends on the clients never being null.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close):

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

[wk2] iOS should use accelerated drawing by default, except in the simulator
https://bugs.webkit.org/show_bug.cgi?id=128140
<rdar://problem/15974171>

Reviewed by Anders Carlsson.

  • Shared/WebPreferencesStore.h:

Turn full-page accelerated drawing on for iOS, except the simulator which doesn't support it.
Turn canvas accelerated drawing on for all platforms except the iOS simulator, for the same reason.
The defaults remain the same for non-iOS platforms.

6:29 PM Changeset in webkit [163601] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Fix DoYouEvenBench after r163429.

  • Scripts/webkitpy/performance_tests/perftest.py:
6:19 PM Changeset in webkit [163600] by commit-queue@webkit.org
  • 17 edits
    6 adds in trunk/Source

Add support for AVKit fullscreen to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=128143

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-02-06
Reviewed by Simon Fraser.

Source/WebCore:

Rename overloaded functions to prevent ambiguous template parameter
compile error in generated code.

Rename overloaded exitFullscreen to exitFullscreenWithCompletionHandler.
Rename overloaded enterFullscreen to enterFullscreenWithCompletionHandler.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(-[WebVideoFullscreenController exitFullscreen]):

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:
  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::enterFullscreenWithCompletionHandler):
(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
(WebVideoFullscreenInterfaceAVKit::exitFullscreenWithCompletionHandler):
(WebVideoFullscreenInterfaceAVKit::exitFullscreen):

  • platform/ios/WebVideoFullscreenModelMediaElement.h:

Source/WebKit2:

Add WebVideoFullscreenManager and WebVideoFullscreenManagerProxy that implement
WebVideoFullscreenModel and WebVideoFullscreenInterface.

  • DerivedSources.make:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

initialize member m_videoFullscreenManager

(WebKit::WebPageProxy::videoFullscreenManager):

add accessor for videoFullscreenManager

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebVideoFullscreenManagerProxy.cpp: Added.

(WebKit::WebVideoFullscreenManagerProxy::create):
(WebKit::WebVideoFullscreenManagerProxy::WebVideoFullscreenManagerProxy):
(WebKit::WebVideoFullscreenManagerProxy::~WebVideoFullscreenManagerProxy):

add basic creation for object.

(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerID):
(WebKit::WebVideoFullscreenManagerProxy::requestExitFullScreen):
(WebKit::WebVideoFullscreenManagerProxy::play):
(WebKit::WebVideoFullscreenManagerProxy::pause):
(WebKit::WebVideoFullscreenManagerProxy::togglePlayState):
(WebKit::WebVideoFullscreenManagerProxy::seekToTime):
(WebKit::WebVideoFullscreenManagerProxy::didExitFullscreen):

implement WebVideoFullscreenModel to send IPC message.

  • UIProcess/WebVideoFullscreenManagerProxy.h: Added.
  • UIProcess/WebVideoFullscreenManagerProxy.messages.in: Added.

this interface closely matches WebVideoFullscreenInterface

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::supportsFullscreenForNode):
(WebKit::WebChromeClient::enterFullscreenForNode):
(WebKit::WebChromeClient::exitFullscreenForNode):

Forward these requests onto the videoFullscreenManager

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::videoFullscreenManager):

accessor for m_videoFullscreenManager

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebVideoFullscreenManager.cpp: Added.

(WebKit::WebVideoFullscreenManager::create):
(WebKit::WebVideoFullscreenManager::WebVideoFullscreenManager):
(WebKit::WebVideoFullscreenManager::~WebVideoFullscreenManager):

add basic creation for object.

(WebKit::WebVideoFullscreenManager::supportsFullscreen):
(WebKit::WebVideoFullscreenManager::enterFullscreenForNode):
(WebKit::WebVideoFullscreenManager::exitFullscreenForNode):

implement interface called by WebChromeClient

(WebKit::WebVideoFullscreenManager::setDuration):
(WebKit::WebVideoFullscreenManager::setCurrentTime):
(WebKit::WebVideoFullscreenManager::setRate):
(WebKit::WebVideoFullscreenManager::setVideoDimensions):
(WebKit::WebVideoFullscreenManager::setVideoLayer):
(WebKit::WebVideoFullscreenManager::setVideoLayerID):
(WebKit::WebVideoFullscreenManager::enterFullscreen):
(WebKit::WebVideoFullscreenManager::exitFullscreen):

implement WebVideoFullscreenInterface to send IPC message.

  • WebProcess/WebVideoFullscreenManager.h: Added.
  • WebProcess/WebVideoFullscreenManager.messages.in: Added.

this interface closely matches WebVideoFullscreenModel

6:18 PM Changeset in webkit [163599] by jpfau@apple.com
  • 4 edits in trunk

loadSubframe can return null in SubframeLoader::loadOrRedirectSubframe
https://bugs.webkit.org/show_bug.cgi?id=128344

Reviewed by Ryosuke Niwa.

Source/WebCore:

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadOrRedirectSubframe):

LayoutTests:

6:16 PM Changeset in webkit [163598] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163595.

6:12 PM Changeset in webkit [163597] by andersca@apple.com
  • 13 edits in trunk/Source/WebKit2

Begin work on making preferences per page instead of per page group
https://bugs.webkit.org/show_bug.cgi?id=128349

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKPageGroup.cpp:

(WKPageGroupGetPreferences):

  • UIProcess/API/C/mac/WKPagePrivateMac.cpp:

(WKPageIsURLKnownHSTSHost):

  • UIProcess/API/mac/WKView.mm:

(-[WKView _preferencesDidChange]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createWebPage):

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorPageGroups::createInspectorPageGroup):
(WebKit::WebInspectorProxy::attach):
(WebKit::WebInspectorProxy::detach):
(WebKit::WebInspectorProxy::setAttachedWindowHeight):
(WebKit::WebInspectorProxy::setAttachedWindowWidth):
(WebKit::WebInspectorProxy::createInspectorPage):
(WebKit::WebInspectorProxy::shouldOpenAttached):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::preferences):

  • UIProcess/WebPageGroup.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::create):
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::isProcessSuppressible):
(WebKit::WebPageProxy::canShowMIMEType):
(WebKit::WebPageProxy::preferencesDidChange):
(WebKit::WebPageProxy::creationParameters):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::preferences):
(WebKit::WebPageProxy::setPreferences):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::createWebPage):

  • UIProcess/mac/ViewGestureController.mm:

(WebKit::ViewGestureController::beginSwipeGesture):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::createInspectorWindow):
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
(WebKit::WebInspectorProxy::windowFrameDidChange):
(WebKit::WebInspectorProxy::platformAttach):

6:04 PM Changeset in webkit [163596] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Use child iterator in HTMLDetailsElement::findMainSummary().
<https://webkit.org/b/128335>

Reviewed by Antti Koivisto.

  • html/HTMLDetailsElement.h:
  • html/HTMLDetailsElement.cpp:

(WebCore::HTMLDetailsElement::findMainSummary):

6:03 PM Changeset in webkit [163595] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Workaround REGRESSION(r163195-r163227): Crash beneath NSErrorUserInfoFromJSException when installing AppleInternal.mpkg
https://bugs.webkit.org/show_bug.cgi?id=128347

Reviewed by Geoffrey Garen.

Added a flag to VM class called m_ignoreStackLimit that disables stack limit checks.
We set this flag in JSContextGroupCreate() and JSGlobalContextCreateInGroup().

Disabled stack overflow tests in testapi.js since it uses these paths.

THis patch will be reverted as part of a comprehensive solution to the problem.

  • API/JSContextRef.cpp:

(JSContextGroupCreate):
(JSGlobalContextCreateInGroup):

  • API/tests/testapi.js:
  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::VM::updateStackLimitWithReservedZoneSize):

  • runtime/VM.h:

(JSC::VM::ignoreStackLimit):

6:01 PM Changeset in webkit [163594] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Add missing &.

  • css/StyleInvalidationAnalysis.cpp:

(WebCore::shouldDirtyAllStyle):

6:01 PM Changeset in webkit [163593] by Lucas Forschler
  • 3 edits in tags/Safari-538.16.2/Source/WebCore

Rollout r163558.

5:58 PM Changeset in webkit [163592] by Antti Koivisto
  • 11 edits in trunk/Source/WebCore

Check selectors exactly when invalidating style
https://bugs.webkit.org/show_bug.cgi?id=128321

Reviewed by Andreas Kling.

Selectors are now really fast to match with the JIT. Take advantage of this by invalidating
the document style exactly when a new stylesheet arrives (instead of using heuristics).

This reduces need for large style recalculations in some common cases.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::clearMatchedRules):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):

  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::hasMatchedRules):

  • css/RuleSet.h:

(WebCore::RuleSet::hasShadowPseudoElementRules):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matchRecursively):

  • css/SelectorChecker.h:


Add new mode where all pseudo elements match so we can invalidate their element.

  • css/StyleInvalidationAnalysis.cpp:

(WebCore::shouldDirtyAllStyle):
(WebCore::StyleInvalidationAnalysis::StyleInvalidationAnalysis):
(WebCore::invalidateStyleRecursively):
(WebCore::StyleInvalidationAnalysis::invalidateStyle):

Switch to real selector checker.

  • css/StyleInvalidationAnalysis.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::MatchedProperties::~MatchedProperties):

  • css/StyleResolver.h:

(WebCore::StyleResolver::mediaQueryEvaluator):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::analyzeStyleSheetChange):

5:57 PM Changeset in webkit [163591] by barraclough@apple.com
  • 15 edits in trunk/Source

Remove ChildProcess::m_activeTasks
https://bugs.webkit.org/show_bug.cgi?id=128342

Reviewed by Anders Carlson.

Currently we funnel a number of different user activities
to a single UserActivity object, which requires a call down
from WebCore to WebKit2. Split these out so we can track
them separately.

Source/WebCore:

  • page/ChromeClient.h:
    • removed [inc|dec]rementActivePageCount
  • page/PageThrottler.cpp:

(WebCore::PageThrottler::PageThrottler):

  • incrementActivePageCount -> beginActivity

(WebCore::PageThrottler::~PageThrottler):

  • decrementActivePageCount -> endActivity

(WebCore::PageThrottler::throttlePage):

  • decrementActivePageCount -> endActivity

(WebCore::PageThrottler::unthrottlePage):

  • incrementActivePageCount -> beginActivity
  • page/PageThrottler.h:
    • Added m_pageActivity.

Source/WebKit2:

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::PluginProcess):

  • added m_connectionActivity.
  • PluginProcess/PluginProcess.h:

(WebKit::PluginProcess::connectionActivity):

  • added m_connectionActivity.
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveSyncMessage):
(WebKit::WebProcessConnection::destroyPlugin):
(WebKit::WebProcessConnection::createPlugin):

  • use connectionActivity
  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::PluginProcess::platformInitializeProcess):

  • use a separate UserActivity for Java.
  • Shared/ActivityAssertion.cpp:

(WebKit::ActivityAssertion::ActivityAssertion):
(WebKit::ActivityAssertion::~ActivityAssertion):

  • Shared/ActivityAssertion.h:
    • ChildProcess -> UserActivity
  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::ChildProcess):

  • Shared/ChildProcess.h:
    • remove m_activeTasks.

(WebKit::ChildProcess::processSuppressionEnabled):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
    • removed [inc|dec]rementActivePageCount
5:56 PM Changeset in webkit [163590] by mhahnenberg@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

+[JSContext currentCallee] should return the currently executing JS function
https://bugs.webkit.org/show_bug.cgi?id=122621

Reviewed by Geoffrey Garen.

It would be useful if there was a +[JSContext currentObject] API which was
callable from ObjC API callbacks. Its purpose would be to allow convenient
access to the JSValue wrapper for the currently-executing block callback.

  • API/JSContext.h:
  • API/JSContext.mm:

(+[JSContext currentCallee]):
(-[JSContext beginCallbackWithData:calleeValue:thisValue:argumentCount:arguments:]):

  • API/JSContextInternal.h:
  • API/ObjCCallbackFunction.mm:

(JSC::objCCallbackFunctionCallAsFunction):
(JSC::objCCallbackFunctionCallAsConstructor):

  • API/tests/testapi.mm:
5:55 PM Changeset in webkit [163589] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r163558.
http://trac.webkit.org/changeset/163558
https://bugs.webkit.org/show_bug.cgi?id=128350

Breaks scrolling on certain websites (Requested by bfulgham on
#webkit).

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleWheelEvent):

  • page/WheelEventDeltaTracker.h:
5:33 PM Changeset in webkit [163588] by psolanki@apple.com
  • 3 edits
    1 add in trunk/Source/WebKit2

[iOS] WebKit2 can't access the GPU
https://bugs.webkit.org/show_bug.cgi?id=128345
<rdar://problem/15976084>

Reviewed by Tim Horton.

Add an entitlement to allow web process to access GPU.

  • Configurations/WebContent-iOS.entitlements: Added.
  • Configurations/WebContentService.Development.xcconfig:
  • Configurations/WebContentService.xcconfig:
5:30 PM Changeset in webkit [163587] by psolanki@apple.com
  • 5 edits in trunk/Source/WebKit2

[iOS][WebKit2] Remove JoinExistingSession from plist
https://bugs.webkit.org/show_bug.cgi?id=128318
<rdar://problem/15971612>

Reviewed by Tim Horton.

Remove JoinExistingSession key that is not available on iOS.

  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
5:29 PM Changeset in webkit [163586] by Chris Fleizach
  • 5 edits in trunk/Source/WebCore

AX: Crash in WebCore::AXObjectCache::computedObjectAttributeCache
https://bugs.webkit.org/show_bug.cgi?id=128310

Reviewed by Alexey Proskuryakov.

Be more careful about using axObjectCache() directly since it can return null.
I audited the usage cases of this method and ensured the ptr was not null in cases
where I thought we might get hit by this.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::parentObject):
(WebCore::AccessibilityNodeObject::menuForMenuButton):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
(WebCore::AccessibilityObject::findMatchingObjects):
(WebCore::AccessibilityObject::elementAccessibilityHitTest):
(WebCore::AccessibilityObject::axObjectCache):
(WebCore::AccessibilityObject::notifyIfIgnoredValueChanged):
(WebCore::AccessibilityObject::accessibilityIsIgnored):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::isTabItemSelected):
(WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
(WebCore::AccessibilityRenderObject::nodeIsTextControl):
(WebCore::AccessibilityRenderObject::activeDescendant):
(WebCore::AccessibilityRenderObject::handleAriaExpandedChanged):
(WebCore::AccessibilityRenderObject::observableObject):
(WebCore::AccessibilityRenderObject::textChanged):

  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::addChildScrollbar):
(WebCore::AccessibilityScrollView::webAreaObject):
(WebCore::AccessibilityScrollView::parentObject):
(WebCore::AccessibilityScrollView::parentObjectIfExists):

5:21 PM Changeset in webkit [163585] by zoltan@webkit.org
  • 6 edits
    2 adds in trunk

[CSS Shapes] Rounded Insets Let Content Overlap Shape
https://bugs.webkit.org/show_bug.cgi?id=127852

Reviewed by Bem Jones-Bey.

Source/WebCore:

Using LengthSize to FloatSize conversion from LengthSize.h lead to miscalculated
inset border radius, when the border radius was defined by percentages. This patch
fixes the behavior and removes the incorrect conversion.

Test: fast/shapes/shape-outside-floats/shape-outside-rounded-inset.html

  • css/LengthFunctions.cpp:

(WebCore::floatSizeForLengthSize): Add new helper function for LengthSize to FloatSize conversion.

  • css/LengthFunctions.h:
  • platform/LengthSize.h: Remove floatSize conversion.
  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): Use new helper function to calculate the right with for the inset border radius.

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-rounded-inset-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-rounded-inset.html: Added.
5:18 PM Changeset in webkit [163584] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix iOS builds after r163574

  • API/JSManagedValue.h:
5:17 PM Changeset in webkit [163583] by Lucas Forschler
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

5:13 PM Changeset in webkit [163582] by Lucas Forschler
  • 1 copy in tags/Safari-537.60.15

New Tag.

5:00 PM Changeset in webkit [163581] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

Regenerate JSTestObj now that ScriptArguments moved. Generator knows what to do.

Rubber-stamped by Zalan Bujtas.

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

(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):

4:58 PM Changeset in webkit [163580] by Lucas Forschler
  • 2 edits in branches/safari-537.60-branch/Source/WebKit/win

Merged r163557.

4:54 PM Changeset in webkit [163579] by jpfau@apple.com
  • 6 edits
    6 adds in trunk

Make adoption agency use the task queue
https://bugs.webkit.org/show_bug.cgi?id=109445

Reviewed by Ryosuke Niwa.

Source/WebCore:

Tests: fast/parser/adoption-agency-crash-01.html

fast/parser/adoption-agency-crash-02.html
fast/parser/adoption-agency-crash-03.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::insert):
(WebCore::executeInsertTask):
(WebCore::executeReparentTask):
(WebCore::executeInsertAlreadyParsedChildTask):
(WebCore::executeTakeAllChildrenTask):
(WebCore::executeTask):
(WebCore::HTMLConstructionSite::attachLater):
(WebCore::HTMLConstructionSite::executeQueuedTasks):
(WebCore::HTMLConstructionSite::insertTextNode):
(WebCore::HTMLConstructionSite::reparent):
(WebCore::HTMLConstructionSite::insertAlreadyParsedChild):
(WebCore::HTMLConstructionSite::takeAllChildren):
(WebCore::HTMLConstructionSite::fosterParent):

  • html/parser/HTMLConstructionSite.h:

(WebCore::HTMLConstructionSiteTask::HTMLConstructionSiteTask):
(WebCore::HTMLConstructionSiteTask::oldParent):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

LayoutTests:

  • TestExpectations:
  • fast/parser/adoption-agency-crash-01-expected.txt: Added.
  • fast/parser/adoption-agency-crash-01.html: Added.
  • fast/parser/adoption-agency-crash-02-expected.txt: Added.
  • fast/parser/adoption-agency-crash-02.html: Added.
  • fast/parser/adoption-agency-crash-03-expected.txt: Added.
  • fast/parser/adoption-agency-crash-03.html: Added.
4:51 PM Changeset in webkit [163578] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _remoteObjectRegistry]):

4:50 PM Changeset in webkit [163577] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix the setter definition from r163514.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-06

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
4:42 PM Changeset in webkit [163576] by mhahnenberg@apple.com
  • 20 edits
    1 copy in trunk/Source

Heap::writeBarrier shouldn't be static
https://bugs.webkit.org/show_bug.cgi?id=127807

Reviewed by Geoffrey Garen.

Currently it looks up the Heap in which to fire the write barrier by using
the cell passed to it. Almost every call site already has a reference to the
VM or the Heap itself. It seems wasteful to look it up all over again.

Source/JavaScriptCore:

(JSC::CopyWriteBarrier::set):

  • heap/Heap.cpp:

(JSC::Heap::writeBarrier):

  • heap/Heap.h:

(JSC::Heap::writeBarrier):

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

(JSC::JITWriteBarrierBase::set):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_write_barrier_slow):

  • runtime/Arguments.h:
  • runtime/JSWeakMap.cpp:
  • runtime/MapData.cpp:

(JSC::MapData::ensureSpaceForAppend):

  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::PropertyTable):

  • runtime/Structure.h:
  • runtime/WriteBarrier.h:
  • runtime/WriteBarrierInlines.h: Added.

Source/WebCore:

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::JSEventListener):

  • bindings/js/JSEventListener.h:

(WebCore::JSEventListener::jsFunction):

4:33 PM Changeset in webkit [163575] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit

Unreviewed Windows Build Fix after r163568.

Remove old symbol export. It is now const. Waiting for bot to produce new symbol.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
4:29 PM Changeset in webkit [163574] by mhahnenberg@apple.com
  • 7 edits
    1 add in trunk/Source/JavaScriptCore

JSManagedValue should automatically call removeManagedReference:withOwner: upon dealloc
https://bugs.webkit.org/show_bug.cgi?id=124053

Reviewed by Geoffrey Garen.

  • API/JSManagedValue.h:
  • API/JSManagedValue.mm:

(+[JSManagedValue managedValueWithValue:andOwner:]):
(-[JSManagedValue initWithValue:]):
(-[JSManagedValue dealloc]):
(-[JSManagedValue didAddOwner:]):
(-[JSManagedValue didRemoveOwner:]):

  • API/JSManagedValueInternal.h: Added.
  • API/JSVirtualMachine.mm:

(-[JSVirtualMachine addManagedReference:withOwner:]):
(-[JSVirtualMachine removeManagedReference:withOwner:]):

  • API/WebKitAvailability.h:
  • API/tests/testapi.mm:

(-[TextXYZ click]):

4:29 PM Changeset in webkit [163573] by ljaehun.lim@samsung.com
  • 3 edits in trunk/Source/WebCore

Unreviewed, fix build error on 64bit debug build

Apply static_cast<long long> to int64_t variable when '%lli' is used.

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::clearObjectStore):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::setActive):

4:28 PM Changeset in webkit [163572] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS] Remove duplicate call to RunLoop::initializeMainRunLoop
https://bugs.webkit.org/show_bug.cgi?id=128328

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-06
Reviewed by Dan Bernstein.

  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView initWithFrame:configuration:]):
(-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):

4:25 PM Changeset in webkit [163571] by Brent Fulgham
  • 2 edits in branches/safari-537.75-branch/Source/WebKit/win

Merge r163557.

2014-02-06 Brent Fulgham <Brent Fulgham>

[Win] Correct IME Regression after r141479
https://bugs.webkit.org/show_bug.cgi?id=128323
<rdar://problem/15952986>

Reviewed by Tim Horton.

  • WebView.cpp: (WebView::updateSelectionForIME): Refactoring flipped the meaning of the test used to select the resetIME case. Corrected for behavior of new cancel method.
4:03 PM Changeset in webkit [163570] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Add support for multiple sources for AutoInstaller
https://bugs.webkit.org/show_bug.cgi?id=124848

Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-02-06
Reviewed by Ryosuke Niwa.

The autoinstaller in the webkitpy currently fails if the download source of a package is unavailable.
This patch adds support for multiple sources to the script. The sources are provided in three environment variables.
If it exists, the script will look at a local cache. If not, it will try to download the package from the original url.
If it fails, it gets a mirror from the corresponding environment variable.(One for sourceforge.org and one for pypi.python.org)

  • Scripts/webkitpy/common/system/autoinstall.py:

(AutoInstaller._copy_unpackaged_files_from_local_cache): If the package is not packaged in its original form,
this method will copy it to the scratch directory. Otherwise it would be deleted from the cache, which we do not want.
(AutoInstaller._prepare_package): If the package is not zipped or tarred, and the file is in the cache, the
_copy_unpackaged_files_from_local_cache function is called.
(AutoInstaller._parse_colon_separated_mirrors_from_env): This will read the mirrors from the environment variables if possible,
and prepares them for further use.
(AutoInstaller):
(AutoInstaller._replace_domain_with_next_mirror): If the original download url fails, it is replaced by a mirror provided
in the environment variables. The function identifies the original source, and replaces it with a mirror. If it can't be done,
the return url will be None, indicating that no mirrors are provided, or none of them could be reached.
(AutoInstaller._download_to_stream): The timeout for one try is now limited to 30 seconds. Without this, the script waited for
roughly 4 minutes before retrying. After three failiures the script will try to switch to a mirror.
(AutoInstaller._check_package_in_local_autoinstall_cache): This method searches the cache for the currently downloaded module.
If it's found there, its path is returned.
(AutoInstaller._download): Before downloading the module, it is looked up in the cache. If it's not found there,
the script will continue with the download, and cache the module.

3:45 PM Changeset in webkit [163569] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

[iOS] Set UIProcess pid in WebProcess initialization for Remote Inspector
https://bugs.webkit.org/show_bug.cgi?id=128338

Reviewed by Sam Weinig.

  • WebProcess/ios/WebProcessIOS.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

3:45 PM Changeset in webkit [163568] by Joseph Pecoraro
  • 135 edits
    3 copies
    15 moves
    10 adds
    2 deletes in trunk

Web Inspector: Add Console support to JSContext Inspection
https://bugs.webkit.org/show_bug.cgi?id=127941

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:

Add new files.

  • inspector/agents/InspectorConsoleAgent.cpp: Renamed from Source/WebCore/inspector/InspectorConsoleAgent.cpp.
  • inspector/agents/InspectorConsoleAgent.h: Added.

New agent moved from WebCore. Rename a method to work in JS only context.

  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
Instantiate ConsoleAgent.

  • inspector/agents/JSGlobalObjectConsoleAgent.h: Copied from Source/WebCore/inspector/PageInjectedScriptHost.h.
  • inspector/agents/JSGlobalObjectConsoleAgent.cpp: Copied from Source/WebCore/inspector/PageInjectedScriptHost.h.

(Inspector::JSGlobalObjectConsoleAgent::JSGlobalObjectConsoleAgent):
(Inspector::JSGlobalObjectConsoleAgent::setMonitoringXHREnabled):
(Inspector::JSGlobalObjectConsoleAgent::addInspectedNode):
(Inspector::JSGlobalObjectConsoleAgent::addInspectedHeapObject):
JSGlobalObject implementation.

  • inspector/agents/JSGlobalObjectDebuggerAgent.h:
  • inspector/agents/JSGlobalObjectDebuggerAgent.cpp:

(Inspector::JSGlobalObjectDebuggerAgent::JSGlobalObjectDebuggerAgent):
(Inspector::JSGlobalObjectDebuggerAgent::breakpointActionLog):
Use ConsoleAgent to report logs.

  • inspector/ConsoleMessage.cpp: Renamed from Source/WebCore/inspector/ConsoleMessage.cpp.
  • inspector/ConsoleMessage.h: Renamed from Source/WebCore/inspector/ConsoleMessage.h.
  • inspector/ConsoleTypes.h: Copied from Source/WebCore/inspector/ConsoleAPITypes.h.
  • inspector/IdentifiersFactory.cpp: Renamed from Source/WebCore/inspector/IdentifiersFactory.cpp.
  • inspector/IdentifiersFactory.h: Renamed from Source/WebCore/inspector/IdentifiersFactory.h.
  • inspector/ScriptArguments.cpp: Renamed from Source/WebCore/inspector/ScriptArguments.cpp.
  • inspector/ScriptArguments.h: Renamed from Source/WebCore/inspector/ScriptArguments.h.
  • inspector/ScriptCallFrame.cpp: Renamed from Source/WebCore/inspector/ScriptCallFrame.cpp.
  • inspector/ScriptCallFrame.h: Renamed from Source/WebCore/inspector/ScriptCallFrame.h.
  • inspector/ScriptCallStack.cpp: Renamed from Source/WebCore/inspector/ScriptCallStack.cpp.
  • inspector/ScriptCallStack.h: Renamed from Source/WebCore/inspector/ScriptCallStack.h.
  • inspector/ScriptCallStackFactory.cpp: Renamed from Source/WebCore/bindings/js/ScriptCallStackFactory.cpp.
  • inspector/ScriptCallStackFactory.h: Renamed from Source/WebCore/bindings/js/ScriptCallStackFactory.h.
  • inspector/protocol/Console.json: Renamed from Source/WebCore/inspector/protocol/Console.json.
  • inspector/scripts/generate-combined-inspector-json.py:

Source/WebCore:

  • Move InspectorConsoleAgent and dependencies to JavaScriptCore and into the Inspector namespace.
  • Update Console Message enum types to enum classes and update all users to the new, simpler names.
  • Since we are updating addConsoleMessage callsites anyways, add ASCIILiteral where appropriate.
  • Add WebConsoleAgent base of Page/Worker ConsoleAgent to implement what could not be pushed into JavaScriptCore.
  • CMakeLists.txt:
  • DerivedSources.make:
  • ForwardingHeaders/inspector/ConsoleMessage.h: Added.
  • ForwardingHeaders/inspector/ConsoleTypes.h: Added.
  • ForwardingHeaders/inspector/IdentifiersFactory.h: Added.
  • ForwardingHeaders/inspector/ScriptArguments.h: Added.
  • ForwardingHeaders/inspector/ScriptCallFrame.h: Added.
  • ForwardingHeaders/inspector/ScriptCallStack.h: Added.
  • ForwardingHeaders/inspector/ScriptCallStackFactory.h: Added.
  • ForwardingHeaders/inspector/agents/InspectorConsoleAgent.h: Added.
  • GNUmakefile.am:
  • GNUmakefile.list.am:

Add / remove files from builds.

  • inspector/WebConsoleAgent.h:
  • inspector/WebConsoleAgent.cpp: Added.

(WebCore::WebConsoleAgent::WebConsoleAgent):
(WebCore::WebConsoleAgent::setMonitoringXHREnabled):
(WebCore::WebConsoleAgent::frameWindowDiscarded):
(WebCore::WebConsoleAgent::didFinishXHRLoading):
(WebCore::WebConsoleAgent::didReceiveResponse):
(WebCore::WebConsoleAgent::didFailLoading):
(WebCore::WebConsoleAgent::addInspectedHeapObject):
Implement what could not be pushed down into JavaScriptCore.

  • inspector/InstrumentingAgents.h:

(WebCore::InstrumentingAgents::webConsoleAgent):
(WebCore::InstrumentingAgents::setWebConsoleAgent):
Hold a WebConsoleAgent instead of InspectorConsoleAgent.

  • Modules/indexeddb/IDBCursor.cpp:
  • Modules/indexeddb/IDBDatabase.cpp:
  • Modules/indexeddb/IDBTransaction.cpp:
  • Modules/quota/DOMWindowQuota.cpp:

(WebCore::DOMWindowQuota::webkitStorageInfo):

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::looping):
(WebCore::AudioBufferSourceNode::setLooping):

  • Modules/webaudio/AudioContext.cpp:
  • Modules/webaudio/PannerNode.cpp:

(WebCore::PannerNode::setPanningModel):

  • Modules/webdatabase/DatabaseBase.cpp:

(WebCore::DatabaseBase::logErrorMessage):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::logErrorMessage):

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::connect):
(WebCore::WebSocket::send):
(WebCore::WebSocket::close):
(WebCore::WebSocket::setBinaryType):

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::fail):
(WebCore::WebSocketChannel::didFailSocketStream):

  • Modules/websockets/WebSocketHandshake.cpp:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSAudioContextCustom.cpp:

(WebCore::JSAudioContextConstructor::constructJSAudioContext):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSDOMBinding.cpp:
  • bindings/js/JSSubtleCryptoCustom.cpp:

(WebCore::JSSubtleCrypto::encrypt):
(WebCore::JSSubtleCrypto::decrypt):
(WebCore::JSSubtleCrypto::sign):
(WebCore::JSSubtleCrypto::verify):
(WebCore::JSSubtleCrypto::wrapKey):
(WebCore::JSSubtleCrypto::unwrapKey):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::canExecuteScripts):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallWith):

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

(WebCore::CSSParser::logError):

  • css/MediaList.cpp:

(WebCore::addResolutionWarningMessageToConsole):

  • dom/Document.cpp:

(WebCore::Document::logExceptionToConsole):
(WebCore::Document::processHttpEquiv):
(WebCore::Document::addMessage):

  • dom/Document.h:
  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::executeScript):
(WebCore::ScriptElement::notifyFinished):

  • dom/ScriptExecutionContext.cpp:
  • dom/ScriptExecutionContext.h:
  • dom/ViewportArguments.cpp:

(WebCore::viewportErrorMessageLevel):
(WebCore::reportViewportWarning):

  • fileapi/Blob.cpp:
  • fileapi/WebKitBlobBuilder.cpp:
  • html/HTMLFormControlElement.cpp:

(WebCore::shouldAutofocus):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::validateInteractively):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::getImageData):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::printWarningToConsole):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::didBlockScript):

  • inspector/CommandLineAPIHost.cpp:
  • inspector/CommandLineAPIHost.h:

(WebCore::CommandLineAPIHost::init):

  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorConsoleAgent.h: Removed.
  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore::InspectorInstrumentation::consoleCount):
(WebCore::InspectorInstrumentation::stopConsoleTiming):
(WebCore::InspectorInstrumentation::consoleTimeStamp):
(WebCore::InspectorInstrumentation::addProfile):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorDOMAgent.cpp:
  • inspector/InspectorFrontendHost.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::frameWindowDiscardedImpl):
(WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
(WebCore::InspectorInstrumentation::didFailLoadingImpl):
(WebCore::InspectorInstrumentation::didFinishXHRLoadingImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::isConsoleAssertMessage):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::consoleCountImpl):
(WebCore::InspectorInstrumentation::startConsoleTimingImpl):
(WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
(WebCore::InspectorInstrumentation::consoleAgentEnabled):

  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorLayerTreeAgent.cpp:
  • inspector/InspectorPageAgent.cpp:
  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
(WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):

  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::buildInitiatorObject):

  • inspector/InspectorTimelineAgent.cpp:
  • inspector/InstrumentingAgents.cpp:

(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):

  • inspector/PageConsoleAgent.cpp:

(WebCore::PageConsoleAgent::PageConsoleAgent):
(WebCore::PageConsoleAgent::clearMessages):
(WebCore::PageConsoleAgent::addInspectedNode):

  • inspector/PageConsoleAgent.h:
  • inspector/PageDebuggerAgent.cpp:

(WebCore::PageDebuggerAgent::breakpointActionLog):

  • inspector/PageInjectedScriptHost.h:
  • inspector/PageInjectedScriptManager.h:
  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createGenericRecord):
(WebCore::WebConsoleAgent::~WebConsoleAgent):

  • inspector/WorkerConsoleAgent.cpp:

(WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
(WebCore::WorkerConsoleAgent::addInspectedNode):

  • inspector/WorkerConsoleAgent.h:
  • inspector/WorkerDebuggerAgent.cpp:

(WebCore::WorkerDebuggerAgent::breakpointActionLog):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::responseReceived):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::submitForm):
(WebCore::FrameLoader::reportLocalLoadFailed):
(WebCore::FrameLoader::handleBeforeUnloadEvent):
(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
(WebCore::createWindow):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::notifyFinished):

  • loader/MixedContentChecker.cpp:

(WebCore::MixedContentChecker::logWarning):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::corsPolicyPreventedLoad):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):
(WebCore::ApplicationCacheGroup::didReceiveResponse):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::printAccessDeniedMessage):

  • page/ChromeClient.h:
  • page/Console.cpp:

(WebCore::internalAddMessage):
(WebCore::Console::debug):
(WebCore::Console::error):
(WebCore::Console::log):
(WebCore::Console::warn):
(WebCore::Console::dir):
(WebCore::Console::dirxml):
(WebCore::Console::table):
(WebCore::Console::clear):
(WebCore::Console::trace):
(WebCore::Console::assertCondition):
(WebCore::Console::group):
(WebCore::Console::groupCollapsed):
(WebCore::Console::groupEnd):

  • page/Console.h:
  • page/ConsoleTypes.h: Removed.
  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::reportViolation):
(WebCore::ContentSecurityPolicy::logToConsole):

  • page/DOMSecurityPolicy.cpp:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
(WebCore::DOMWindow::close):
(WebCore::DOMWindow::printErrorMessage):

  • page/DOMWindow.h:
  • page/EventSource.cpp:

(WebCore::EventSource::didReceiveResponse):
(WebCore::EventSource::didFailAccessControlCheck):

  • page/PageConsole.cpp:

(WebCore::PageConsole::printMessageSourceAndLevelPrefix):
(WebCore::PageConsole::addMessage):

  • page/PageConsole.h:
  • page/PointerLockController.cpp:

(WebCore::PointerLockController::requestPointerLock):

  • platform/CrossThreadCopier.h:
  • rendering/shapes/ShapeInfo.cpp:

(WebCore::checkShapeImageOrigin):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::reportMessage):
(WebCore::SVGDocumentExtensions::reportWarning):
(WebCore::SVGDocumentExtensions::reportError):

  • testing/Internals.cpp:

(WebCore::Internals::consoleMessageArgumentCounts):

  • workers/DefaultSharedWorkerRepository.cpp:
  • workers/SharedWorkerGlobalScope.cpp:

(WebCore::SharedWorkerGlobalScope::logExceptionToConsole):

  • workers/SharedWorkerGlobalScope.h:
  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::addMessageToWorkerConsole):

  • workers/WorkerGlobalScope.h:
  • workers/WorkerMessagingProxy.cpp:
  • workers/WorkerReportingProxy.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::logConsoleError):
(WebCore::XMLHttpRequest::send):

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::parseErrorFunc):

Source/WebInspectorUI:

  • UserInterface/InspectorJSBackendCommands.js:
  • UserInterface/InspectorWebBackendCommands.js:

ConsoleAgent moved to JavaScript section.

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::addMessageToConsole):

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(stringForMessageSource):
(stringForMessageLevel):
(WebChromeClient::addMessageToConsole):

Source/WebKit/win:

  • WebCoreSupport/WebChromeClient.h:

Source/WebKit/wince:

  • WebCoreSupport/ChromeClientWinCE.h:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.h:

LayoutTests:

  • inspector-protocol/page/deny-X-FrameOption-expected.txt:

Update with better line/column numbers now.

3:29 PM Changeset in webkit [163567] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add preferences property to WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=128337

Reviewed by Sam Weinig.

Also use RetainPtr for processClass and preferences so we won't leak them.

  • UIProcess/API/Cocoa/WKWebViewConfiguration.h:
  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration processClass]):
(-[WKWebViewConfiguration setProcessClass:]):
(-[WKWebViewConfiguration preferences]):
(-[WKWebViewConfiguration setPreferences:]):

3:24 PM Changeset in webkit [163566] by benjamin@webkit.org
  • 2 edits
    1 delete in trunk/Tools

Remove run-test-webkit-api
https://bugs.webkit.org/show_bug.cgi?id=118145

Reviewed by Csaba Osztrogonác.

Having two scripts doing the same thing is confusing. There are also cases failing
on run-test-webkit-api since it does not restart a new process for each test.

  • Scripts/run-test-webkit-api: Removed.
  • Scripts/webkitdirs.pm:
3:06 PM Changeset in webkit [163565] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Convert a parameter to PassRefPtr
https://bugs.webkit.org/show_bug.cgi?id=128327

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-06
Reviewed by Timothy Hatcher.

  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addProfile):

  • inspector/InspectorInstrumentation.h:
2:40 PM Changeset in webkit [163564] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Add a remoteObjectRegistry property to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128331

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView resizeSubviewsWithOldSize:]):
(-[WKWebView _remoteObjectRegistry]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
2:04 PM Changeset in webkit [163563] by andersca@apple.com
  • 5 edits
    3 copies in trunk/Source/WebKit2

Add WKNavigationResponse class
https://bugs.webkit.org/show_bug.cgi?id=128326

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKFrameInfo.mm:

(-[WKFrameInfo initWithWebFrameProxy:WebKit::]):

  • UIProcess/API/Cocoa/WKFrameInfoInternal.h:
  • UIProcess/API/Cocoa/WKNavigationResponse.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKFrameInfo.mm.
  • UIProcess/API/Cocoa/WKNavigationResponse.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKFrameInfo.mm.

(-[WKNavigationResponse frame]):
(-[WKNavigationResponse setFrame:]):
(-[WKNavigationResponse response]):
(-[WKNavigationResponse setResponse:]):

  • UIProcess/API/Cocoa/WKNavigationResponseInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKFrameInfoInternal.h.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):

  • WebKit2.xcodeproj/project.pbxproj:
1:53 PM Changeset in webkit [163562] by oliver@apple.com
  • 41 edits in trunk

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

Reviewed by Mark Lam.

Source/WebCore:

This patch does the actual work of moving dom attributes up the
prototype chain. There are still a few class and edge cases
where we can't do this without impacting existing behaviour,
but they can be fixed separately in later patches.

  • bindings/js/JSDOMBinding.h:

(WebCore::getStaticPropertySlotEntryWithoutCaching):
(WebCore::getStaticPropertySlotEntryWithoutCaching<JSDOMWrapper>):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(HasComplexGetOwnProperty):
(ConstructorShouldBeOnInstance):
(AttributeShouldBeOnInstance):
(InstanceAttributeCount):
(PrototypeAttributeCount):
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateAttributesHashTable):
(GenerateImplementation):

LayoutTests:

Update layout test results

  • fast/dom/wrapper-classes-expected.txt:
  • js/dom/constructor-attributes-expected.txt:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/script-tests/constructor-attributes.js:
1:35 PM Changeset in webkit [163561] by Lucas Forschler
  • 3 edits in tags/Safari-538.16.2/Source/WebCore

Merged r163558.

1:24 PM Changeset in webkit [163560] by akling@apple.com
  • 38 edits
    29 deletes in trunk

Remove display:run-in support.
<https://webkit.org/b/127874>
<rdar://problem/15926949>

Source/WebCore:

Remove support for the "run-in" display type. Blink recently removed
this and Gecko never supported in the first place.

Rubber-stamped by Anders Carlsson.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):

  • css/CSSValueKeywords.in:
  • css/StyleResolver.cpp:

(WebCore::equivalentBlockDisplay):
(WebCore::doesNotInheritTextDecoration):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::makeChildrenNonInline):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::renderName):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::willBeDestroyed):
(WebCore::shouldCheckLines):
(WebCore::getHeightForLineCount):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::createFor):
(WebCore::RenderElement::destroyLeftoverChildren):

  • rendering/RenderFileUploadControl.cpp:
  • rendering/RenderFileUploadControl.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::updateFromStyle):
(WebCore::RenderInline::renderName):
(WebCore::RenderInline::clippedOverflowRectForRepaint):

  • rendering/RenderListBox.cpp:
  • rendering/RenderListBox.h:
  • rendering/RenderMenuList.cpp:
  • rendering/RenderMenuList.h:
  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/RenderProgress.cpp:
  • rendering/RenderProgress.h:
  • rendering/RenderSlider.cpp:
  • rendering/RenderSlider.h:
  • rendering/RenderTextControl.cpp:
  • rendering/RenderTextControl.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):

  • rendering/style/RenderStyleConstants.h:

Source/WebInspectorUI:

Rubber-stamped by Anders Carlsson.

  • UserInterface/CSSKeywordCompletions.js:
  • UserInterface/External/CodeMirror/css.js:

LayoutTests:

Rubber-stamped by Anders Carlsson.

  • editing/undo/undo-after-event-edited.html:
  • fast/css-generated-content/generated-runin-expected.html: Removed.
  • fast/css-generated-content/generated-runin.html: Removed.
  • fast/lists/parent-box-not-box-crash-expected.txt: Removed.
  • fast/lists/parent-box-not-box-crash.html: Removed.
  • fast/multicol/span/runin-continuation-crash-expected.txt: Removed.
  • fast/multicol/span/runin-continuation-crash.html: Removed.
  • fast/runin/001.html: Removed.
  • fast/runin/002.html: Removed.
  • fast/runin/crash-when-reparent-sibling-expected.txt: Removed.
  • fast/runin/crash-when-reparent-sibling.html: Removed.
  • fast/runin/generated-content-crash-expected.png: Removed.
  • fast/runin/generated-content-crash-expected.txt: Removed.
  • fast/runin/generated-content-crash.html: Removed.
  • fast/runin/generated.html: Removed.
  • fast/runin/generated2.html: Removed.
  • fast/runin/generated3.html: Removed.
  • fast/runin/generated4.html: Removed.
  • fast/runin/input-text-runin-expected.txt: Removed.
  • fast/runin/input-text-runin.html: Removed.
  • fast/runin/insert-before-run-in-expected.png: Removed.
  • fast/runin/insert-before-run-in-expected.txt: Removed.
  • fast/runin/insert-before-run-in.html: Removed.
  • fast/runin/move-run-in-original-position-crash-expected.png: Removed.
  • fast/runin/move-run-in-original-position-crash-expected.txt: Removed.
  • fast/runin/move-run-in-original-position-crash.html: Removed.
  • fast/runin/nonblock-runin-expected.txt: Removed.
  • fast/runin/nonblock-runin.html: Removed.
  • fast/runin/progress-run-in-crash-expected.txt: Removed.
  • fast/runin/progress-run-in-crash.html: Removed.
  • fast/runin/run-in-after-run-in-expected.png: Removed.
  • fast/runin/run-in-after-run-in-expected.txt: Removed.
  • fast/runin/run-in-after-run-in.html: Removed.
  • fast/runin/run-in-layer-not-removed-crash-expected.txt: Removed.
  • fast/runin/run-in-layer-not-removed-crash.html: Removed.
  • fast/runin/run-in-parent-add-child-expected.png: Removed.
  • fast/runin/run-in-parent-add-child-expected.txt: Removed.
  • fast/runin/run-in-parent-add-child.html: Removed.
  • fast/runin/run-in-parent-block-child-add-and-intrude-expected.png: Removed.
  • fast/runin/run-in-parent-block-child-add-and-intrude-expected.txt: Removed.
  • fast/runin/run-in-parent-block-child-add-and-intrude.html: Removed.
  • fast/runin/run-in-parent-block-child-add-expected.png: Removed.
  • fast/runin/run-in-parent-block-child-add-expected.txt: Removed.
  • fast/runin/run-in-parent-block-child-add.html: Removed.
  • fast/runin/runin-between-list-marker-and-before-content-expected.png: Removed.
  • fast/runin/runin-between-list-marker-and-before-content-expected.txt: Removed.
  • fast/runin/runin-between-list-marker-and-before-content.html: Removed.
  • fast/runin/runin-continuations-crash-expected.txt: Removed.
  • fast/runin/runin-continuations-crash.html: Removed.
  • fast/runin/runin-div-before-child-expected.png: Removed.
  • fast/runin/runin-div-before-child-expected.txt: Removed.
  • fast/runin/runin-div-before-child.html: Removed.
  • fast/runin/runin-generated-before-content-expected.png: Removed.
  • fast/runin/runin-generated-before-content-expected.txt: Removed.
  • fast/runin/runin-generated-before-content.html: Removed.
  • fast/runin/runin-into-div-with-float-child-expected.png: Removed.
  • fast/runin/runin-into-div-with-float-child-expected.txt: Removed.
  • fast/runin/runin-into-div-with-float-child.html: Removed.
  • fast/runin/runin-not-go-into-float-expected.png: Removed.
  • fast/runin/runin-not-go-into-float-expected.txt: Removed.
  • fast/runin/runin-not-go-into-float.html: Removed.
  • fast/runin/runin-remove-child-simple-expected.txt: Removed.
  • fast/runin/runin-remove-child-simple.html: Removed.
  • fast/runin/runin-reparent-crash-expected.txt: Removed.
  • fast/runin/runin-reparent-crash.html: Removed.
  • fast/runin/runin-sibling-inline-expected.txt: Removed.
  • fast/runin/runin-sibling-inline.html: Removed.
  • fast/runin/runin-table-before-child-expected.png: Removed.
  • fast/runin/runin-table-before-child-expected.txt: Removed.
  • fast/runin/runin-table-before-child.html: Removed.
  • fast/runin/select-runin-expected.txt: Removed.
  • fast/runin/select-runin.html: Removed.
  • fast/runin/textarea-runin-expected.txt: Removed.
  • fast/runin/textarea-runin.html: Removed.
  • fast/table/form-with-table-style.html: Removed.
  • platform/efl/fast/runin/001-expected.png: Removed.
  • platform/efl/fast/runin/001-expected.txt: Removed.
  • platform/efl/fast/runin/002-expected.png: Removed.
  • platform/efl/fast/runin/002-expected.txt: Removed.
  • platform/efl/fast/runin/generated-expected.png: Removed.
  • platform/efl/fast/runin/generated-expected.txt: Removed.
  • platform/efl/fast/runin/generated2-expected.png: Removed.
  • platform/efl/fast/runin/generated2-expected.txt: Removed.
  • platform/efl/fast/runin/generated3-expected.png: Removed.
  • platform/efl/fast/runin/generated3-expected.txt: Removed.
  • platform/efl/fast/runin/generated4-expected.png: Removed.
  • platform/efl/fast/runin/generated4-expected.txt: Removed.
  • platform/efl/fast/runin/runin-generated-before-content-expected.png: Removed.
  • platform/gtk/fast/runin/001-expected.png: Removed.
  • platform/gtk/fast/runin/001-expected.txt: Removed.
  • platform/gtk/fast/runin/002-expected.png: Removed.
  • platform/gtk/fast/runin/002-expected.txt: Removed.
  • platform/gtk/fast/runin/generated-content-crash-expected.png: Removed.
  • platform/gtk/fast/runin/generated-expected.png: Removed.
  • platform/gtk/fast/runin/generated-expected.txt: Removed.
  • platform/gtk/fast/runin/generated2-expected.png: Removed.
  • platform/gtk/fast/runin/generated2-expected.txt: Removed.
  • platform/gtk/fast/runin/generated3-expected.png: Removed.
  • platform/gtk/fast/runin/generated3-expected.txt: Removed.
  • platform/gtk/fast/runin/generated4-expected.png: Removed.
  • platform/gtk/fast/runin/generated4-expected.txt: Removed.
  • platform/gtk/fast/runin/insert-before-run-in-expected.png: Removed.
  • platform/gtk/fast/runin/move-run-in-original-position-crash-expected.png: Removed.
  • platform/gtk/fast/runin/run-in-after-run-in-expected.png: Removed.
  • platform/gtk/fast/runin/run-in-parent-add-child-expected.png: Removed.
  • platform/gtk/fast/runin/run-in-parent-block-child-add-and-intrude-expected.png: Removed.
  • platform/gtk/fast/runin/run-in-parent-block-child-add-expected.png: Removed.
  • platform/gtk/fast/runin/runin-between-list-marker-and-before-content-expected.png: Removed.
  • platform/gtk/fast/runin/runin-div-before-child-expected.png: Removed.
  • platform/gtk/fast/runin/runin-generated-before-content-expected.png: Removed.
  • platform/gtk/fast/runin/runin-into-div-with-float-child-expected.png: Removed.
  • platform/gtk/fast/runin/runin-not-go-into-float-expected.png: Removed.
  • platform/gtk/fast/runin/runin-table-before-child-expected.png: Removed.
  • platform/mac/fast/runin/001-expected.png: Removed.
  • platform/mac/fast/runin/001-expected.txt: Removed.
  • platform/mac/fast/runin/002-expected.png: Removed.
  • platform/mac/fast/runin/002-expected.txt: Removed.
  • platform/mac/fast/runin/generated-expected.png: Removed.
  • platform/mac/fast/runin/generated-expected.txt: Removed.
  • platform/mac/fast/runin/generated2-expected.png: Removed.
  • platform/mac/fast/runin/generated2-expected.txt: Removed.
  • platform/mac/fast/runin/generated3-expected.png: Removed.
  • platform/mac/fast/runin/generated3-expected.txt: Removed.
  • platform/mac/fast/runin/generated4-expected.png: Removed.
  • platform/mac/fast/runin/generated4-expected.txt: Removed.
  • platform/win/fast/runin/nonblock-runin-expected.txt: Removed.
1:20 PM Changeset in webkit [163559] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Remove leftover cruft from scoped stylesheet implementation.
<https://webkit.org/b/128139>

Kill some pointless non-null checks that were left behind by the
removed <style scoped> code. Also pruned outdated comments and
FIXME's about such scopes.

Reviewed by Antti Koivisto.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::collectMatchingRules):

  • css/RuleSet.cpp:

(WebCore::RuleSet::addChildRules):
(WebCore::RuleSet::addRulesFromSheet):

  • css/RuleSet.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::checkRegionStyle):

12:43 PM Changeset in webkit [163558] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

Wheel events don't latch to inner scrollable elements
https://bugs.webkit.org/show_bug.cgi?id=128225

Reviewed by Beth Dakin.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleWheelEvent): Identify the case
where we have hit the end of a scroll, and treat that as a
valid 'handled' case. If the scroll event is just starting,
treat end-of-scroll as unhandled so the parent element can
handle things.

  • page/WheelEventDeltaTracker.h:

(WebCore::WheelEventDeltaTracker::isFirstWheelEvent): Added.

12:38 PM Changeset in webkit [163557] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit/win

[Win] Correct IME Regression after r141479
https://bugs.webkit.org/show_bug.cgi?id=128323
<rdar://problem/15952986>

Reviewed by Tim Horton.

  • WebView.cpp:

(WebView::updateSelectionForIME): Refactoring flipped the meaning of the test used
to select the resetIME case. Corrected for behavior of new cancel method.

12:22 PM Changeset in webkit [163556] by commit-queue@webkit.org
  • 20 edits
    1 delete in trunk/Source

Unreviewed, rolling out r163542.
http://trac.webkit.org/changeset/163542
https://bugs.webkit.org/show_bug.cgi?id=128324

Caused many assertion failures (Requested by ap on #webkit).

Source/JavaScriptCore:

(JSC::CopyWriteBarrier::set):

  • heap/Heap.cpp:

(JSC::Heap::writeBarrier):

  • heap/Heap.h:

(JSC::Heap::writeBarrier):

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

(JSC::JITWriteBarrierBase::set):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_write_barrier_slow):

  • runtime/Arguments.h:
  • runtime/JSWeakMap.cpp:
  • runtime/MapData.cpp:

(JSC::MapData::ensureSpaceForAppend):

  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::PropertyTable):

  • runtime/Structure.h:
  • runtime/WriteBarrier.h:

(JSC::WriteBarrierBase::set):
(JSC::WriteBarrierBase::setMayBeNull):
(JSC::WriteBarrierBase::setEarlyValue):
(JSC::WriteBarrierBase<Unknown>::set):

  • runtime/WriteBarrierInlines.h: Removed.

Source/WebCore:

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::JSEventListener):

  • bindings/js/JSEventListener.h:

(WebCore::JSEventListener::jsFunction):

12:17 PM Changeset in webkit [163555] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace ’ with ' to silence the check-for-webkit-framework-include-consistency script.

  • UIProcess/API/Cocoa/WKWebView.h:
12:05 PM Changeset in webkit [163554] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Add backForwardList property to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128320

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView backForwardList]):

12:00 PM Changeset in webkit [163553] by commit-queue@webkit.org
  • 14 edits
    4 adds in trunk

Do not draw multi-characters <mi> in italic.
https://bugs.webkit.org/show_bug.cgi?id=44208

Patch by Frédéric Wang <fred.wang@free.fr> on 2014-02-06
Reviewed by Chris Fleizach.

Source/WebCore:

This test prevents multi-char <mi> to be drawn in italic and prepare
further improvements to MathML token and mfenced elements (bugs 124838
and bug 99620).

Test: mathml/presentation/tokenElements-dynamic.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/mathml.css:

(mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose):

  • mathml/MathMLTextElement.cpp:

(WebCore::MathMLTextElement::didAttachRenderers):
(WebCore::MathMLTextElement::childrenChanged):
(WebCore::MathMLTextElement::createElementRenderer):

  • rendering/RenderObject.h:

(WebCore::RenderObject::isRenderMathMLToken):

  • rendering/mathml/RenderMathMLToken.cpp: Added.

(WebCore::RenderMathMLToken::RenderMathMLToken):
(WebCore::RenderMathMLToken::addChild):
(WebCore::RenderMathMLToken::createWrapperIfNeeded):
(WebCore::RenderMathMLToken::updateTokenContent):
(WebCore::RenderMathMLToken::updateStyle):
(WebCore::RenderMathMLToken::styleDidChange):
(WebCore::RenderMathMLToken::updateFromElement):

  • rendering/mathml/RenderMathMLToken.h: Added.

(WebCore::RenderMathMLToken::element):
(WebCore::RenderMathMLToken>):

LayoutTests:

Add tests for single-char/multi-char <mi> elements, the mathvariant
attribute and MathML token elements dynamically modified.

  • mathml/presentation/attributes-mathvariant-expected.html:
  • mathml/presentation/attributes-mathvariant.html:
  • mathml/presentation/tokenElements-dynamic-expected.html: Added.
  • mathml/presentation/tokenElements-dynamic.html: Added.
  • mathml/presentation/tokenElements-mathvariant-expected.html:
  • mathml/presentation/tokenElements-mathvariant.html:
11:34 AM Changeset in webkit [163552] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Simplify BasicShapeInset creation
https://bugs.webkit.org/show_bug.cgi?id=128314

Reviewed by David Hyatt.

Introduce convertToLengthSize helper function in order to simplify and make BasicShapeInset more readable.

No new tests, no behavior change.

  • css/BasicShapeFunctions.cpp:

(WebCore::convertToLengthSize):
(WebCore::basicShapeForValue):

11:26 AM Changeset in webkit [163551] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

The source frame request is not the same thing as the original request
https://bugs.webkit.org/show_bug.cgi?id=128317

Reviewed by Andreas Kling.

Grab the source frame URL From the WebFrameProxy object.

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::frameInfoFromWebFrameProxy):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

10:54 AM Changeset in webkit [163550] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Try to fix the Windows build.

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::didReceiveResponse):

10:45 AM Changeset in webkit [163549] by oliver@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Make 32bit pass the correct this value to custom getters
https://bugs.webkit.org/show_bug.cgi?id=128313

Reviewed by Mark Lam.

Now that the custom getter calling convetion uses a single register
for the slot base we can easily pass the correct |thisValue| instead
of simply relying on the thisValue not be relevant to existing
custom getters. This also means that 32bit can call custom getters
directly.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupArgumentsWithExecState):

  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

10:20 AM Changeset in webkit [163548] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Fix a copy/paste mistake in TestExpectations.

  • platform/mac/TestExpectations:
10:13 AM Changeset in webkit [163547] by svillar@igalia.com
  • 16 edits
    9 copies
    1 add in trunk

[CSS Grid Layout] getComputedStyle() is wrong for grid-definition-{columns|rows}
https://bugs.webkit.org/show_bug.cgi?id=127033

Reviewed by Andreas Kling.

Source/WebCore:

Tests: fast/css-grid-layout/non-grid-columns-rows-get-set-multiple.html

fast/css-grid-layout/non-grid-columns-rows-get-set.html
fast/css-grid-layout/non-grid-element-repeat-get-set.html
fast/css-grid-layout/non-named-grid-line-get-set.html

According to the specs getComputedStyle() should return the used
values instead of the resolved values for compatibility with early
implementations. This means that grid-definition-{columns|rows}
are now layout dependent as we need to compute the used values for
grid track sizes.

Updated the outcome of existing tests and added a bunch of new
ones that check the behavior of the different properties outside
grid containers.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::specifiedValueForGridTrackSize):
(WebCore::valueForGridTrackList):
(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::GridIterator::GridIterator):
(WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
(WebCore::RenderGrid::computeUsedBreadthOfMinLength):
(WebCore::RenderGrid::computeUsedBreadthOfMaxLength):
(WebCore::RenderGrid::computeUsedBreadthOfSpecifiedLength):
(WebCore::RenderGrid::computeNormalizedFractionBreadth):
(WebCore::RenderGrid::gridTrackSize):
(WebCore::RenderGrid::minContentForChild):
(WebCore::RenderGrid::maxContentForChild):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
(WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
(WebCore::RenderGrid::growGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisDirection):
(WebCore::RenderGrid::autoPlacementMinorAxisDirection):
(WebCore::RenderGrid::layoutGridItems):
(WebCore::RenderGrid::resolveGridPositionsFromAutoPlacementPosition):
(WebCore::RenderGrid::resolveGridPositionsFromStyle):
(WebCore::RenderGrid::gridAreaBreadthForChild):
(WebCore::RenderGrid::populateGridPositions):
(WebCore::RenderGrid::findChildLogicalPosition):

  • rendering/RenderGrid.h:

LayoutTests:

Updated the expected results of many tests, as we should expect
the used values instead of the resolved ones when asking for
getComputedStyle().

  • fast/css-grid-layout/grid-columns-rows-get-set-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt:
  • fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
  • fast/css-grid-layout/grid-columns-rows-get-set.html:
  • fast/css-grid-layout/grid-element-repeat-get-set-expected.txt:
  • fast/css-grid-layout/grid-element-repeat-get-set.html:
  • fast/css-grid-layout/named-grid-line-get-set-expected.txt:
  • fast/css-grid-layout/named-grid-line-get-set.html:
  • fast/css-grid-layout/non-grid-columns-rows-get-set-expected.txt: Copied from LayoutTests/fast/css-grid-layout/grid-columns-rows-get-set-expected.txt.
  • fast/css-grid-layout/non-grid-columns-rows-get-set-multiple-expected.txt: Copied from LayoutTests/fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt.
  • fast/css-grid-layout/non-grid-columns-rows-get-set-multiple.html: Copied from LayoutTests/fast/css-grid-layout/grid-columns-rows-get-set-multiple.html.
  • fast/css-grid-layout/non-grid-columns-rows-get-set.html: Copied from LayoutTests/fast/css-grid-layout/grid-columns-rows-get-set.html.
  • fast/css-grid-layout/non-grid-element-repeat-get-set-expected.txt: Copied from LayoutTests/fast/css-grid-layout/grid-element-repeat-get-set-expected.txt.
  • fast/css-grid-layout/non-grid-element-repeat-get-set.html: Copied from LayoutTests/fast/css-grid-layout/grid-element-repeat-get-set.html.
  • fast/css-grid-layout/non-named-grid-line-get-set-expected.txt: Copied from LayoutTests/fast/css-grid-layout/named-grid-line-get-set-expected.txt.
  • fast/css-grid-layout/non-named-grid-line-get-set.html: Added.
  • fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js:

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/grid-columns-rows-get-set.js:

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:

(testGridDefinitionsValues):
(checkGridDefinitionsSetJSValues):

  • fast/css-grid-layout/resources/non-grid-columns-rows-get-set-multiple.js: Copied from LayoutTests/fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js.

(testInherit):
(testInitial):

  • fast/css-grid-layout/resources/non-grid-columns-rows-get-set.js: Copied from LayoutTests/fast/css-grid-layout/resources/grid-columns-rows-get-set.js.

(testInherit):
(testInitial):

10:10 AM Changeset in webkit [163546] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2/Source/WebKit2

Merged r163504.

10:08 AM Changeset in webkit [163545] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Modernize CrossOriginPreflightResultCache
https://bugs.webkit.org/show_bug.cgi?id=128309

Reviewed by Antti Koivisto.

Use std::chrono::steady_clock instead of currentTime() for determining when
cache items expire, Use std::unique_ptr instead of OwnPtr, use NeverDestroyed,
get rid of unnecessary container typedefs now that we have auto. Finally,
de-indent the entire class declaration.

  • loader/CrossOriginPreflightResultCache.cpp:

(WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
(WebCore::parseAccessControlMaxAge):
(WebCore::CrossOriginPreflightResultCacheItem::parse):
(WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
(WebCore::CrossOriginPreflightResultCache::shared):
(WebCore::CrossOriginPreflightResultCache::appendEntry):
(WebCore::CrossOriginPreflightResultCache::canSkipPreflight):

  • loader/CrossOriginPreflightResultCache.h:

(WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::didReceiveResponse):

10:08 AM Changeset in webkit [163544] by ap@apple.com
  • 2 edits in trunk/LayoutTests

editing/caret/caret-color.html is flaky on WK2
https://bugs.webkit.org/show_bug.cgi?id=128315

  • platform/mac-wk2/TestExpectations: Marked it as such.
10:04 AM Changeset in webkit [163543] by commit-queue@webkit.org
  • 4 edits
    9 adds in trunk

Menclose with no notation attribute does not display anything.
https://bugs.webkit.org/show_bug.cgi?id=127889

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2014-02-06
Reviewed by Chris Fleizach.

Source/WebCore:

Menclose with no notation attribute should behave same as menclose with
notation attribute with value as longdiv. By default the division
symbol should be displayed. For empty and invalid notation attribute
nothing should be displayed.

Tests: mathml/presentation/menclose-notation-default-longdiv.html

mathml/presentation/menclose-notation-invalid-empty.html

  • mathml/MathMLMencloseElement.h:
  • rendering/mathml/RenderMathMLMenclose.cpp:

(WebCore::RenderMathMLMenclose::computePreferredLogicalWidths):
(WebCore::RenderMathMLMenclose::paint):
Added style for menclose with no notation attribute and handled this
condition in paint also where for longdiv we are explicitly drawing
the division symbol.

LayoutTests:

  • mathml/presentation/menclose-notation-default-longdiv.html: Added.
  • mathml/presentation/menclose-notation-invalid-empty-expected.html: Added.
  • mathml/presentation/menclose-notation-invalid-empty.html: Added.
  • platform/efl/mathml/presentation/menclose-notation-default-longdiv-expected.png: Added.
  • platform/efl/mathml/presentation/menclose-notation-default-longdiv-expected.txt: Added.
  • platform/gtk/mathml/presentation/menclose-notation-default-longdiv-expected.png: Added.
  • platform/gtk/mathml/presentation/menclose-notation-default-longdiv-expected.txt: Added.
  • platform/mac/mathml/presentation/menclose-notation-default-longdiv-expected.png: Added.
  • platform/mac/mathml/presentation/menclose-notation-default-longdiv-expected.txt: Added.

Added new test cases to test the functionality of menclose with no
notation attribute, invalid and empty notation attribute.

9:59 AM Changeset in webkit [163542] by mhahnenberg@apple.com
  • 20 edits
    1 add in trunk/Source

Heap::writeBarrier shouldn't be static
https://bugs.webkit.org/show_bug.cgi?id=127807

Reviewed by Geoffrey Garen.

Currently it looks up the Heap in which to fire the write barrier by using
the cell passed to it. Almost every call site already has a reference to the
VM or the Heap itself. It seems wasteful to look it up all over again.

Source/JavaScriptCore:

(JSC::CopyWriteBarrier::set):

  • heap/Heap.cpp:

(JSC::Heap::writeBarrier):

  • heap/Heap.h:

(JSC::Heap::writeBarrier):

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

(JSC::JITWriteBarrierBase::set):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::llint_write_barrier_slow):

  • runtime/Arguments.h:
  • runtime/JSWeakMap.cpp:
  • runtime/MapData.cpp:

(JSC::MapData::ensureSpaceForAppend):

  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::PropertyTable):

  • runtime/Structure.h:
  • runtime/WriteBarrier.h:
  • runtime/WriteBarrierInlines.h: Added.

Source/WebCore:

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::JSEventListener):

  • bindings/js/JSEventListener.h:

(WebCore::JSEventListener::jsFunction):

9:55 AM Changeset in webkit [163541] by ap@apple.com
  • 2 edits in trunk/LayoutTests

media/video-load-preload-metadata.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=128312

  • platform/mac/TestExpectations: Marked it as such.
9:50 AM Changeset in webkit [163540] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2

Merged r163481.

9:49 AM Changeset in webkit [163539] by commit-queue@webkit.org
  • 8 edits
    2 copies
    1 delete in trunk/Tools

Unreviewed, rolling out r163530.
http://trac.webkit.org/changeset/163530
https://bugs.webkit.org/show_bug.cgi?id=128311

It broke run-gtk-tests (Requested by Ossy on #webkit).

  • efl/common.py: Copied from Tools/gtk/jhbuildrc.

(script_path):
(top_level_path):

  • efl/jhbuildrc:
  • gtk/common.py:

(script_path):
(top_level_path):

  • gtk/find-make-dist-errors:

(get_missing_headers):

  • gtk/generate-gtkdoc:

(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):

  • gtk/generate-inspector-gresource-manifest.py:
  • gtk/jhbuildrc:
  • jhbuild/jhbuildrc_common.py: Removed.
  • nix/common.py: Copied from Tools/nix/jhbuildrc.

(script_path):
(top_level_path):

  • nix/jhbuildrc:
9:42 AM Changeset in webkit [163538] by beidson@apple.com
  • 14 edits in trunk

IDB: storage/indexeddb/mozilla/clear.html fails
<rdar://problem/15997155> and https://bugs.webkit.org/show_bug.cgi?id=128282

Reviewed by David Kilzer.

Source/WebCore:

Covered by storage/indexeddb/mozilla/clear.html (and probably others)

Update the value deserializer to take into account whether or not there was an IDBKey:

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::deserializeIDBValueBuffer):

  • bindings/js/IDBBindingUtilities.h:
  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess): Call the new form of deserializeIDBValueBuffer.

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::clearObjectStore): Update logging.

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::setActive): Update logging.

  • Modules/indexeddb/IDBTransactionBackend.cpp:

(WebCore::IDBTransactionBackend::commit): Fix ASSERTs to reflect multi-process worlds.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::openTransaction): Update logging.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::commit): Update ASSERT.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable this test.

Update the test for (what I can only assume are) changes in the spec:

  • storage/indexeddb/mozilla/clear-expected.txt:
  • storage/indexeddb/mozilla/resources/clear.js:

(areWeClearYet):

9:29 AM Changeset in webkit [163537] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Re-enable simple line layout on non-Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=123338

Reviewed by Anders Carlsson.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

9:03 AM Changeset in webkit [163536] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Use std::chrono functions in dispatchFunctionsFromMainThread()
https://bugs.webkit.org/show_bug.cgi?id=128308

Reviewed by Antti Koivisto.

  • wtf/MainThread.cpp:

(WTF::dispatchFunctionsFromMainThread):

8:50 AM Changeset in webkit [163535] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Add test expectations for tests crashing after r162816.

  • platform/efl-wk2/TestExpectations:
8:45 AM Changeset in webkit [163534] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Use system default compiler instead of gcc, as final fall through.
https://bugs.webkit.org/show_bug.cgi?id=126773

Patch by Koop Mast <kwm@FreeBSD.org> on 2014-02-06
Reviewed by Alexey Proskuryakov.

  • dom/make_names.pl:
8:29 AM Changeset in webkit [163533] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

No need to enterFullscreen() when already in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=128276

Reviewed by Jer Noble.

No new tests, this is just cleanup.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updatePlayState): Don't call enterFullscreen() if already there.
(WebCore::HTMLMediaElement::enterFullscreen): Return early if m_isFullscreen is already true.

7:24 AM Changeset in webkit [163532] by d.nomiyama@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
6:42 AM Changeset in webkit [163531] by stavila@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Regions] Null dereference applying animation with CSS regions
https://bugs.webkit.org/show_bug.cgi?id=128218

Reviewed by Andrei Bucur.

Source/WebCore:

The first issue (the null dereference) was caused by the checkForZoomChange method
not guarding against a null parentStyle parameter, as the checkForGenericFamilyChange
method does, which in the crashing scenario is called just before the faulty
checkForZoomChange method.
The second issue was an assert which was caused by the fact that detaching is performed
in a certain situation if the element has a renderer or if it's inside a named flow.
However, when reattaching and asserting the element has no renderer, the
"inside named flow" condition was no longer considered.

Test: fast/regions/animation-element-in-region-flowed-to-other-thread.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::checkForZoomChange):

  • style/StyleResolveTree.cpp:

(WebCore::Style::attachChildren):

LayoutTests:

Added test for crash caused by using animations with DOM children of regions flowed
into another flow thread.

  • fast/regions/animation-element-in-region-flowed-to-other-thread-expected.html: Added.
  • fast/regions/animation-element-in-region-flowed-to-other-thread.html: Added.
5:41 AM Changeset in webkit [163530] by commit-queue@webkit.org
  • 8 edits
    1 add
    2 deletes in trunk/Tools

Extract common parts from jhbuildrc files.
https://bugs.webkit.org/show_bug.cgi?id=125986

Patch by Peter Szanka <h868064@stud.u-szeged.hu> on 2014-02-06
Reviewed by Csaba Osztrogonác.

  • efl/common.py: Removed.
  • efl/jhbuildrc:
  • gtk/common.py:

(binary_build_path):

  • gtk/find-make-dist-errors:

(get_missing_headers):

  • gtk/generate-gtkdoc:

(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):

  • gtk/generate-inspector-gresource-manifest.py:
  • gtk/jhbuildrc:
  • jhbuild/jhbuildrc_common.py: Added.

(script_path):
(top_level_path):
(init):

  • nix/common.py: Removed.
  • nix/jhbuildrc:
2:50 AM Changeset in webkit [163529] by g.czajkowski@samsung.com
  • 6 edits in trunk/LayoutTests

Verify copy/paste of misspellings asynchronously
https://bugs.webkit.org/show_bug.cgi?id=128246

Reviewed by Ryosuke Niwa.

Refactoring two spelling tests that use copy/paste to be able to
verify spelling markers asynchronously.
Additionally, use evalAndLog() to make test expectation more readable.
Fix the description according to the tests.

Start off verifying whether spelling marker is available when continuous spell
checking (spellcheck attribute, respectively) is on.
Without this test case, the tests passed even spellchecking
or copy/paste were not implemented (EFL).

  • editing/spelling/spellcheck-paste-continuous-disabled-expected.txt:
  • editing/spelling/spellcheck-paste-continuous-disabled.html:

Remove unnecessary spellcheck=true attribute. It's default value and we
do not manipulate it at all.
Add destination element where paste operation is performed.

  • editing/spelling/spellcheck-paste-disabled-expected.txt:
  • editing/spelling/spellcheck-paste-disabled.html:
  • platform/efl/TestExpectations:

Mark spellcheck-paste-continuous-disabled.html as failing since EFL does not
implement copy/paste feature.

2:05 AM Changeset in webkit [163528] by commit-queue@webkit.org
  • 5 edits in trunk

Create a HTMLUnknownElement when using createElement('image')
https://bugs.webkit.org/show_bug.cgi?id=125896

Patch by László Langó <llango.u-szeged@partner.samsung.com> on 2014-02-06
Reviewed by Antti Koivisto.

Source/WebCore:

Backported from Blink: https://chromium.googlesource.com/chromium/blink/+/fd8a7b65f3300fb9245db24d5ed240c80b7f76ad

  • html/HTMLTagNames.in:

LayoutTests:

  • fast/dom/wrapper-classes-expected.txt:
  • fast/dom/wrapper-classes.html:
1:42 AM Changeset in webkit [163527] by commit-queue@webkit.org
  • 6 edits
    6 adds in trunk

[XHR] Ensure response return null when error flag is set for blob and arraybuffer
https://bugs.webkit.org/show_bug.cgi?id=127050

Patch by Youenn Fablet <youennf@gmail.com> on 2014-02-06
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Added a check in JSXMLHttpRequest::response to ensure response return null when error flag is set for blob and arraybuffer
This check also applies to document and json response types (no change in behavior for those types but code path change)
Added assertions in the related XMLHttpRequest blob and array buffer getters
Minor code clean-up.
The test cases check all four response types in case of timeout and abort

Tests: http/tests/xmlhttprequest/onabort-response-getters.html

http/tests/xmlhttprequest/ontimeout-response-getters.html

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::response):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::didCacheResponseJSON):
(WebCore::XMLHttpRequest::responseXML):
(WebCore::XMLHttpRequest::responseBlob):
(WebCore::XMLHttpRequest::responseArrayBuffer):

LayoutTests:

Added test cases that check XHR response in case of timeout and abort for arraybuffer, blob, document and json.

  • fast/files/script-tests/xhr-response-blob.js: updated to expect null for blob response in case of XHR requesting a file that does not exist

(.xhr.onreadystatechange):
(.xhr.onerror):
(.xhr.onload):
(.xhr.onloadend):
(testBlob):

  • fast/files/xhr-response-blob-expected.txt:
  • http/tests/resources/load-then-wait.cgi: Added (similar to load-and-stall except that it sends the whole document and then wait for some time before completing the response).
  • http/tests/xmlhttprequest/onabort-response-getters-expected.txt: Added.
  • http/tests/xmlhttprequest/onabort-response-getters.html: Added.
  • http/tests/xmlhttprequest/ontimeout-response-getters-expected.txt: Added.
  • http/tests/xmlhttprequest/ontimeout-response-getters.html: Added.
1:01 AM Changeset in webkit [163526] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Fix the build after r163516 for !ENABLE(ASYNC_SCROLLING) platforms
https://bugs.webkit.org/show_bug.cgi?id=128299

Reviewed by Antti Koivisto.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handleTouchEvent):

12:38 AM Changeset in webkit [163525] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Unreviewed fix after r163520, remove Andrei from committers list, because
he is reviewer now, and webkit-patch doesn't like duplicated entries.

  • Scripts/webkitpy/common/config/contributors.json:
12:23 AM Changeset in webkit [163524] by barraclough@apple.com
  • 11 edits in trunk/Source

Change Page, FocusController to use ViewState
https://bugs.webkit.org/show_bug.cgi?id=126533

Reviewed by Tim Horton.

These classes currently maintain a set of separate fields to represent the view state;
combine these into a single field, and allow WebPage to send the combined update rather
than individual changes.

Maintain existing interface for WebKit1 clients.

Source/WebCore:

  • WebCore.exp.in:
    • Added WebCore::setViewState, removed WebCore::setIsVisuallyIdle.
  • page/FocusController.cpp:

(WebCore::FocusController::FocusController):

  • Initialize combined m_viewState.

(WebCore::FocusController::setFocused):

  • Calls setViewState.

(WebCore::FocusController::setFocusedInternal):

  • setFocused -> setFocusedInternal.

(WebCore::FocusController::setViewState):

  • Added, update all ViewState flags.

(WebCore::FocusController::setActive):

  • Calls setViewState.

(WebCore::FocusController::setActiveInternal):

  • setActive -> setActiveInternal.

(WebCore::FocusController::setContentIsVisible):

  • Calls setViewState.

(WebCore::FocusController::setContentIsVisibleInternal):

  • setContentIsVisible -> setContentIsVisibleInternal.
  • page/FocusController.h:

(WebCore::FocusController::isActive):
(WebCore::FocusController::isFocused):
(WebCore::FocusController::contentIsVisible):

  • Implemented in terms of ViewState.
  • page/Page.cpp:

(WebCore::Page::Page):

  • Initialize using PageInitialViewState.

(WebCore::Page::setIsInWindow):

  • Calls setViewState.

(WebCore::Page::setIsInWindowInternal):

  • setIsInWindow -> setIsInWindowInternal.

(WebCore::Page::setIsVisuallyIdleInternal):

  • setIsVisuallyIdle -> setIsVisuallyIdleInternal.

(WebCore::Page::setViewState):

  • Added, update all ViewState flags, including FocusController.

(WebCore::Page::setIsVisible):

  • Calls setViewState.

(WebCore::Page::setIsVisibleInternal):

  • setIsVisible -> setIsVisibleInternal.

(WebCore::Page::visibilityState):

  • m_isVisible -> isVisible()

(WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):

  • m_isVisible -> isVisible()
  • page/Page.h:

(WebCore::Page::isVisible):
(WebCore::Page::isInWindow):

  • Implemented in terms of ViewState.

(WebCore::Page::scriptedAnimationsSuspended):

  • Combined member fields into ViewState::Flags.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _windowWillOrderOnScreen:]):
(-[WebView _windowWillOrderOffScreen:]):

  • remove calls to FocusController::setContentIsVisible, these are redundant (this is handled when page visibility is set).

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • Combined separate calls to Page::setViewState.

(WebKit::WebPage::updateIsInWindow):

  • Simplied from setIsInWindow.

(WebKit::WebPage::setViewState):

  • Combined separate calls to Page::setViewState.
  • WebProcess/WebPage/WebPage.h:
    • Declare updateIsInWindow.
12:03 AM Changeset in webkit [163523] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

12:00 AM Changeset in webkit [163522] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.17

New tag.

Feb 5, 2014:

11:59 PM Changeset in webkit [163521] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r163480.

  • GNUmakefile.list.am: Removing the WebUIClient build targets.
11:58 PM Changeset in webkit [163520] by abucur@adobe.com
  • 2 edits in trunk/Tools

Adding myself as a reviewer.

Unreviewed.

11:49 PM Changeset in webkit [163519] by zandobersek@gmail.com
  • 7 edits in trunk

Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro
https://bugs.webkit.org/show_bug.cgi?id=128267

Reviewed by Andreas Kling.

Source/WTF:

Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro that was manually defined for compilers
that support the C++11 initializer lists. The feature is well supported in Clang, MSVC and also GCC. It
was actually already used unguarded in HashSet.

  • wtf/Compiler.h:
  • wtf/HashMap.h:

(WTF::HashMap::HashMap):

  • wtf/Vector.h:

(WTF::Vector::Vector):

Tools:

Remove the COMPILER_SUPPORTS(CXX_GENERALIZED_INITIALIZERS) as the underlying macro is also
being removed since the feature is supported by all the compilers the project approves.

  • TestWebKitAPI/Tests/WTF/HashMap.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/Vector.cpp:

(TestWebKitAPI::TEST):

11:24 PM Changeset in webkit [163518] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Tools

[EFL][WK2] Remove legacy behavior mode in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=128298

Reviewed by Gyuyoung Kim.

MiniBrowser is crashing when the legacy mode is set in creating webview.
As EFL application cannot use this API for creating webview after r146265,
it would be better to remove this invalid option.

  • MiniBrowser/efl/main.c:

(window_create): Do not create webview with WKViewCreate API.
(elm_main): Remove 'legacy' option.

11:11 PM Changeset in webkit [163517] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Make FTL OSR entry something we only try after we've already compiled the function with the FTL and it still got stuck in a loop after that without ever returning like a sensible function oughta have
https://bugs.webkit.org/show_bug.cgi?id=128234

Reviewed by Geoffrey Garen.

Use DFG::JITCode::osrEntryRetry as a counter to decide when to invoke OSR entry. That
comes into play only after we've done a replacement compile.

This appears to still give us a speed-up on the kinds of things that OSR entry is good
for, while also eliminating pointless OSR entry compilations on other things.

  • dfg/DFGJITCode.cpp:

(JSC::DFG::JITCode::JITCode):

  • dfg/DFGJITCode.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGToFTLForOSREntryDeferredCompilationCallback.cpp:

(JSC::DFG::ToFTLForOSREntryDeferredCompilationCallback::compilationDidComplete):

  • runtime/Options.h:
10:55 PM Changeset in webkit [163516] by Simon Fraser
  • 19 edits in trunk/Source

Transfer the non-fast-scrollable region to the UI process for iOS
https://bugs.webkit.org/show_bug.cgi?id=128293

Reviewed by Benjamin Poulain.

Source/WebCore:

Two main changes to support sending the non-fast scrollable region
to the UI process for iOS:

  1. Add ScrollingCoordinator::frameViewNonFastScrollableRegionChanged(),

which is called when we've updated the touch event region (this can happen
independenly of layout). When called we just scheduled a scrolling tree
commit with the new region.

  1. Avoid thinking that we have a new root node with every remote scrolling

transaction. This was a side-effect of reconstructing the scrolling state
tree in the UI process, and caused us to try to grab a nonFastScrollableRegion
from a node which never had one set.

  • WebCore.exp.in:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::frameViewNonFastScrollableRegionChanged):

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::frameViewNonFastScrollableRegionChanged):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::setHasNewRootStateNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::isPointInNonFastScrollableRegion):

  • page/scrolling/ScrollingTree.h:

Source/WebKit2:

Two main changes to support sending the non-fast scrollable region
to the UI process for iOS:

  1. Add ScrollingCoordinator::frameViewNonFastScrollableRegionChanged(),

which is called when we've updated the touch event region (this can happen
independenly of layout). When called we just scheduled a scrolling tree
commit with the new region.

  1. Avoid thinking that we have a new root node with every remote scrolling

transaction. This was a side-effect of reconstructing the scrolling state
tree in the UI process, and caused us to try to grab a nonFastScrollableRegion
from a node which never had one set.

Now that we have the non-fast scrollable region in the UI process, we can
use it to avoid sending sync messages to the web process.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(ArgumentCoder<ScrollingStateScrollingNode>::encode): Encode hasNewRootNode.
(ArgumentCoder<ScrollingStateScrollingNode>::decode): Decode hasNewRootNode and set it on
the state tree.
(WebKit::RemoteScrollingCoordinatorTransaction::encode): Encode the nonFastScrollableRegion
now that we can encode Regions.
(WebKit::RemoteScrollingCoordinatorTransaction::decode): Decode the nonFastScrollableRegion
now that we can decode Regions.

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::isPointInNonFastScrollableRegion):

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handleTouchEvent): If we're not in the non-fast scrollable region,
don't both sending touch events to the web process.

10:45 PM Changeset in webkit [163515] by benjamin@webkit.org
  • 27 edits
    2 adds in trunk/Source

[iOS] Synchronize the WKContentView and UIScrollView updates with the tiles being commited
https://bugs.webkit.org/show_bug.cgi?id=127886

Reviewed by Simon Fraser.

Source/WebCore:

The updates of the views on the UIProcess side was completely disconnected
from the tiles updates from the DrawingArea. There is a non-negligible time
between the size/scale update and the new tiles coming, which causes
visual glitches.

There are three main cases where the tiles and content would be out of sync
with the UIViews:
-When loading a new page with different content width of a different viewport.
-When a page changes its viewport.
-When the viewport-constrainted viewport size changes.

To fix the issue, WKView is modified to maintain the old state of WKContentView
and UIScrollView until the new tiles are available.

Geometry/scale update are split in two phases:
1) A source (the page or the user) changes parameters of the geometry. The WebProcess updates

its layout accordingly.
At this point, the UIViews are unchanged and are left with the old parameters.

2) Eventually, new tiles come and commitLayerTree() is called on the drawing area proxy.

At that point, WKContentView and its UIScrollView are updated to match the committed
size and scale for the page.

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

(WebCore::constraintsAreAllRelative):
(WebCore::ViewportConfiguration::ViewportConfiguration):
(WebCore::ViewportConfiguration::setDefaultConfiguration):
(WebCore::ViewportConfiguration::setContentsSize):
(WebCore::ViewportConfiguration::setMinimumLayoutSize):
(WebCore::ViewportConfiguration::setViewportArguments):
(WebCore::ViewportConfiguration::layoutSize):
(WebCore::ViewportConfiguration::initialScale):
(WebCore::ViewportConfiguration::minimumScale):
(WebCore::ViewportConfiguration::maximumScale):
(WebCore::ViewportConfiguration::allowsUserScaling):
(WebCore::viewportArgumentValueIsValid):
(WebCore::applyViewportArgument):
(WebCore::ViewportConfiguration::updateConfiguration):
(WebCore::ViewportConfiguration::layoutWidth):
(WebCore::ViewportConfiguration::layoutHeight):

  • page/ViewportConfiguration.h: Added.

(WebCore::ViewportConfigurationConfiguration::ViewportConfigurationConfiguration):
(WebCore::ViewportConfiguration::defaultConfiguration):
(WebCore::ViewportConfiguration::contentsSize):
(WebCore::ViewportConfiguration::minimumLayoutSize):
(WebCore::ViewportConfiguration::viewportArguments):

Source/WebKit2:

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::mainFrameContentsSize):
(WebKit::RemoteLayerTreeTransaction::setMainFrameContentsSize):
(WebKit::RemoteLayerTreeTransaction::pageScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setPageScaleFactor):
(WebKit::RemoteLayerTreeTransaction::minimumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setMinimumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::maximumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::setMaximumScaleFactor):
(WebKit::RemoteLayerTreeTransaction::allowsUserScaling):
(WebKit::RemoteLayerTreeTransaction::setAllowsUserScaling):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):

  • UIProcess/API/ios/PageClientImplIOS.h:
  • UIProcess/API/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didCommitLayerTree):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView setMinimumLayoutSize:]):
(-[WKContentView willStartUserTriggeredZoom]):
(-[WKContentView _didCommitLayerTree:WebKit::]):

  • UIProcess/API/ios/WKContentViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView contentViewDidCommitLoadForMainFrame:]):
(-[WKView contentView:didCommitLayerTree:WebKit::]):
(-[WKView scrollViewWillBeginZooming:withView:]):
(-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
(-[WKView _frameOrBoundsChanged]):
(-[WKView minimumLayoutSizeOverride]):
(-[WKView setMinimumLayoutSizeOverride:]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::setVirtualViewportMinimumLayoutSize):
(WebKit::WebPageProxy::didCommitLayerTree):
(WebKit::WebPageProxy::willStartUserTriggeredZooming):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::contentsSizeChanged):
(WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):

  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:

(WebKit::WebChromeClient::didReceiveMobileDocType):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::mainFrameDidLayout):
(WebKit::WebPage::didCommitLoad):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportPropertiesDidChange):
(WebKit::WebPage::minimumPageScaleFactor):
(WebKit::WebPage::maximumPageScaleFactor):
(WebKit::WebPage::allowsUserScaling):
(WebKit::WebPage::setVirtualViewportMinimumLayoutSize):
(WebKit::WebPage::virtualViewportChanged):
(WebKit::WebPage::willStartUserTriggeredZooming):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

10:19 PM Changeset in webkit [163514] by benjamin@webkit.org
  • 3 edits
    1 add in trunk/Source/WebKit2

[WK2] Add the minimumLayoutSizeOverride SPI to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128295

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-05
Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView minimumLayoutSizeOverride]):
(-[WKWebView setMinimumLayoutSizeOverride:]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
9:26 PM Changeset in webkit [163513] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Don't speculate on ToThis if we already know that arg0 has a questionable record with structure checks
https://bugs.webkit.org/show_bug.cgi?id=128229

Reviewed by Geoffrey Garen.

  • dfg/DFGByteCodeParser.cpp:

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

9:14 PM Changeset in webkit [163512] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

SelectorCodeGenerator::generateElementHasTagName should match the local name before the namespace
https://bugs.webkit.org/show_bug.cgi?id=128167

Reviewed by Sam Weinig.

The local name is a stricter filter than the namespace, it should always run first.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):

9:11 PM Changeset in webkit [163511] by benjamin@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Add HTMLNames::classAttr as a regular name in SVGElement::isAnimatableAttribute
https://bugs.webkit.org/show_bug.cgi?id=128166

Reviewed by Sam Weinig.

For historical reasons, classAttr was treated separately. There is no reasons for that anymore.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::isAnimatableAttribute):

9:10 PM Changeset in webkit [163510] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Add HTMLNames::classAttr has a regular name in SVGElement::isAnimatableAttribute
https://bugs.webkit.org/show_bug.cgi?id=128166

Reviewed by Sam Weinig.

For historical reasons, classAttr was treated separately. There is no reasons for that anymore.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::isAnimatableAttribute):

8:31 PM Changeset in webkit [163509] by Simon Fraser
  • 7 edits in trunk/Source

Support encoding and decoding of Regions
https://bugs.webkit.org/show_bug.cgi?id=128284

Source/WebCore:

Reviewed by Anders Carlsson.

Region changes to make it encodable:

Make Region::Span public and give it a default constructor.
Allow getting and setting of Shape internals, and a way to update
the Region bounds after changing the shape. Also add a way to test
for valid spans and segments.

  • platform/graphics/Region.cpp:

(WebCore::Region::Shape::isValid):
(WebCore::Region::updateBoundsFromShape):

  • platform/graphics/Region.h:

(WebCore::Region::isValid):
(WebCore::Region::Span::Span):
(WebCore::Region::shapeSegments):
(WebCore::Region::shapeSpans):
(WebCore::Region::setShapeSegments):
(WebCore::Region::setShapeSpans):
(WebCore::Region::Shape::segments):
(WebCore::Region::Shape::spans):
(WebCore::Region::Shape::setSegments):
(WebCore::Region::Shape::setSpans):

Source/WebKit2:

Reviewed by Anders Carlsson.

Support encoding and decoding of Region, and its internal
struct Region::Span.

ArgumentCoders had to be taught about how to encode
Vectors with inline capacity.

  • Platform/IPC/ArgumentCoders.h:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<Region::Span>::encode):
(IPC::ArgumentCoder<Region::Span>::decode):
(IPC::ArgumentCoder<Region>::encode):
(IPC::ArgumentCoder<Region>::decode):

  • Shared/WebCoreArgumentCoders.h:
8:10 PM Changeset in webkit [163508] by akling@apple.com
  • 33 edits in trunk/Source/WebCore

Rebaseline the bindings tests after Oliver's hackery.

  • bindings/scripts/test/JS/:
7:38 PM Changeset in webkit [163507] by mhahnenberg@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Handling of opaque roots is wrong in EdenCollections
https://bugs.webkit.org/show_bug.cgi?id=128210

Reviewed by Oliver Hunt.

The set of opaque roots is always cleared during each collection. We should instead persist
the set of opaque roots across EdenCollections and only clear it at the beginning of FullCollections.

Also added a couple of custom objects to the jsc shell that allow us to test this.

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::reset):
(JSC::GCThreadSharedData::didStartMarking):

  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • heap/Heap.h:

(JSC::Heap::setShouldDoFullCollection):

  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::didStartMarking):
(JSC::SlotVisitor::reset):

  • heap/SlotVisitor.h:
  • jsc.cpp:

(WTF::Element::Element):
(WTF::Element::root):
(WTF::Element::setRoot):
(WTF::Element::create):
(WTF::Element::createStructure):
(WTF::ElementHandleOwner::isReachableFromOpaqueRoots):
(WTF::Root::Root):
(WTF::Root::element):
(WTF::Root::setElement):
(WTF::Root::create):
(WTF::Root::createStructure):
(WTF::Root::visitChildren):
(WTF::Element::handleOwner):
(WTF::Element::finishCreation):
(GlobalObject::finishCreation):
(functionCreateRoot):
(functionCreateElement):
(functionGetElement):
(functionSetElementRoot):
(functionGCAndSweep):
(functionFullGC):
(functionEdenGC):

7:07 PM Changeset in webkit [163506] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Add -[WKNavigationAction request]
https://bugs.webkit.org/show_bug.cgi?id=128288

Reviewed by Andreas Kling.

  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction request]):
(-[WKNavigationAction setRequest:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

6:30 PM Changeset in webkit [163505] by ryuan.choi@samsung.com
  • 8 edits
    2 adds in trunk/Source/WebCore

[EFL][GTK] Share plugin's implementation between EFL and Gtk ports.
https://bugs.webkit.org/show_bug.cgi?id=70592

Reviewed by Gyuyoung Kim.

Merge common logics of PluginViewGtk.cpp and PluginViewEfl.cpp to PluginViewX11.cpp.
So, this patch improves the windowless plugin support for the EFL port.

  • GNUmakefile.am: Add include path for gtk2xtbin.h header file.
  • GNUmakefile.list.am: Added PluginViewX11.cpp into source lists.
  • PlatformEfl.cmake: Ditto.
  • PlatformGTK.cmake: Ditto.
  • plugins/PluginView.h: Added getRootWindow and getPluginDisply which implement platform specific code.
  • plugins/efl/PluginViewEfl.cpp:

(WebCore::PluginView::getRootWindow):
(WebCore::PluginView::platformGetValueStatic): Turn on NPNVSupportsWindowless support.
(WebCore::PluginView::getPluginDisplay):
(WebCore::PluginView::platformStart):

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::getRootWindow):
(WebCore::setXButtonEventSpecificFields):
(WebCore::setXMotionEventSpecificFields):
(WebCore::setXCrossingEventSpecificFields):
(WebCore::PluginView::getPluginDisplay):
(WebCore::PluginView::platformStart):

  • plugins/x11/PluginViewX11.cpp: Moved common logics from PluginViewGtk.cpp

(WebCore::PluginView::dispatchNPEvent):
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::handleFocusInEvent):
(WebCore::PluginView::invalidateRect):
(WebCore::PluginView::invalidateRegion):
(WebCore::PluginView::handleFocusOutEvent):
(WebCore::PluginView::initXEvent):
(WebCore::PluginView::paint):
(WebCore::PluginView::setParent):
(WebCore::PluginView::setNPWindowRect):
(WebCore::PluginView::setNPWindowIfNeeded):

6:26 PM Changeset in webkit [163504] by weinig@apple.com
  • 5 edits in trunk/Source/WebKit2

[WebKit2, FTL] Add user default to enable the FTL
https://bugs.webkit.org/show_bug.cgi?id=128281

Reviewed by Geoffrey Garen.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):
Pipe through the default.

6:23 PM Changeset in webkit [163503] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix a warning.

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::ContentFilter):
Remove an unnecessary comparison.

6:11 PM Changeset in webkit [163502] by andersca@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Remove unused functions.

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::getOwnPropertySlot):

  • runtime/RegExpObject.cpp:
5:49 PM Changeset in webkit [163501] by andersca@apple.com
  • 8 edits
    3 copies in trunk

Add sourceFrame to WKNavigationAction
https://bugs.webkit.org/show_bug.cgi?id=128280

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKFrameInfo.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.
  • UIProcess/API/Cocoa/WKFrameInfo.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.

(-[WKFrameInfo request]):
(-[WKFrameInfo setRequest:]):

  • UIProcess/API/Cocoa/WKFrameInfoInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.
  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction sourceFrame]):
(-[WKNavigationAction setSourceFrame:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::frameInfoFromWebFrameProxy):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

  • WebKit2.xcodeproj/project.pbxproj:
5:19 PM Changeset in webkit [163500] by Brent Fulgham
  • 9 edits in branches/safari-537.75-branch/Source

Source/WebCore: Merge r154146, r155828, r156145

2013-08-15 Brent Fulgham <Brent Fulgham>

[Windows] Consolidate WebKit Bundle Handling
https://bugs.webkit.org/show_bug.cgi?id=119869

Reviewed by Tim Horton.

  • WebCore.vcxproj/WebCore.vcxproj: Add new WebCoreBundleWin files.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::certificatePath): Use correct bundle handling logic.
  • platform/win/LocalizedStringsWin.cpp: Move bundle implementation to new WebCoreBundleWin.cpp file.
  • platform/win/WebCoreBundleWin.cpp: Added. (WebCore::createWebKitBundle): (WebCore::webKitBundle):
  • platform/win/WebCoreBundleWin.h: Added.

Source/WebKit/win: Merge r154146

2013-08-15 Brent Fulgham <Brent Fulgham>


[Windows] Consolidate WebKit Bundle handling
https://bugs.webkit.org/show_bug.cgi?id=119869


Reviewed by Tim Horton.


  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::openInspectorFrontend): Switch to new WebCore::webkitBundle() method. (WebInspectorFrontendClient::localizedStringsURL): Ditto.

Source/WTF: Merge in build correction to prevent needless "rebuild all" builds.

  • WTF.vcxproj/WTFGenerated.make: Avoid re-copying identical files, which

forces a complete rebuild.

5:18 PM Changeset in webkit [163499] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Tap highlight is positioned incorrectly in iframes.
https://bugs.webkit.org/show_bug.cgi?id=128277
<rdar://problem/15975993>

Reviewed by Benjamin Poulain.

We need to convert the quad to root view coordinates
before returning it to the UIProcess for drawing the highlight.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::tapHighlightAtPosition):

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

Fix the !ENABLE(PAGE_VISIBILITY_API) build
https://bugs.webkit.org/show_bug.cgi?id=127907

Reviewed by Brent Fulgham.

  • page/Page.cpp:

(WebCore::Page::setIsVisible):

5:08 PM Changeset in webkit [163497] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix attempt on EFL build after r163480

  • CMakeLists.txt: Removed WebUIClient.cpp from source lists.
4:58 PM Changeset in webkit [163496] by oliver@apple.com
  • 46 edits in trunk/Source

Change custom getter signature to make the base reference an object pointer
https://bugs.webkit.org/show_bug.cgi?id=128279

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make custom getters take a JSObject* instead of EncodedJSValue as the base
reference. This allows us to drop one pointer from the JSVALUE32_64 calling
convention.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::staticFunctionGetter):
(JSC::JSCallbackObject<Parent>::callbackGetter):

  • jit/JITOperations.cpp:
  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

  • runtime/JSActivation.h:
  • runtime/JSFunction.cpp:

(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSObject.h:

(JSC::PropertySlot::getValue):

  • runtime/NumberConstructor.cpp:

(JSC::numberConstructorNaNValue):
(JSC::numberConstructorNegInfinity):
(JSC::numberConstructorPosInfinity):
(JSC::numberConstructorMaxValue):
(JSC::numberConstructorMinValue):

  • runtime/PropertySlot.h:
  • runtime/RegExpConstructor.cpp:

(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):

  • runtime/RegExpObject.cpp:

(JSC::regExpObjectGlobal):
(JSC::regExpObjectIgnoreCase):
(JSC::regExpObjectMultiline):
(JSC::regExpObjectSource):

Source/WebCore:

Update everything to the new calling convention.

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::objectToStringFunctionGetter):

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMMimeTypeArrayCustom.cpp:

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::nonCachingStaticFunctionGetter):
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp:

(WebCore::JSHTMLFormControlsCollection::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::nonCachingStaticBackFunctionGetter):
(WebCore::nonCachingStaticForwardFunctionGetter):
(WebCore::nonCachingStaticGoFunctionGetter):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::nonCachingStaticReplaceFunctionGetter):
(WebCore::nonCachingStaticReloadFunctionGetter):
(WebCore::nonCachingStaticAssignFunctionGetter):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSRTCStatsResponseCustom.cpp:

(WebCore::JSRTCStatsResponse::nameGetter):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::indexGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:

Source/WebKit2:

Update everything to the new calling convention.

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
4:57 PM Changeset in webkit [163495] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2

Merged r163474.

4:54 PM Changeset in webkit [163494] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163473.

4:52 PM Changeset in webkit [163493] by Lucas Forschler
  • 7 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163471.

4:49 PM Changeset in webkit [163492] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Tools

Merged r163423.

4:48 PM Changeset in webkit [163491] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163420.

4:46 PM Changeset in webkit [163490] by Lucas Forschler
  • 13 edits
    3 copies
    3 deletes in tags/Safari-538.16.2

Merged r163418.

4:43 PM Changeset in webkit [163489] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Tools

Merged r163411.

4:42 PM Changeset in webkit [163488] by Lucas Forschler
  • 2 edits in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163366.

4:28 PM Changeset in webkit [163487] by Lucas Forschler
  • 4 edits
    2 copies in tags/Safari-538.16.2/Source/JavaScriptCore

Merged r163324.

4:20 PM Changeset in webkit [163486] by aestes@apple.com
  • 3 edits in trunk/Source/WebCore

Buffer incoming data in ContentFilter when using NEFilterSource
https://bugs.webkit.org/show_bug.cgi?id=127979

Reviewed by Sam Weinig.

WebFilterEvaluator buffers incoming data and returns it to us as
replacement data if the load is allowed. NEFilterSource doesn't do
this, so we need to do our own buffering.

  • platform/ContentFilter.h: Forward-declared NSMutableData and added

m_originalData.

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::ContentFilter): Constructed m_originalData
with an initial capacity (if we know the expected content size).
(WebCore::ContentFilter::addData): Buffered incoming data if we are
using NEFilterSource.
(WebCore::ContentFilter::finishedAddingData):
(WebCore::ContentFilter::getReplacementData): Returned m_originalData
if the load wasn't blocked.

4:13 PM Changeset in webkit [163485] by Lucas Forschler
  • 5 edits in tags/Safari-538.16.2/Source

Versioning.

4:10 PM Changeset in webkit [163484] by Lucas Forschler
  • 1 copy in tags/Safari-538.16.2

New Tag.

4:06 PM Changeset in webkit [163483] by akling@apple.com
  • 32 edits in trunk

Remove ENABLE(DIRECTORY_UPLOAD).
<https://webkit.org/b/128275>

.:

Rubber-stamped by Ryosuke Niwa.

  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

This is a non-standard Chrome extension that none of the WebKit
ports have even been building.

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:
  • fileapi/File.cpp:
  • fileapi/File.h:
  • fileapi/File.idl:
  • html/FileInputType.cpp:

(WebCore::FileInputType::handleDOMActivateEvent):
(WebCore::FileInputType::createFileList):
(WebCore::FileInputType::receiveDroppedFiles):

  • html/FileInputType.h:
  • html/HTMLAttributeNames.in:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):

  • html/HTMLInputElement.idl:
  • loader/EmptyClients.h:
  • page/Chrome.cpp:
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/FileChooser.h:
  • platform/network/FormData.cpp:

(WebCore::FormData::appendKeyValuePairItems):

Source/WebKit/efl:

Rubber-stamped by Ryosuke Niwa.

  • ewk/ewk_file_chooser.cpp:

(ewk_file_chooser_allows_directory_upload_get):

Source/WebKit/mac:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Rubber-stamped by Ryosuke Niwa.

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<FileChooserSettings>::encode):
(IPC::ArgumentCoder<FileChooserSettings>::decode):

Source/WTF:

Rubber-stamped by Ryosuke Niwa.

  • wtf/FeatureDefines.h:

Tools:

Rubber-stamped by Ryosuke Niwa.

  • Scripts/webkitperl/FeatureList.pm:
3:59 PM Changeset in webkit [163482] by beidson@apple.com
  • 11 edits in trunk

IDB: storage/indexeddb/mozilla/autoincrement-indexes.html fails
https://bugs.webkit.org/show_bug.cgi?id=128257

Reviewed by Sam Weinig.

Source/WebCore:

Tests: storage/indexeddb/mozilla/autoincrement-indexes.html

Add some IDBKeyData utility methods for WK2 to use:

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::setArrayValue):
(WebCore::IDBKeyData::setStringValue):
(WebCore::IDBKeyData::setDateValue):
(WebCore::IDBKeyData::setNumberValue):

  • Modules/indexeddb/IDBKeyData.h:
  • WebCore.exp.in:

Source/WebKit2:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::putRecordInBackingStore): Write the correct key to the index if it was auto generated.
(WebKit::UniqueIDBDatabase::getRecordFromBackingStore): If this is an auto increment object store with

a non-empty key path, save the key path to the get result.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): The IndexRecord schema shouldn’t

have key uniqueness.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord): Take IDBKeyData instead of IDBKey.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): Fill in the primary key from the fetch.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • platform/mac-wk2/TestExpectations: Enable the test.
3:47 PM Changeset in webkit [163481] by fpizlo@apple.com
  • 5 edits in trunk

Rename useExperimentalFTL to useFTLJIT.

Rubber stamped by Mark Hahnenberg.

Source/JavaScriptCore:

  • dfg/DFGTierUpCheckInjectionPhase.cpp:

(JSC::DFG::TierUpCheckInjectionPhase::run):

  • runtime/Options.h:

Tools:

  • Scripts/run-jsc-stress-tests:
3:40 PM Changeset in webkit [163480] by andersca@apple.com
  • 7 edits
    1 add
    2 deletes in trunk/Source/WebKit2

Get rid of WebUIClient
https://bugs.webkit.org/show_bug.cgi?id=128274

Reviewed by Andreas Kling.

  • UIProcess/API/APIUIClient.h: Added.

(API::UIClient::~UIClient):
(API::UIClient::createNewPage):
(API::UIClient::showPage):
(API::UIClient::close):
(API::UIClient::takeFocus):
(API::UIClient::focus):
(API::UIClient::unfocus):
(API::UIClient::runJavaScriptAlert):
(API::UIClient::runJavaScriptConfirm):
(API::UIClient::runJavaScriptPrompt):
(API::UIClient::setStatusText):
(API::UIClient::mouseDidMoveOverElement):
(API::UIClient::unavailablePluginButtonClicked):
(API::UIClient::implementsDidNotHandleKeyEvent):
(API::UIClient::didNotHandleKeyEvent):
(API::UIClient::implementsDidNotHandleWheelEvent):
(API::UIClient::didNotHandleWheelEvent):
(API::UIClient::toolbarsAreVisible):
(API::UIClient::setToolbarsAreVisible):
(API::UIClient::menuBarIsVisible):
(API::UIClient::setMenuBarIsVisible):
(API::UIClient::statusBarIsVisible):
(API::UIClient::setStatusBarIsVisible):
(API::UIClient::isResizable):
(API::UIClient::setIsResizable):
(API::UIClient::setWindowFrame):
(API::UIClient::windowFrame):
(API::UIClient::canRunBeforeUnloadConfirmPanel):
(API::UIClient::runBeforeUnloadConfirmPanel):
(API::UIClient::didDraw):
(API::UIClient::pageDidScroll):
(API::UIClient::exceededDatabaseQuota):
(API::UIClient::runOpenPanel):
(API::UIClient::decidePolicyForGeolocationPermissionRequest):
(API::UIClient::decidePolicyForNotificationPermissionRequest):
(API::UIClient::headerHeight):
(API::UIClient::footerHeight):
(API::UIClient::drawHeader):
(API::UIClient::drawFooter):
(API::UIClient::printFrame):
(API::UIClient::canRunModal):
(API::UIClient::runModal):
(API::UIClient::saveDataToFileInDownloadsFolder):
(API::UIClient::shouldInterruptJavaScript):
(API::UIClient::showColorPicker):
(API::UIClient::hideColorPicker):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setUIClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::createNewPage):
(WebKit::WebPageProxy::showPage):
(WebKit::WebPageProxy::closePage):
(WebKit::WebPageProxy::runJavaScriptAlert):
(WebKit::WebPageProxy::runJavaScriptConfirm):
(WebKit::WebPageProxy::runJavaScriptPrompt):
(WebKit::WebPageProxy::shouldInterruptJavaScript):
(WebKit::WebPageProxy::setStatusText):
(WebKit::WebPageProxy::mouseDidMoveOverElement):
(WebKit::WebPageProxy::unavailablePluginButtonClicked):
(WebKit::WebPageProxy::setToolbarsAreVisible):
(WebKit::WebPageProxy::getToolbarsAreVisible):
(WebKit::WebPageProxy::setMenuBarIsVisible):
(WebKit::WebPageProxy::getMenuBarIsVisible):
(WebKit::WebPageProxy::setStatusBarIsVisible):
(WebKit::WebPageProxy::getStatusBarIsVisible):
(WebKit::WebPageProxy::setIsResizable):
(WebKit::WebPageProxy::getIsResizable):
(WebKit::WebPageProxy::setWindowFrame):
(WebKit::WebPageProxy::getWindowFrame):
(WebKit::WebPageProxy::runBeforeUnloadConfirmPanel):
(WebKit::WebPageProxy::pageDidScroll):
(WebKit::WebPageProxy::runOpenPanel):
(WebKit::WebPageProxy::printFrame):
(WebKit::WebPageProxy::didDraw):
(WebKit::WebPageProxy::setFocus):
(WebKit::WebPageProxy::takeFocus):
(WebKit::WebPageProxy::didReceiveEvent):
(WebKit::WebPageProxy::creationParameters):
(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):
(WebKit::WebPageProxy::requestNotificationPermission):
(WebKit::WebPageProxy::headerHeight):
(WebKit::WebPageProxy::footerHeight):
(WebKit::WebPageProxy::drawHeader):
(WebKit::WebPageProxy::drawFooter):
(WebKit::WebPageProxy::runModal):
(WebKit::WebPageProxy::setCanRunModal):
(WebKit::WebPageProxy::saveDataToFileInDownloadsFolder):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebUIClient.cpp: Removed.
  • UIProcess/WebUIClient.h: Removed.
  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

  • WebKit2.xcodeproj/project.pbxproj:
3:38 PM Changeset in webkit [163479] by Alan Bujtas
  • 2 edits in branches/safari-537.74-branch/LayoutTests

Update expected result for media/video-controls-captions-trackmenu-sorted.html

  • platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:
3:30 PM Changeset in webkit [163478] by akling@apple.com
  • 5 edits in trunk/Source

Turn on ENABLE(8BIT_TEXTRUN) for everyone.
<https://webkit.org/b/128273>

Reviewed by Anders Carlsson.

  • platform/graphics/TextRun.h:

(WebCore::TextRun::TextRun):
(WebCore::TextRun::subRun):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::constructTextRun):

  • rendering/RenderBlock.h:
2:21 PM Changeset in webkit [163477] by BJ Burg
  • 20 edits
    7 adds in trunk

Web Inspector: add probe manager and model objects to the frontend
https://bugs.webkit.org/show_bug.cgi?id=127117

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

The inspector frontend now assigns breakpoint action identifiers,
rather than the backend. Remove return values containing breakpoint
identifiers, and remove tracking and assignment of action identifiers.

  • inspector/ScriptDebugListener.h:
  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::evaluateBreakpointAction):
(Inspector::ScriptDebugServer::dispatchBreakpointActionProbe):
Pass BreakpointAction by reference rather than just the action identifier.

  • inspector/ScriptDebugServer.h:
  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::objectGroupForBreakpointAction):
(Inspector::InspectorDebuggerAgent::InspectorDebuggerAgent):
(Inspector::InspectorDebuggerAgent::breakpointActionsFromProtocol):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::removeBreakpoint):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):

  • inspector/agents/InspectorDebuggerAgent.h:
  • inspector/protocol/Debugger.json: Revert change to setBreakpoint return values. Add optional identifier to breakpoint actions.

Source/WebInspectorUI:

Add the probe manager, and the following model objects:

  • ProbeObject corresponds to a single probe breakpoint action.
  • ProbeSetObject contains all ProbeObjects for one Breakpoint.
  • ProbeSetDataFrame holds probe samples from multiple

probes fired from the same breakpoint hit/debugger pause.

  • ProbeSetDataTable keeps track of multiple such data frames

and manages probe sample lifetimes across page navigations.

The probe manager updates probe model objects whenever breakpoints
are added, removed, or modified.

The inspector frontend now assigns breakpoint action identifiers,
rather than the backend. This lets ProbeObjects keep stable
identifiers that match the probe's samples, even when the underlying
breakpoint is re-added with a different identifier (such as when
editing probe expressions).

  • UserInterface/Breakpoint.js:

(WebInspector.Breakpoint.prototype.get probeActions): Added.
(WebInspector.Breakpoint.prototype.createAction):
(WebInspector.Breakpoint.prototype.removeAction):
(WebInspector.Breakpoint.prototype.clearActions): Added.

  • UserInterface/BreakpointAction.js:

(WebInspector.BreakpointAction):
(WebInspector.BreakpointAction.prototype.get id):
(WebInspector.BreakpointAction.prototype.get info):

  • UserInterface/DebuggerManager.js:

(WebInspector.DebuggerManager.restoreBreakpointsSoon):
(WebInspector.DebuggerManager): Restore saved breakpoints
from cookies on the second run loop, so that all managers will
be able to received breakpoint added events.
(WebInspector.DebuggerManager.prototype.addBreakpoint):
(WebInspector.DebuggerManager.prototype.removeBreakpoint):
(WebInspector.DebuggerManager.prototype.get nextBreakpointActionIdentifier):
The debugger manager assigns unique breakpoint action identifiers with this getter.

(WebInspector.DebuggerManager.prototype._debuggerBreakpointActionType):
(WebInspector.DebuggerManager.prototype.didSetBreakpoint):
(WebInspector.DebuggerManager.prototype._setBreakpoint):
(WebInspector.DebuggerManager.prototype.didRemoveBreakpoint):
(WebInspector.DebuggerManager.prototype._removeBreakpoint):

  • UserInterface/DebuggerObserver.js:

(WebInspector.DebuggerObserver.prototype.didSampleProbe):

  • UserInterface/InspectorJSBackendCommands.js:
  • UserInterface/Main.html:
  • UserInterface/Main.js:

(WebInspector.loaded):

  • UserInterface/Probe.js: Added.

(WebInspector.ProbeSample):
(WebInspector.Probe):
(WebInspector.Probe.prototype.get id):
(WebInspector.Probe.prototype.get breakpoint):
(WebInspector.Probe.prototype.get expression):
(WebInspector.Probe.prototype.set expression):
(WebInspector.Probe.prototype.get samples):
(WebInspector.Probe.prototype.clearSamples):
(WebInspector.Probe.prototype.addSample):

  • UserInterface/ProbeManager.js: Added.

(WebInspector.ProbeManager):
(WebInspector.ProbeManager.prototype.probeSetForBreakpoint):
(WebInspector.ProbeManager.prototype._breakpointRemoved):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged.get var):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged.set get knownProbeIdentifiers):
(WebInspector.ProbeManager.prototype._breakpointActionsChanged):

  • UserInterface/ProbeSet.js: Added.

(WebInspector.ProbeSet):
(WebInspector.ProbeSet.prototype.get breakpoint):
(WebInspector.ProbeSet.prototype.get probes):
(WebInspector.ProbeSet.prototype.get dataTable):
(WebInspector.ProbeSet.prototype.clear):
(WebInspector.ProbeSet.prototype.clearSamples):
(WebInspector.ProbeSet.prototype.createProbe):
(WebInspector.ProbeSet.prototype.removeProbe):
(WebInspector.ProbeSet.prototype.willRemove):
(WebInspector.ProbeSet.prototype._mainResourceChanged):
(WebInspector.ProbeSet.prototype._createDataTable):
(WebInspector.ProbeSet.prototype._sampleCollected):
(WebInspector.ProbeSet.prototype._breakpointResolvedStateDidChange):

  • UserInterface/ProbeSetDataFrame.js: Added.

(WebInspector.ProbeSetDataFrame):
(WebInspector.ProbeSetDataFrame.compare):
(WebInspector.ProbeSetDataFrame.prototype.get key):
(WebInspector.ProbeSetDataFrame.prototype.get count):
(WebInspector.ProbeSetDataFrame.prototype.get index):
(WebInspector.ProbeSetDataFrame.prototype.get isSeparator):
(WebInspector.ProbeSetDataFrame.prototype.set isSeparator):
(WebInspector.ProbeSetDataFrame.prototype.addSampleForProbe):
(WebInspector.ProbeSetDataFrame.prototype.missingKeys):
(WebInspector.ProbeSetDataFrame.prototype.isComplete):
(WebInspector.ProbeSetDataFrame.prototype.fillMissingValues):

  • UserInterface/ProbeSetDataTable.js: Added.

(WebInspector.ProbeSetDataTable):
(WebInspector.ProbeSetDataTable.prototype.get frames):
(WebInspector.ProbeSetDataTable.prototype.get separators):
(WebInspector.ProbeSetDataTable.prototype.willRemove):
(WebInspector.ProbeSetDataTable.prototype.mainResourceChanged):
(WebInspector.ProbeSetDataTable.prototype.addSampleForProbe):
(WebInspector.ProbeSetDataTable.prototype.addProbe):
(WebInspector.ProbeSetDataTable.prototype.removeProbe):
(WebInspector.ProbeSetDataTable.prototype.createFrame):
(WebInspector.ProbeSetDataTable.prototype.addFrame):
(WebInspector.ProbeSetDataTable.prototype.addSeparator):

LayoutTests:

Set up the debugger and probe managers when testing models.

Add a workalike for InspectorBackend.dumpInspectorProtocolMessages to
InspectorTest.

Add listeners for breakpoints and probes that produce
useful, deterministic trace output. Use the tracing in a new test.

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.sendCommand):
(InspectorTest.initializeInspectorModels.console.assert):
(InspectorTest.initializeInspectorModels):

  • inspector-protocol/debugger/didSampleProbe-multiple-probes-expected.txt:
  • inspector-protocol/debugger/didSampleProbe-multiple-probes.html:
  • inspector-protocol/model/probe-manager-add-remove-actions-expected.txt: Added.
  • inspector-protocol/model/probe-manager-add-remove-actions.html: Added.
  • inspector-protocol/resources/probe-helper.js:

(ProbeHelper.stringifyProbeSample):
(ProbeHelper.installTracingListeners.WebInspector):
(ProbeHelper.installTracingListeners):

1:54 PM Changeset in webkit [163476] by enrica@apple.com
  • 6 edits in trunk/Source

WK2: Caret, selections and autocorrection bubbles are incorrectly positioned when inside an iframe.
https://bugs.webkit.org/show_bug.cgi?id=128264
<rdar://problem/15986954>

Reviewed by Simon Fraser.

Source/WebCore:

Adding new exported function.

  • WebCore.exp.in:

Source/WebKit2:

Everywhere we return rectangles to the UIProcess, we need to convert them
to root view coordinates. Also, we should allow hit testing to go into child
frames.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::selectWithGesture):
(WebKit::WebPage::updateSelectionWithTouches):
(WebKit::WebPage::convertSelectionRectsToRootView):
(WebKit::WebPage::requestAutocorrectionData):
(WebKit::WebPage::getPositionInformation):

1:50 PM Changeset in webkit [163475] by Antti Koivisto
  • 7 edits in trunk

ElementRuleCollector should not use StyleResolver::State
https://bugs.webkit.org/show_bug.cgi?id=128247

Source/WebCore:

Reviewed by Andreas Kling.

Make ElementRuleCollector more reusable.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchUARules):
(WebCore::ElementRuleCollector::ruleMatches):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::ElementRuleCollector::matchAllRules):

  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::ElementRuleCollector):

Pass the objects that are actually needed rather than the entire State.

LayoutTests:

Reviewed by Andreas Kling.

  • platform/mac/fast/parser/xhtml-alternate-entities-expected.png:
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.txt: This is a progression.
1:44 PM Changeset in webkit [163474] by fpizlo@apple.com
  • 5 edits in trunk

JSC on Mac should pull LLVM from prefix=/usr/local/LLVMForJavaScriptCore and not /usr/local
https://bugs.webkit.org/show_bug.cgi?id=128269

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:
  • Configurations/LLVMForJSC.xcconfig:

Tools:

  • Scripts/copy-webkitlibraries-to-product-directory:
1:42 PM Changeset in webkit [163473] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix 32-bit builds after r163471

  • dfg/DFGOSRExitCompilerCommon.cpp:
1:29 PM Changeset in webkit [163472] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Mac] Correct copy/paste error in scrolling code.
https://bugs.webkit.org/show_bug.cgi?id=128258

Reviewed by Anders Carlsson.

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::pinnedInDirection): Use
'setWidth' when dealing with width metrics.

1:27 PM Changeset in webkit [163471] by mhahnenberg@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Can no longer run OctaneV2 in browser, crashes in speculationFromCell
https://bugs.webkit.org/show_bug.cgi?id=128266

Reviewed by Filip Pizlo.

Move the OSR exit write barriers into OSRExitCompilerCommon. Also reorganize some
of the code to be in more appropriate places.

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::osrWriteBarrier):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGSpeculativeJIT.cpp:
  • dfg/DFGSpeculativeJIT.h:
  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::genericWriteBarrier):

1:21 PM Changeset in webkit [163470] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] WKRemoteObjectInterface fails with doubles, NSNull, and empty NSStrings
https://bugs.webkit.org/show_bug.cgi?id=128268

Reviewed by Anders Carlsson.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]): When returning nullptr, also
set the length out parameter to 0.

  • Shared/API/Cocoa/WKRemoteObjectInterface.mm:

(propertyListClasses): Added NSNull.

  • Shared/UserData.cpp:

(WebKit::UserData::encode): Encode the Double type.

1:15 PM Changeset in webkit [163469] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Ruby base oddly justify its text when the text is ideograph and it contains <br> on Mac.
https://bugs.webkit.org/show_bug.cgi?id=106417

Patch by Yuki Sekiguchi <yuki.sekiguchi@access-company.com> on 2014-02-05
Reviewed by David Hyatt.

Source/WebCore:

Ruby base always justify even if a line have hard break.
Even if next leaf child is line break, InlineTextBox allow trailing expansion.
This make <br> expanded, and there is odd space at the end of the line.

Test: fast/text/ruby-justification-br.html

  • rendering/InlineTextBox.h:

(WebCore::InlineTextBox::expansionBehavior):

  • If next leaf child is line break, we should forbid trailing expansion.

LayoutTests:

Test that <br> don't change justification behavior in ruby base.

  • fast/text/ruby-justification-br-expected.html: Added.
  • fast/text/ruby-justification-br.html: Added.
1:04 PM Changeset in webkit [163468] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

Create CSS Grid Layout watchlist
https://bugs.webkit.org/show_bug.cgi?id=128241

Reviewed by Andreas Kling.

Add Sergio Villar, Javier Fernandez and myself to it.

Add Javier Fernandez as contributor.

  • Scripts/webkitpy/common/config/contributors.json:
  • Scripts/webkitpy/common/config/watchlist:
12:57 PM Changeset in webkit [163467] by commit-queue@webkit.org
  • 3 edits
    1 delete in trunk/LayoutTests

Fix srcset change test flakiness
https://bugs.webkit.org/show_bug.cgi?id=128265

Patch by Yoav Weiss <yoav@yoav.ws> on 2014-02-05
Reviewed by Alexey Proskuryakov.

  • fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt:
  • fast/hidpi/image-srcset-change-dynamically-from-js-2x.html:
  • platform/gtk-wk2/fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt: Removed.
12:42 PM Changeset in webkit [163466] by akling@apple.com
  • 15 edits in trunk/Source

FrameLoader::stateMachine() should return a reference.
<https://webkit.org/b/128263>

There is always a FrameLoaderStateMatchine, so return it by
reference since it can never be null.

Reviewed by Anders Carlsson.

  • history/PageCache.cpp:

(WebCore::logCanCachePageDecision):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::commitData):
(WebCore::DocumentLoader::maybeLoadEmpty):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::createDocument):
(WebCore::DocumentWriter::begin):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::prepareForHistoryNavigation):

  • loader/FrameLoader.h:

(WebCore::FrameLoader::stateMachine):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::restoreScrollPositionAndViewState):
(WebCore::HistoryController::saveDocumentState):

  • loader/NavigationScheduler.cpp:

(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::NavigationScheduler::scheduleFormSubmission):

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::incrementProgress):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::storeResourceTimingInitiatorInformation):

  • page/Frame.cpp:

(WebCore::Frame::injectUserScripts):

  • page/FrameView.cpp:

(WebCore::FrameView::qualifiesAsVisuallyNonEmpty):

12:04 PM Changeset in webkit [163465] by mmaxfield@apple.com
  • 5 edits
    2 adds in trunk

Move characterAt index checks from InlineIterator to RenderText
https://bugs.webkit.org/show_bug.cgi?id=128224

Source/WebCore:

Reviewed by Simon Fraser.

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Test: fast/text/character-at-crash.html

  • rendering/InlineIterator.h:

(WebCore::InlineIterator::characterAt):

  • rendering/RenderText.cpp:

(WebCore::RenderText::computePreferredLogicalWidths):

  • rendering/RenderText.h:

(WebCore::RenderText::operator[]):
(WebCore::RenderText::uncheckedCharacterAt):
(WebCore::RenderText::characterAt):

LayoutTests:

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Reviewed by Simon Fraser.

  • fast/text/character-at-crash-expected.txt: Added.
  • fast/text/character-at-crash.html: Added.
12:04 PM Changeset in webkit [163464] by ap@apple.com
  • 2 edits in trunk/Tools

Copying failing test paths from build.webkit.org/dashboard popovers also copies non-selectable links
https://bugs.webkit.org/show_bug.cgi?id=128236

Reviewed by Timothy Hatcher.

Work around bug 80159 - copying should always respect user-select:none, but it doesn't yet.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:

When copying, temporarily make non-selectable parts invisible, and put text of
the selection onto pasteboard. Since we immediately make everything visible again,
there is even no blinking.

12:03 PM Changeset in webkit [163463] by nick.yamane@openbossa.org
  • 2 edits in trunk/Tools

Unreviewed. Add myself to contributors.json

  • Scripts/webkitpy/common/config/contributors.json:
11:39 AM Changeset in webkit [163462] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Add test expectations for tests crashing after r162947 and for http tests.

  • platform/efl-wk2/TestExpectations:
11:26 AM Changeset in webkit [163461] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WTF

Merge r163460 - HashMap can't be used with std::unique_ptr as value when it has a custom deleter
https://bugs.webkit.org/show_bug.cgi?id=128250

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2014-02-05
Reviewed by Darin Adler.

The problem is that the HashMap is using a unique_ptr with the
default deleter, so that when trying to move the unique_ptr the
deleters don't match.

  • wtf/HashTraits.h: Add the deleter also in the template

definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>

11:13 AM Changeset in webkit [163460] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

HashMap can't be used with std::unique_ptr as value when it has a custom deleter
https://bugs.webkit.org/show_bug.cgi?id=128250

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2014-02-05
Reviewed by Darin Adler.

The problem is that the HashMap is using a unique_ptr with the
default deleter, so that when trying to move the unique_ptr the
deleters don't match.

  • wtf/HashTraits.h: Add the deleter also in the template

definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>

10:51 AM Changeset in webkit [163459] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Remove leftover seamless iframe logic from containerForRepaint().
<https://webkit.org/b/128235>

The parent-flow-thread-in-different-document case is no longer
relevant after <iframe seamless> was removed.

Reviewed by David Hyatt.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

10:39 AM Changeset in webkit [163458] by hmuller@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Shapes] Dynamically created element with image valued shape-outside doesn't update automatically
https://bugs.webkit.org/show_bug.cgi?id=128187

Reviewed by Dean Jackson.

Source/WebCore:

Corrected the way shape-outside handles the completion of an image load. Move
the shape-outside imageChanged() logic from RenderBlock to RenderBox and call
markShapeOutsideDependentsForLayout() instead of parent()->setNeedsLayoutAndPrefWidthsRecalc().
The latter did not deal with descendants of the shape element's siblings correctly and it
failed when the shape element was inserted dynamically. The markShapeOutsideDependentsForLayout()
method can't be called during layout, so the imageChanged() code checks for that. The only
scenario where imageChanged() can be called during layout (that I've discovered so far anyway)
is when an SVG Image is renderered with drawImage(). The Shape::createRasterShape() does this,
and the corresponding imageChanged() notification can be safely ignored.

Test: fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::imageChanged):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::imageChanged):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html: Added.
10:25 AM Changeset in webkit [163457] by akling@apple.com
  • 14 edits in trunk/Source/WebCore

CTTE: ImageLoader is always owned by an Element.
<https://webkit.org/b/128254>

  • Codify this by making the constructor take Element& or better.
  • Make element() return Element&.
  • Marked HTMLImageLoader and SVGImageLoader final.
  • Made the ImageLoader constructor protected.

Reviewed by Sam Weinig.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::HTMLImageElement):

  • html/HTMLImageLoader.cpp:

(WebCore::HTMLImageLoader::HTMLImageLoader):
(WebCore::HTMLImageLoader::dispatchLoadEvent):
(WebCore::HTMLImageLoader::sourceURI):
(WebCore::HTMLImageLoader::notifyFinished):

  • html/HTMLImageLoader.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::imageLoader):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::startLoadingImage):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::didAttachRenderers):
(WebCore::HTMLVideoElement::parseAttribute):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::ImageLoader):
(WebCore::ImageLoader::~ImageLoader):
(WebCore::ImageLoader::updateFromElement):
(WebCore::ImageLoader::notifyFinished):
(WebCore::ImageLoader::renderImageResource):
(WebCore::ImageLoader::updatedHasPendingEvent):
(WebCore::ImageLoader::timerFired):
(WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
(WebCore::ImageLoader::dispatchPendingLoadEvent):
(WebCore::ImageLoader::dispatchPendingErrorEvent):

  • loader/ImageLoader.h:

(WebCore::ImageLoader::element):

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::SVGImageElement):

  • svg/SVGImageLoader.cpp:

(WebCore::SVGImageLoader::SVGImageLoader):
(WebCore::SVGImageLoader::~SVGImageLoader):
(WebCore::SVGImageLoader::dispatchLoadEvent):
(WebCore::SVGImageLoader::sourceURI):

  • svg/SVGImageLoader.h:
10:11 AM Changeset in webkit [163456] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2] [iOS] No video on embedded YouTube
https://bugs.webkit.org/show_bug.cgi?id=128237

Reviewed by Sam Weinig.

We were using the wrong #if directive; PLUGIN_PROXY_FOR_VIDEO is an ENABLE not a USE.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

10:05 AM Changeset in webkit [163455] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128253

Unreviewed EFL layout tests gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-05

  • platform/efl/TestExpectations:
9:59 AM Changeset in webkit [163454] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Tests compositing/columns/composited-rl-paginated-repaint.html and
compositing/columns/composited-lr-paginated-repaint.html are flaky
https://bugs.webkit.org/show_bug.cgi?id=128255

  • platform/mac-wk2/TestExpectations: Marked them as such.
9:53 AM Changeset in webkit [163453] by Sergio Correia
  • 3 edits
    2 adds in trunk

SVG preserveAspectRatio=none is not honored.
https://bugs.webkit.org/show_bug.cgi?id=111402

Reviewed by Andreas Kling.

Source/WebCore:

Previously, preserveAspectRatio=none had no effect on SVG images. This change fixes this so
we follow the special handling of preserveAspectRatio on images as defined in the spec:
http://www.w3.org/TR/SVG/single-page.html, 7.8 The ‘preserveAspectRatio’ attribute.

Images that depend on a container size (such as SVG images) require a call to
setContainerSizeForRenderer(...) to set this size. By passing the image's intrinsic size
as the container size, the non-uniform scaling defined in the spec will be achieved.

Merged from Blink: https://chromiumcodereview.appspot.com/14964004

Test: svg/custom/image-with-preserveAspectRatio-none.html

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::updateImageViewport):

LayoutTests:

New test for SVG with preserveAspectRatio=none.

Merged from Blink: https://chromiumcodereview.appspot.com/14964004

  • svg/custom/image-with-preserveAspectRatio-none-expected.html: Added.
  • svg/custom/image-with-preserveAspectRatio-none.html: Added.
9:36 AM Changeset in webkit [163452] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Simplify CSSBasicShapeInset::cssText
https://bugs.webkit.org/show_bug.cgi?id=127841

Reviewed by David Hyatt.

I introduced the updateCornerRadiusWidthAndHeight helper function, which makes the code of cssText method clearer.

No new tests, no behavior change.

  • css/CSSBasicShapes.cpp:

(WebCore::updateCornerRadiusWidthAndHeight): Add helper function.
(WebCore::CSSBasicShapeInset::cssText):

9:34 AM Changeset in webkit [163451] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Simplify BasicShapeInset::path
https://bugs.webkit.org/show_bug.cgi?id=127920

Reviewed by David Hyatt.

I introduced a new static helper function called floatSizeForLengthSize
in order to simplify BasicShapeInset::path method.

No new tests, no behavior change.

  • rendering/style/BasicShapes.cpp:

(WebCore::floatSizeForLengthSize): New helper function.
(WebCore::BasicShapeInset::path):

9:31 AM Changeset in webkit [163450] by mhahnenberg@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Malloc called beneath MachineThreads::gatherFromOtherThread(), while forbidden
https://bugs.webkit.org/show_bug.cgi?id=128202

Reviewed by Geoffrey Garen.

This patch uses the new GCSegmentedArray to replace the Vector that was used
to record the set of currently executing CodeBlocks during the conservative
stack scan. This is primarily to avoid the possibility of the Vector resizing
while FastMalloc is forbidden.

  • heap/BlockAllocator.h:
  • heap/CodeBlockSet.cpp:

(JSC::CodeBlockSet::CodeBlockSet):
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks):

  • heap/CodeBlockSet.h:
  • heap/GCSegmentedArray.h:

(JSC::GCSegmentedArray::begin):
(JSC::GCSegmentedArray::end):
(JSC::GCSegmentedArrayIterator::GCSegmentedArrayIterator):
(JSC::GCSegmentedArrayIterator::get):
(JSC::GCSegmentedArrayIterator::operator*):
(JSC::GCSegmentedArrayIterator::operator->):
(JSC::GCSegmentedArrayIterator::operator==):
(JSC::GCSegmentedArrayIterator::operator!=):
(JSC::GCSegmentedArrayIterator::operator++):

  • heap/Heap.cpp:

(JSC::Heap::Heap):

9:13 AM Changeset in webkit [163449] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose more WKWebProcessPlugInFrame properties
https://bugs.webkit.org/show_bug.cgi?id=128240

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h: Declared new properties.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(-[WKWebProcessPlugInFrame URL]): Added.
(-[WKWebProcessPlugInFrame childFrames]): Added.
(-[WKWebProcessPlugInFrame containsAnyFormElements]): Added.

9:13 AM Changeset in webkit [163448] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Notify WKWebProcessPlugInLoadDelegate when a frame is removed from the frame hierarchy
https://bugs.webkit.org/show_bug.cgi?id=128239

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Declared new

delegate method.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(didRemoveFrameFromHierarchy): Implemented this page loader client callback by calling the
load delegate.
(setUpPageLoaderClient): Set the above callback in the client structure.

8:13 AM Changeset in webkit [163447] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

fast/hidpi/image-srcset-relative-svg-canvas.html needs ImageOnlyFailure tag.

7:25 AM Changeset in webkit [163446] by Sergio Correia
  • 3 edits in trunk/Tools

Unreviewed. Add myself to contributor and watch lists

  • Scripts/webkitpy/common/config/contributors.json:
  • Scripts/webkitpy/common/config/watchlist:
5:59 AM Changeset in webkit [163445] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.3.5

Tagging the WebKitGTK+ 2.3.5 release

4:58 AM Changeset in webkit [163444] by commit-queue@webkit.org
  • 6 edits in trunk/Source

XMLHttpRequest performs too many copies for ArrayBuffer results
https://bugs.webkit.org/show_bug.cgi?id=117458

Patch by Wojciech Bielawski <w.bielawski@samsung.com> on 2014-02-05
Reviewed by Alexey Proskuryakov.

Based on blink change: https://chromium.googlesource.com/chromium/blink/+/bed266aa5a43f7c080c87e527bd35e2b80ecc7b7

Add SharedBuffer::createArrayBuffer() and use it to create XMLHttpRequest's response in ArrayBuffer
This cuts

  • two memsets (in ArrayBuffer::create and SharedBuffer::m_buffer::resize)
  • one copy (SharedBuffer::m_buffer to ArrayBufferContents::m_data)
  • one allocation (SharedBuffer::m_buffer)

Source/JavaScriptCore:

  • runtime/ArrayBuffer.h:

Source/WebCore:

No new tests. WebKit desn't provide test mechanism similar to blink's one.

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::createArrayBuffer):

  • platform/SharedBuffer.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseArrayBuffer):

4:57 AM Changeset in webkit [163443] by berto@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself to some watchlists.

  • Scripts/webkitpy/common/config/watchlist:
4:31 AM Changeset in webkit [163442] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Unreviewed. Update NEWS and Versions.m4 for 2.3.5 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.3.5.
4:31 AM Changeset in webkit [163441] by rgabor@webkit.org
  • 2 edits in trunk/Tools

Fix WaitForSVNServer build step after r163372.

Rubber-stamped by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(WaitForSVNServer.evaluateCommand): add missing return SUCCESS

4:29 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
4:15 AM WebKitGTK/2.2.x edited by berto@igalia.com
(diff)
3:42 AM Changeset in webkit [163440] by Csaba Osztrogonác
  • 788 edits in trunk

Remove ENABLE(SVG) guards
https://bugs.webkit.org/show_bug.cgi?id=127991

Reviewed by Sam Weinig.

.:

  • Source/autotools/FindDependencies.m4:
  • Source/autotools/PrintBuildConfiguration.m4:
  • Source/autotools/ReadCommandLineArguments.m4:
  • Source/autotools/SetupAutomake.m4:
  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • GNUmakefile.am:
  • UseJSC.cmake:
  • WebCore.exp.in:
  • accessibility/AXObjectCache.cpp:

(WebCore::createFromRenderer):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::alternativeText):
(WebCore::AccessibilityNodeObject::accessibilityDescription):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::supportsPath):
(WebCore::AccessibilityRenderObject::elementPath):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::remoteSVGRootElement):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper isSVGGroupElement]):

  • bindings/gobject/GNUmakefile.am:
  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSElementCustom.cpp:

(WebCore::toJSNewlyCreated):

  • bindings/js/JSExceptionBase.cpp:

(WebCore::toExceptionBase):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::createWrapperInline):

  • bindings/js/JSSVGElementInstanceCustom.cpp:
  • bindings/js/JSSVGLengthCustom.cpp:
  • bindings/js/JSSVGPathSegCustom.cpp:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSCursorImageValue.cpp:

(WebCore::resourceReferencedByCursorElement):
(WebCore::CSSCursorImageValue::~CSSCursorImageValue):
(WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
(WebCore::CSSCursorImageValue::cachedImage):
(WebCore::CSSCursorImageValue::removeReferencedElement):

  • css/CSSCursorImageValue.h:
  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/CSSFontSelector.cpp:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseClipPath):
(WebCore::CSSParser::parseShadow):
(WebCore::CSSParser::parseFilter):
(WebCore::CSSParser::realLex):

  • css/CSSParser.h:
  • css/CSSPrimitiveValueMappings.h:
  • css/CSSStyleSheet.cpp:

(WebCore::isAcceptableCSSStyleSheetParent):

  • css/CSSValue.cpp:

(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):
(WebCore::CSSValue::cloneForCSSOM):

  • css/CSSValue.h:

(WebCore::CSSValue::isSubtypeExposedToCSSOM):

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

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):
(WebCore::ApplyPropertyClipPath::applyValue):

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::matchAllRules):

  • css/SVGCSSComputedStyleDeclaration.cpp:
  • css/SVGCSSParser.cpp:
  • css/SVGCSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp:
  • css/StyleProperties.cpp:

(WebCore::StyleProperties::getPropertyValue):

  • css/StylePropertyShorthand.cpp:

(WebCore::markerShorthand):
(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):

  • css/StylePropertyShorthand.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::locateCousinList):
(WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::isValidVisitedLinkProperty):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::loadPendingSVGDocuments):
(WebCore::StyleResolver::createFilterOperations):
(WebCore::StyleResolver::loadPendingResources):

  • css/StyleResolver.h:
  • dom/DOMExceptions.in:
  • dom/DOMImplementation.cpp:

(WebCore::addString):
(WebCore::isSupportedSVG11Feature):
(WebCore::DOMImplementation::hasFeature):
(WebCore::DOMImplementation::createDocument):

  • dom/Document.cpp:

(WebCore::Document::commonTeardown):
(WebCore::Document::createElement):
(WebCore::Document::implicitClose):
(WebCore::Document::hasSVGRootNode):

  • dom/Document.h:
  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):

  • dom/Element.cpp:

(WebCore::Element::~Element):
(WebCore::Element::synchronizeAllAttributes):
(WebCore::Element::synchronizeAttribute):
(WebCore::Element::boundsInRootViewSpace):
(WebCore::Element::getBoundingClientRect):
(WebCore::Element::removedFrom):
(WebCore::Element::childShouldCreateRenderer):
(WebCore::Element::fastAttributeLookupAllowed):
(WebCore::Element::clearHasPendingResources):

  • dom/Element.h:
  • dom/ElementData.h:
  • dom/ElementRareData.h:

(WebCore::ElementRareData::ElementRareData):

  • dom/EventDispatcher.cpp:

(WebCore::eventTargetRespectingTargetRules):

  • dom/EventListenerMap.cpp:
  • dom/EventListenerMap.h:
  • dom/EventNames.in:
  • dom/EventTargetFactory.in:
  • dom/QualifiedName.cpp:
  • dom/ScriptElement.cpp:

(WebCore::toScriptElementIfPossible):

  • dom/Text.cpp:

(WebCore::isSVGText):
(WebCore::Text::createTextRenderer):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLAnchorElement.cpp:

(WebCore::shouldProhibitLinks):

  • html/HTMLEmbedElement.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::getSVGDocument):

  • html/HTMLFrameOwnerElement.h:
  • html/HTMLIFrameElement.idl:
  • html/HTMLObjectElement.idl:
  • html/canvas/DOMPath.h:

(WebCore::DOMPath::create):

  • html/canvas/DOMPath.idl:
  • html/parser/XSSAuditor.cpp:

(WebCore::isSemicolonSeparatedAttribute):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setOuterHTML):

  • inspector/InspectorOverlay.cpp:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::inlineStyleSheetText):

  • loader/FrameLoader.cpp:
  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::renderImageResource):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::didRemoveClient):
(WebCore::CachedImage::imageForRenderer):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):
(WebCore::CachedImage::createImage):

  • loader/cache/CachedImage.h:
  • loader/cache/CachedResource.cpp:

(WebCore::defaultPriorityForResourceType):

  • loader/cache/CachedResource.h:
  • loader/cache/CachedResourceClient.h:
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::createResource):
(WebCore::CachedResourceLoader::requestSVGDocument):
(WebCore::CachedResourceLoader::checkInsecureContent):
(WebCore::CachedResourceLoader::canRequest):

  • loader/cache/CachedResourceLoader.h:
  • loader/cache/CachedSVGDocument.cpp:
  • loader/cache/CachedSVGDocument.h:
  • loader/cache/CachedSVGDocumentClient.h:
  • loader/cache/CachedSVGDocumentReference.cpp:
  • loader/cache/CachedSVGDocumentReference.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::instanceAssociatedWithShadowTreeElement):
(WebCore::EventHandler::updateMouseEventTargetNode):

  • page/EventHandler.h:
  • page/Frame.cpp:

(WebCore::Frame::setPageAndTextZoomFactors):

  • page/FrameView.cpp:

(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::forceLayoutParentViewIfNeeded):
(WebCore::FrameView::embeddedContentBox):
(WebCore::FrameView::scrollToAnchor):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedNonImageMimeTypes):

  • platform/graphics/TextRun.cpp:
  • platform/graphics/TextRun.h:

(WebCore::TextRun::TextRun):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advanceInternal):

  • platform/graphics/filters/FETile.cpp:

(WebCore::FETile::platformApplySoftware):

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::ReferenceFilterOperation::getOrCreateCachedSVGDocumentReference):

  • platform/graphics/filters/FilterOperation.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::getURLForImageElement):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):

  • rendering/HitTestLocation.cpp:
  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::absoluteImageURL):
(WebCore::HitTestResult::absoluteLinkURL):
(WebCore::HitTestResult::isLiveLink):

  • rendering/InlineBox.h:
  • rendering/LogicalSelectionOffsetCaches.h:

(WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject):

  • rendering/PaintInfo.h:

(WebCore::PaintInfo::applyTransform):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::addChild):
(WebCore::RenderElement::layerCreationAllowedForSubtree):
(WebCore::RenderElement::styleDidChange):

  • rendering/RenderGeometryMap.cpp:

(WebCore::canMapBetweenRenderers):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::embeddedContentBox):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::isTransparent):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::~FilterInfo):

  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderNamedFlowThread.cpp:

(WebCore::nextNodeInsideContentElement):

  • rendering/RenderObject.cpp:

(WebCore::objectIsRelayoutBoundary):
(WebCore::RenderObject::container):
(WebCore::RenderObject::willBeRemovedFromTree):

  • rendering/RenderObject.h:

(WebCore::RenderObject::canContainFixedPositionObjects):
(WebCore::RenderObject::preservesNewline):

  • rendering/RenderTreeAsText.cpp:

(WebCore::write):

  • rendering/RenderView.cpp:

(WebCore::RenderView::layout):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::alignBoxesInBlockDirection):

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::initializeForCurrentObject):
(WebCore::BreakingContext::handleText):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::inheritFrom):
(WebCore::RenderStyle::copyNonInheritedFrom):
(WebCore::RenderStyle::operator==):
(WebCore::RenderStyle::inheritedNotEqual):
(WebCore::RenderStyle::inheritedDataShared):
(WebCore::RenderStyle::diff):

  • rendering/style/RenderStyle.h:
  • rendering/style/SVGRenderStyle.cpp:
  • rendering/style/SVGRenderStyle.h:
  • rendering/style/SVGRenderStyleDefs.cpp:
  • rendering/style/SVGRenderStyleDefs.h:
  • rendering/svg/RenderSVGBlock.cpp:
  • rendering/svg/RenderSVGBlock.h:
  • rendering/svg/RenderSVGContainer.cpp:
  • rendering/svg/RenderSVGContainer.h:
  • rendering/svg/RenderSVGEllipse.cpp:
  • rendering/svg/RenderSVGEllipse.h:
  • rendering/svg/RenderSVGForeignObject.cpp:
  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGGradientStop.cpp:
  • rendering/svg/RenderSVGGradientStop.h:
  • rendering/svg/RenderSVGHiddenContainer.cpp:
  • rendering/svg/RenderSVGHiddenContainer.h:
  • rendering/svg/RenderSVGImage.cpp:
  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGInline.cpp:
  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGInlineText.cpp:
  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGModelObject.cpp:
  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGPath.cpp:
  • rendering/svg/RenderSVGPath.h:
  • rendering/svg/RenderSVGRect.cpp:
  • rendering/svg/RenderSVGRect.h:
  • rendering/svg/RenderSVGResource.cpp:
  • rendering/svg/RenderSVGResource.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:
  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:
  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:
  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
  • rendering/svg/RenderSVGResourceFilterPrimitive.h:
  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/RenderSVGResourceGradient.h:
  • rendering/svg/RenderSVGResourceLinearGradient.cpp:
  • rendering/svg/RenderSVGResourceLinearGradient.h:
  • rendering/svg/RenderSVGResourceMarker.cpp:
  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:
  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:
  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceRadialGradient.cpp:
  • rendering/svg/RenderSVGResourceRadialGradient.h:
  • rendering/svg/RenderSVGResourceSolidColor.cpp:
  • rendering/svg/RenderSVGResourceSolidColor.h:
  • rendering/svg/RenderSVGRoot.cpp:
  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGShape.cpp:
  • rendering/svg/RenderSVGShape.h:
  • rendering/svg/RenderSVGTSpan.h:
  • rendering/svg/RenderSVGText.cpp:
  • rendering/svg/RenderSVGText.h:
  • rendering/svg/RenderSVGTextPath.cpp:
  • rendering/svg/RenderSVGTextPath.h:
  • rendering/svg/RenderSVGTransformableContainer.cpp:
  • rendering/svg/RenderSVGTransformableContainer.h:
  • rendering/svg/RenderSVGViewportContainer.cpp:
  • rendering/svg/RenderSVGViewportContainer.h:
  • rendering/svg/SVGInlineFlowBox.cpp:
  • rendering/svg/SVGInlineFlowBox.h:
  • rendering/svg/SVGInlineTextBox.cpp:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGMarkerData.h:
  • rendering/svg/SVGPathData.cpp:
  • rendering/svg/SVGPathData.h:
  • rendering/svg/SVGRenderSupport.cpp:
  • rendering/svg/SVGRenderSupport.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:
  • rendering/svg/SVGRenderTreeAsText.h:
  • rendering/svg/SVGRenderingContext.cpp:
  • rendering/svg/SVGRenderingContext.h:
  • rendering/svg/SVGResources.cpp:
  • rendering/svg/SVGResources.h:
  • rendering/svg/SVGResourcesCache.cpp:
  • rendering/svg/SVGResourcesCache.h:
  • rendering/svg/SVGResourcesCycleSolver.cpp:
  • rendering/svg/SVGResourcesCycleSolver.h:
  • rendering/svg/SVGRootInlineBox.cpp:
  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGSubpathData.h:
  • rendering/svg/SVGTextChunk.cpp:
  • rendering/svg/SVGTextChunk.h:
  • rendering/svg/SVGTextChunkBuilder.cpp:
  • rendering/svg/SVGTextChunkBuilder.h:
  • rendering/svg/SVGTextFragment.h:
  • rendering/svg/SVGTextLayoutAttributes.cpp:
  • rendering/svg/SVGTextLayoutAttributes.h:
  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
  • rendering/svg/SVGTextLayoutAttributesBuilder.h:
  • rendering/svg/SVGTextLayoutEngine.cpp:
  • rendering/svg/SVGTextLayoutEngine.h:
  • rendering/svg/SVGTextLayoutEngineBaseline.cpp:
  • rendering/svg/SVGTextLayoutEngineBaseline.h:
  • rendering/svg/SVGTextLayoutEngineSpacing.cpp:
  • rendering/svg/SVGTextLayoutEngineSpacing.h:
  • rendering/svg/SVGTextMetrics.cpp:
  • rendering/svg/SVGTextMetrics.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:
  • rendering/svg/SVGTextMetricsBuilder.h:
  • rendering/svg/SVGTextQuery.cpp:
  • rendering/svg/SVGTextQuery.h:
  • svg/ColorDistance.cpp:
  • svg/ColorDistance.h:
  • svg/GradientAttributes.h:
  • svg/LinearGradientAttributes.h:
  • svg/PatternAttributes.h:
  • svg/RadialGradientAttributes.h:
  • svg/SVGAElement.cpp:
  • svg/SVGAElement.h:
  • svg/SVGAElement.idl:
  • svg/SVGAltGlyphDefElement.cpp:
  • svg/SVGAltGlyphDefElement.h:
  • svg/SVGAltGlyphDefElement.idl:
  • svg/SVGAltGlyphElement.cpp:
  • svg/SVGAltGlyphElement.h:
  • svg/SVGAltGlyphElement.idl:
  • svg/SVGAltGlyphItemElement.cpp:
  • svg/SVGAltGlyphItemElement.h:
  • svg/SVGAltGlyphItemElement.idl:
  • svg/SVGAngle.cpp:
  • svg/SVGAngle.h:
  • svg/SVGAngle.idl:
  • svg/SVGAnimateColorElement.cpp:
  • svg/SVGAnimateColorElement.h:
  • svg/SVGAnimateColorElement.idl:
  • svg/SVGAnimateElement.cpp:
  • svg/SVGAnimateElement.h:
  • svg/SVGAnimateElement.idl:
  • svg/SVGAnimateMotionElement.cpp:
  • svg/SVGAnimateMotionElement.h:
  • svg/SVGAnimateMotionElement.idl:
  • svg/SVGAnimateTransformElement.cpp:
  • svg/SVGAnimateTransformElement.h:
  • svg/SVGAnimateTransformElement.idl:
  • svg/SVGAnimatedAngle.cpp:
  • svg/SVGAnimatedAngle.h:
  • svg/SVGAnimatedAngle.idl:
  • svg/SVGAnimatedBoolean.cpp:
  • svg/SVGAnimatedBoolean.h:
  • svg/SVGAnimatedBoolean.idl:
  • svg/SVGAnimatedColor.cpp:
  • svg/SVGAnimatedColor.h:
  • svg/SVGAnimatedEnumeration.cpp:
  • svg/SVGAnimatedEnumeration.h:
  • svg/SVGAnimatedEnumeration.idl:
  • svg/SVGAnimatedInteger.cpp:
  • svg/SVGAnimatedInteger.h:
  • svg/SVGAnimatedInteger.idl:
  • svg/SVGAnimatedIntegerOptionalInteger.cpp:
  • svg/SVGAnimatedIntegerOptionalInteger.h:
  • svg/SVGAnimatedLength.cpp:
  • svg/SVGAnimatedLength.h:
  • svg/SVGAnimatedLength.idl:
  • svg/SVGAnimatedLengthList.cpp:
  • svg/SVGAnimatedLengthList.h:
  • svg/SVGAnimatedLengthList.idl:
  • svg/SVGAnimatedNumber.cpp:
  • svg/SVGAnimatedNumber.h:
  • svg/SVGAnimatedNumber.idl:
  • svg/SVGAnimatedNumberList.cpp:
  • svg/SVGAnimatedNumberList.h:
  • svg/SVGAnimatedNumberList.idl:
  • svg/SVGAnimatedNumberOptionalNumber.cpp:
  • svg/SVGAnimatedNumberOptionalNumber.h:
  • svg/SVGAnimatedPath.cpp:
  • svg/SVGAnimatedPath.h:
  • svg/SVGAnimatedPointList.cpp:
  • svg/SVGAnimatedPointList.h:
  • svg/SVGAnimatedPreserveAspectRatio.cpp:
  • svg/SVGAnimatedPreserveAspectRatio.h:
  • svg/SVGAnimatedPreserveAspectRatio.idl:
  • svg/SVGAnimatedRect.cpp:
  • svg/SVGAnimatedRect.h:
  • svg/SVGAnimatedRect.idl:
  • svg/SVGAnimatedString.cpp:
  • svg/SVGAnimatedString.h:
  • svg/SVGAnimatedString.idl:
  • svg/SVGAnimatedTransformList.cpp:
  • svg/SVGAnimatedTransformList.h:
  • svg/SVGAnimatedTransformList.idl:
  • svg/SVGAnimatedType.cpp:
  • svg/SVGAnimatedType.h:
  • svg/SVGAnimatedTypeAnimator.cpp:
  • svg/SVGAnimatedTypeAnimator.h:
  • svg/SVGAnimationElement.cpp:
  • svg/SVGAnimationElement.h:
  • svg/SVGAnimationElement.idl:
  • svg/SVGAnimatorFactory.h:
  • svg/SVGCircleElement.cpp:
  • svg/SVGCircleElement.h:
  • svg/SVGCircleElement.idl:
  • svg/SVGClipPathElement.cpp:
  • svg/SVGClipPathElement.h:
  • svg/SVGClipPathElement.idl:
  • svg/SVGColor.cpp:
  • svg/SVGColor.h:
  • svg/SVGColor.idl:
  • svg/SVGComponentTransferFunctionElement.cpp:
  • svg/SVGComponentTransferFunctionElement.h:
  • svg/SVGComponentTransferFunctionElement.idl:
  • svg/SVGCursorElement.cpp:
  • svg/SVGCursorElement.h:
  • svg/SVGCursorElement.idl:
  • svg/SVGDefsElement.cpp:
  • svg/SVGDefsElement.h:
  • svg/SVGDefsElement.idl:
  • svg/SVGDescElement.cpp:
  • svg/SVGDescElement.h:
  • svg/SVGDescElement.idl:
  • svg/SVGDocument.cpp:
  • svg/SVGDocument.h:
  • svg/SVGDocument.idl:
  • svg/SVGDocumentExtensions.cpp:
  • svg/SVGDocumentExtensions.h:
  • svg/SVGElement.cpp:
  • svg/SVGElement.h:
  • svg/SVGElement.idl:
  • svg/SVGElementInstance.cpp:
  • svg/SVGElementInstance.h:
  • svg/SVGElementInstance.idl:
  • svg/SVGElementInstanceList.cpp:
  • svg/SVGElementInstanceList.h:
  • svg/SVGElementInstanceList.idl:
  • svg/SVGEllipseElement.cpp:
  • svg/SVGEllipseElement.h:
  • svg/SVGEllipseElement.idl:
  • svg/SVGException.cpp:
  • svg/SVGException.h:
  • svg/SVGException.idl:
  • svg/SVGExternalResourcesRequired.cpp:
  • svg/SVGExternalResourcesRequired.h:
  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFEBlendElement.cpp:
  • svg/SVGFEBlendElement.h:
  • svg/SVGFEBlendElement.idl:
  • svg/SVGFEColorMatrixElement.cpp:
  • svg/SVGFEColorMatrixElement.h:
  • svg/SVGFEColorMatrixElement.idl:
  • svg/SVGFEComponentTransferElement.cpp:
  • svg/SVGFEComponentTransferElement.h:
  • svg/SVGFEComponentTransferElement.idl:
  • svg/SVGFECompositeElement.cpp:
  • svg/SVGFECompositeElement.h:
  • svg/SVGFECompositeElement.idl:
  • svg/SVGFEConvolveMatrixElement.cpp:
  • svg/SVGFEConvolveMatrixElement.h:
  • svg/SVGFEConvolveMatrixElement.idl:
  • svg/SVGFEDiffuseLightingElement.cpp:
  • svg/SVGFEDiffuseLightingElement.h:
  • svg/SVGFEDiffuseLightingElement.idl:
  • svg/SVGFEDisplacementMapElement.cpp:
  • svg/SVGFEDisplacementMapElement.h:
  • svg/SVGFEDisplacementMapElement.idl:
  • svg/SVGFEDistantLightElement.cpp:
  • svg/SVGFEDistantLightElement.h:
  • svg/SVGFEDistantLightElement.idl:
  • svg/SVGFEDropShadowElement.cpp:
  • svg/SVGFEDropShadowElement.h:
  • svg/SVGFEDropShadowElement.idl:
  • svg/SVGFEFloodElement.cpp:
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEFloodElement.idl:
  • svg/SVGFEFuncAElement.cpp:
  • svg/SVGFEFuncAElement.h:
  • svg/SVGFEFuncAElement.idl:
  • svg/SVGFEFuncBElement.cpp:
  • svg/SVGFEFuncBElement.h:
  • svg/SVGFEFuncBElement.idl:
  • svg/SVGFEFuncGElement.cpp:
  • svg/SVGFEFuncGElement.h:
  • svg/SVGFEFuncGElement.idl:
  • svg/SVGFEFuncRElement.cpp:
  • svg/SVGFEFuncRElement.h:
  • svg/SVGFEFuncRElement.idl:
  • svg/SVGFEGaussianBlurElement.cpp:
  • svg/SVGFEGaussianBlurElement.h:
  • svg/SVGFEGaussianBlurElement.idl:
  • svg/SVGFEImageElement.cpp:
  • svg/SVGFEImageElement.h:
  • svg/SVGFEImageElement.idl:
  • svg/SVGFELightElement.cpp:
  • svg/SVGFELightElement.h:
  • svg/SVGFEMergeElement.cpp:
  • svg/SVGFEMergeElement.h:
  • svg/SVGFEMergeElement.idl:
  • svg/SVGFEMergeNodeElement.cpp:
  • svg/SVGFEMergeNodeElement.h:
  • svg/SVGFEMergeNodeElement.idl:
  • svg/SVGFEMorphologyElement.cpp:
  • svg/SVGFEMorphologyElement.h:
  • svg/SVGFEMorphologyElement.idl:
  • svg/SVGFEOffsetElement.cpp:
  • svg/SVGFEOffsetElement.h:
  • svg/SVGFEOffsetElement.idl:
  • svg/SVGFEPointLightElement.cpp:
  • svg/SVGFEPointLightElement.h:
  • svg/SVGFEPointLightElement.idl:
  • svg/SVGFESpecularLightingElement.cpp:
  • svg/SVGFESpecularLightingElement.h:
  • svg/SVGFESpecularLightingElement.idl:
  • svg/SVGFESpotLightElement.cpp:
  • svg/SVGFESpotLightElement.h:
  • svg/SVGFESpotLightElement.idl:
  • svg/SVGFETileElement.cpp:
  • svg/SVGFETileElement.h:
  • svg/SVGFETileElement.idl:
  • svg/SVGFETurbulenceElement.cpp:
  • svg/SVGFETurbulenceElement.h:
  • svg/SVGFETurbulenceElement.idl:
  • svg/SVGFilterElement.cpp:
  • svg/SVGFilterElement.h:
  • svg/SVGFilterElement.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.cpp:
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/SVGFilterPrimitiveStandardAttributes.idl:
  • svg/SVGFitToViewBox.cpp:
  • svg/SVGFitToViewBox.h:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGFontElement.idl:
  • svg/SVGFontFaceElement.idl:
  • svg/SVGFontFaceFormatElement.idl:
  • svg/SVGFontFaceNameElement.cpp:
  • svg/SVGFontFaceNameElement.idl:
  • svg/SVGFontFaceSrcElement.idl:
  • svg/SVGFontFaceUriElement.idl:
  • svg/SVGForeignObjectElement.cpp:
  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGGElement.cpp:
  • svg/SVGGElement.h:
  • svg/SVGGElement.idl:
  • svg/SVGGlyphElement.idl:
  • svg/SVGGlyphRefElement.cpp:
  • svg/SVGGlyphRefElement.h:
  • svg/SVGGlyphRefElement.idl:
  • svg/SVGGradientElement.cpp:
  • svg/SVGGradientElement.h:
  • svg/SVGGradientElement.idl:
  • svg/SVGGraphicsElement.cpp:
  • svg/SVGGraphicsElement.h:
  • svg/SVGGraphicsElement.idl:
  • svg/SVGHKernElement.idl:
  • svg/SVGImageElement.cpp:
  • svg/SVGImageElement.h:
  • svg/SVGImageElement.idl:
  • svg/SVGImageLoader.cpp:
  • svg/SVGImageLoader.h:
  • svg/SVGLangSpace.cpp:
  • svg/SVGLangSpace.h:
  • svg/SVGLength.cpp:
  • svg/SVGLength.h:
  • svg/SVGLength.idl:
  • svg/SVGLengthContext.cpp:
  • svg/SVGLengthContext.h:
  • svg/SVGLengthList.cpp:
  • svg/SVGLengthList.h:
  • svg/SVGLengthList.idl:
  • svg/SVGLineElement.cpp:
  • svg/SVGLineElement.h:
  • svg/SVGLineElement.idl:
  • svg/SVGLinearGradientElement.cpp:
  • svg/SVGLinearGradientElement.h:
  • svg/SVGLinearGradientElement.idl:
  • svg/SVGLocatable.cpp:
  • svg/SVGLocatable.h:
  • svg/SVGMPathElement.cpp:
  • svg/SVGMPathElement.h:
  • svg/SVGMPathElement.idl:
  • svg/SVGMarkerElement.cpp:
  • svg/SVGMarkerElement.h:
  • svg/SVGMarkerElement.idl:
  • svg/SVGMaskElement.cpp:
  • svg/SVGMaskElement.h:
  • svg/SVGMaskElement.idl:
  • svg/SVGMatrix.h:
  • svg/SVGMatrix.idl:
  • svg/SVGMetadataElement.cpp:
  • svg/SVGMetadataElement.h:
  • svg/SVGMetadataElement.idl:
  • svg/SVGMissingGlyphElement.idl:
  • svg/SVGNumber.idl:
  • svg/SVGNumberList.cpp:
  • svg/SVGNumberList.h:
  • svg/SVGNumberList.idl:
  • svg/SVGPaint.cpp:
  • svg/SVGPaint.h:
  • svg/SVGPaint.idl:
  • svg/SVGParserUtilities.cpp:
  • svg/SVGParserUtilities.h:
  • svg/SVGParsingError.h:
  • svg/SVGPathBlender.cpp:
  • svg/SVGPathBlender.h:
  • svg/SVGPathBuilder.cpp:
  • svg/SVGPathBuilder.h:
  • svg/SVGPathByteStream.h:
  • svg/SVGPathByteStreamBuilder.cpp:
  • svg/SVGPathByteStreamBuilder.h:
  • svg/SVGPathByteStreamSource.cpp:
  • svg/SVGPathByteStreamSource.h:
  • svg/SVGPathConsumer.h:
  • svg/SVGPathElement.cpp:
  • svg/SVGPathElement.h:
  • svg/SVGPathElement.idl:
  • svg/SVGPathParser.cpp:
  • svg/SVGPathParser.h:
  • svg/SVGPathSeg.h:
  • svg/SVGPathSeg.idl:
  • svg/SVGPathSegArc.h:
  • svg/SVGPathSegArcAbs.h:
  • svg/SVGPathSegArcAbs.idl:
  • svg/SVGPathSegArcRel.h:
  • svg/SVGPathSegArcRel.idl:
  • svg/SVGPathSegClosePath.h:
  • svg/SVGPathSegClosePath.idl:
  • svg/SVGPathSegCurvetoCubic.h:
  • svg/SVGPathSegCurvetoCubicAbs.h:
  • svg/SVGPathSegCurvetoCubicAbs.idl:
  • svg/SVGPathSegCurvetoCubicRel.h:
  • svg/SVGPathSegCurvetoCubicRel.idl:
  • svg/SVGPathSegCurvetoCubicSmooth.h:
  • svg/SVGPathSegCurvetoCubicSmoothAbs.h:
  • svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
  • svg/SVGPathSegCurvetoCubicSmoothRel.h:
  • svg/SVGPathSegCurvetoCubicSmoothRel.idl:
  • svg/SVGPathSegCurvetoQuadratic.h:
  • svg/SVGPathSegCurvetoQuadraticAbs.h:
  • svg/SVGPathSegCurvetoQuadraticAbs.idl:
  • svg/SVGPathSegCurvetoQuadraticRel.h:
  • svg/SVGPathSegCurvetoQuadraticRel.idl:
  • svg/SVGPathSegCurvetoQuadraticSmoothAbs.h:
  • svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
  • svg/SVGPathSegCurvetoQuadraticSmoothRel.h:
  • svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
  • svg/SVGPathSegLinetoAbs.h:
  • svg/SVGPathSegLinetoAbs.idl:
  • svg/SVGPathSegLinetoHorizontal.h:
  • svg/SVGPathSegLinetoHorizontalAbs.h:
  • svg/SVGPathSegLinetoHorizontalAbs.idl:
  • svg/SVGPathSegLinetoHorizontalRel.h:
  • svg/SVGPathSegLinetoHorizontalRel.idl:
  • svg/SVGPathSegLinetoRel.h:
  • svg/SVGPathSegLinetoRel.idl:
  • svg/SVGPathSegLinetoVertical.h:
  • svg/SVGPathSegLinetoVerticalAbs.h:
  • svg/SVGPathSegLinetoVerticalAbs.idl:
  • svg/SVGPathSegLinetoVerticalRel.h:
  • svg/SVGPathSegLinetoVerticalRel.idl:
  • svg/SVGPathSegList.cpp:
  • svg/SVGPathSegList.h:
  • svg/SVGPathSegList.idl:
  • svg/SVGPathSegListBuilder.cpp:
  • svg/SVGPathSegListBuilder.h:
  • svg/SVGPathSegListSource.cpp:
  • svg/SVGPathSegListSource.h:
  • svg/SVGPathSegMovetoAbs.h:
  • svg/SVGPathSegMovetoAbs.idl:
  • svg/SVGPathSegMovetoRel.h:
  • svg/SVGPathSegMovetoRel.idl:
  • svg/SVGPathSegWithContext.h:
  • svg/SVGPathSource.h:
  • svg/SVGPathStringBuilder.cpp:
  • svg/SVGPathStringBuilder.h:
  • svg/SVGPathStringSource.cpp:
  • svg/SVGPathStringSource.h:
  • svg/SVGPathTraversalStateBuilder.cpp:
  • svg/SVGPathTraversalStateBuilder.h:
  • svg/SVGPathUtilities.cpp:
  • svg/SVGPathUtilities.h:
  • svg/SVGPatternElement.cpp:
  • svg/SVGPatternElement.h:
  • svg/SVGPatternElement.idl:
  • svg/SVGPoint.h:
  • svg/SVGPoint.idl:
  • svg/SVGPointList.cpp:
  • svg/SVGPointList.h:
  • svg/SVGPointList.idl:
  • svg/SVGPolyElement.cpp:
  • svg/SVGPolyElement.h:
  • svg/SVGPolygonElement.cpp:
  • svg/SVGPolygonElement.h:
  • svg/SVGPolygonElement.idl:
  • svg/SVGPolylineElement.cpp:
  • svg/SVGPolylineElement.h:
  • svg/SVGPolylineElement.idl:
  • svg/SVGPreserveAspectRatio.cpp:
  • svg/SVGPreserveAspectRatio.h:
  • svg/SVGPreserveAspectRatio.idl:
  • svg/SVGRadialGradientElement.cpp:
  • svg/SVGRadialGradientElement.h:
  • svg/SVGRadialGradientElement.idl:
  • svg/SVGRect.h:
  • svg/SVGRect.idl:
  • svg/SVGRectElement.cpp:
  • svg/SVGRectElement.h:
  • svg/SVGRectElement.idl:
  • svg/SVGRenderingIntent.h:
  • svg/SVGRenderingIntent.idl:
  • svg/SVGSVGElement.cpp:
  • svg/SVGSVGElement.h:
  • svg/SVGSVGElement.idl:
  • svg/SVGScriptElement.cpp:
  • svg/SVGScriptElement.h:
  • svg/SVGScriptElement.idl:
  • svg/SVGSetElement.cpp:
  • svg/SVGSetElement.h:
  • svg/SVGSetElement.idl:
  • svg/SVGStopElement.cpp:
  • svg/SVGStopElement.h:
  • svg/SVGStopElement.idl:
  • svg/SVGStringList.cpp:
  • svg/SVGStringList.h:
  • svg/SVGStringList.idl:
  • svg/SVGStyleElement.cpp:
  • svg/SVGStyleElement.h:
  • svg/SVGStyleElement.idl:
  • svg/SVGSwitchElement.cpp:
  • svg/SVGSwitchElement.h:
  • svg/SVGSwitchElement.idl:
  • svg/SVGSymbolElement.cpp:
  • svg/SVGSymbolElement.h:
  • svg/SVGSymbolElement.idl:
  • svg/SVGTRefElement.cpp:
  • svg/SVGTRefElement.h:
  • svg/SVGTRefElement.idl:
  • svg/SVGTSpanElement.cpp:
  • svg/SVGTSpanElement.h:
  • svg/SVGTSpanElement.idl:
  • svg/SVGTests.cpp:
  • svg/SVGTests.h:
  • svg/SVGTests.idl:
  • svg/SVGTextContentElement.cpp:
  • svg/SVGTextContentElement.h:
  • svg/SVGTextContentElement.idl:
  • svg/SVGTextElement.cpp:
  • svg/SVGTextElement.h:
  • svg/SVGTextElement.idl:
  • svg/SVGTextPathElement.cpp:
  • svg/SVGTextPathElement.h:
  • svg/SVGTextPathElement.idl:
  • svg/SVGTextPositioningElement.cpp:
  • svg/SVGTextPositioningElement.h:
  • svg/SVGTextPositioningElement.idl:
  • svg/SVGTitleElement.cpp:
  • svg/SVGTitleElement.h:
  • svg/SVGTitleElement.idl:
  • svg/SVGTransform.cpp:
  • svg/SVGTransform.h:
  • svg/SVGTransform.idl:
  • svg/SVGTransformDistance.cpp:
  • svg/SVGTransformDistance.h:
  • svg/SVGTransformList.cpp:
  • svg/SVGTransformList.h:
  • svg/SVGTransformList.idl:
  • svg/SVGTransformable.cpp:
  • svg/SVGTransformable.h:
  • svg/SVGURIReference.cpp:
  • svg/SVGURIReference.h:
  • svg/SVGURIReference.idl:
  • svg/SVGUnitTypes.h:
  • svg/SVGUnitTypes.idl:
  • svg/SVGUnknownElement.h:
  • svg/SVGUseElement.cpp:
  • svg/SVGUseElement.h:
  • svg/SVGUseElement.idl:
  • svg/SVGVKernElement.idl:
  • svg/SVGViewElement.cpp:
  • svg/SVGViewElement.h:
  • svg/SVGViewElement.idl:
  • svg/SVGViewSpec.cpp:
  • svg/SVGViewSpec.h:
  • svg/SVGViewSpec.idl:
  • svg/SVGZoomAndPan.cpp:
  • svg/SVGZoomAndPan.h:
  • svg/SVGZoomAndPan.idl:
  • svg/SVGZoomEvent.cpp:
  • svg/SVGZoomEvent.h:
  • svg/SVGZoomEvent.idl:
  • svg/animation/SMILTime.cpp:

(WebCore::operator*):

  • svg/animation/SMILTime.h:
  • svg/animation/SMILTimeContainer.cpp:
  • svg/animation/SMILTimeContainer.h:
  • svg/animation/SVGSMILElement.cpp:
  • svg/animation/SVGSMILElement.h:
  • svg/graphics/SVGImage.cpp:
  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:
  • svg/graphics/SVGImageCache.h:
  • svg/graphics/SVGImageChromeClient.h:
  • svg/graphics/SVGImageForContainer.cpp:
  • svg/graphics/SVGImageForContainer.h:
  • svg/graphics/filters/SVGFEImage.cpp:
  • svg/graphics/filters/SVGFEImage.h:
  • svg/graphics/filters/SVGFilter.cpp:
  • svg/graphics/filters/SVGFilter.h:
  • svg/graphics/filters/SVGFilterBuilder.cpp:
  • svg/graphics/filters/SVGFilterBuilder.h:
  • svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
  • svg/properties/SVGAnimatedListPropertyTearOff.h:
  • svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:
  • svg/properties/SVGAnimatedProperty.cpp:
  • svg/properties/SVGAnimatedProperty.h:
  • svg/properties/SVGAnimatedPropertyDescription.h:
  • svg/properties/SVGAnimatedPropertyMacros.h:
  • svg/properties/SVGAnimatedPropertyTearOff.h:
  • svg/properties/SVGAnimatedStaticPropertyTearOff.h:
  • svg/properties/SVGAnimatedTransformListPropertyTearOff.h:
  • svg/properties/SVGAttributeToPropertyMap.cpp:
  • svg/properties/SVGAttributeToPropertyMap.h:
  • svg/properties/SVGListProperty.h:
  • svg/properties/SVGListPropertyTearOff.h:
  • svg/properties/SVGPathSegListPropertyTearOff.cpp:
  • svg/properties/SVGPathSegListPropertyTearOff.h:
  • svg/properties/SVGProperty.h:
  • svg/properties/SVGPropertyInfo.cpp:
  • svg/properties/SVGPropertyInfo.h:
  • svg/properties/SVGPropertyTearOff.h:
  • svg/properties/SVGPropertyTraits.h:
  • svg/properties/SVGStaticListPropertyTearOff.h:
  • svg/properties/SVGStaticPropertyTearOff.h:
  • svg/properties/SVGStaticPropertyWithParentTearOff.h:
  • svg/properties/SVGTransformListPropertyTearOff.h:
  • svg/svgattrs.in:
  • svg/svgtags.in:
  • xml/XMLErrors.cpp:

(WebCore::XMLErrors::insertErrorMessageBlock):

  • xml/parser/XMLDocumentParser.cpp:

Source/WebKit:

  • PlatformEfl.cmake:

Source/WebKit/gtk:

  • GNUmakefile.am:
  • webkit/webkitwebframe.cpp:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • TestWebKitAPI/GNUmakefile.am:
3:19 AM Changeset in webkit [163439] by zandobersek@gmail.com
  • 7 edits in trunk/Source/WebCore

Manage CalcExpressionNode and derived classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128118

Reviewed by Darin Adler.

Replace uses of OwnPtr for CalcExpressionNode and derived classes with std::unique_ptr.

  • css/CSSCalculationValue.cpp:

(WebCore::CSSCalcPrimitiveValue::toCalcValue):
(WebCore::CSSCalcBinaryOperation::toCalcValue):

  • css/CSSCalculationValue.h:
  • platform/CalculationValue.cpp:

(WebCore::CalculationValue::create):

  • platform/CalculationValue.h:

(WebCore::CalculationValue::CalculationValue):
(WebCore::CalcExpressionBinaryOperation::CalcExpressionBinaryOperation):

  • platform/Length.cpp:

(WebCore::Length::blendMixedTypes):

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShapeCenterCoordinate::updateComputedLength):

3:11 AM Changeset in webkit [163438] by Carlos Garcia Campos
  • 12 edits
    2 adds in releases/WebKitGTK/webkit-2.4

Merge r163329 - REGRESSION (r163018): Can’t scroll in <select> lists
https://bugs.webkit.org/show_bug.cgi?id=128090

Source/WebCore:

The regression was caused by the fact that a new method scrollWithWheelEventLocation() was added
to RenderBox to replace the generic scroll() method for the particular case of scrolling using
the mouse wheel. This turned out to be a mistake because in the case of some elements, like select lists,
the scroll method was overriden and now the incorrect method was being called.
The solution was to remove the new method and just add two default parameters to the generic
scroll method.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

Test: fast/scrolling/scroll-select-list.html

  • page/EventHandler.cpp:

(WebCore::scrollNode):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::scroll):

  • rendering/RenderBox.h:
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::scroll):

  • rendering/RenderEmbeddedObject.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scroll):

  • rendering/RenderListBox.h:
  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::scroll):

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

New test validates scrolling using the mouse wheel inside a select list.
This test is for the moment added as a ImageOnlyFailure expectation
because the current implementation of eventSender cannot simulate mouse wheel events.

Patch by Radu Stavila <stavila@adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

  • TestExpectations:
  • fast/scrolling/scroll-select-list-expected.html: Added.
  • fast/scrolling/scroll-select-list.html: Added.
3:01 AM Changeset in webkit [163437] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebInspectorUI

[GTK] Avoid no-op regenerations of GResourceBundle.xml, GResourceBundle.c
https://bugs.webkit.org/show_bug.cgi?id=128192

Reviewed by Carlos Garcia Campos.

When doing incremental builds, GResourceBundle.xml and GResourceBundle.c can be
generated when the dependencies are newer than the products, but the generation
doesn't necessarily produce a new or different product. This results in constant
regenerations for these two build targets. Touch the products at the end of
generation to avoid this looping.

  • GNUmakefile.am:
2:33 AM Changeset in webkit [163436] by zandobersek@gmail.com
  • 5 edits in trunk/Source

Remove CLASS_IF_GCC workarounds
https://bugs.webkit.org/show_bug.cgi?id=128207

Reviewed by Anders Carlsson.

Remove the CLASS_IF_GCC macro that was defined to 'class' when using the GCC compiler.
The macro was then used in class friendship declarations for templated classes to avoid
corner-case compiler failures on both GCC pre-4.7 and MSVC pre-2013. The problematic
versions of both compilers are no longer supported, so this macro is good to go.

Source/JavaScriptCore:

  • heap/HeapBlock.h:
  • heap/Region.h:

Source/WebCore:

  • bindings/generic/RuntimeEnabledFeatures.h:
2:25 AM Changeset in webkit [163435] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

MediaPlayerPrivateGStreamerBase should have virtual destructor
https://bugs.webkit.org/show_bug.cgi?id=128238

Reviewed by Carlos Garcia Campos.

MediaPlayerPrivateGStreamer inherit MediaPlayerPrivateGStreamerBase.
So MediaPlayerPrivateGStreamerBase should have virtual destructor.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Made destructor as virtual.
2:19 AM Changeset in webkit [163434] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.4/Source

Unreviewed. Fix make distcheck.

Source/WebCore:

  • GNUmakefile.list.am:

Source/WebKit2:

  • GNUmakefile.list.am:
  • Shared/InteractionInformationAtPosition.h:
1:50 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:49 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:46 AM Changeset in webkit [163433] by zandobersek@gmail.com
  • 10 edits in trunk/Source

[GTK] Replace DEFINE_STATIC_LOCAL with NeverDestroyed<T> in GTK WK1 and WK2 code
https://bugs.webkit.org/show_bug.cgi?id=128195

Reviewed by Martin Robinson.

Use static NeverDestroyed<T> variables instead of the DEFINE_STATIC_LOCAL macro.

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::initialize):

  • WebCoreSupport/PlatformStrategiesGtk.h:
  • webkit/webkitwebsettings.cpp:

(isGoogleDomain):

Source/WebKit2:

  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp:

(historyItemsMap):

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(downloadsMap):

  • UIProcess/gtk/WebPageProxyGtk.cpp:

(WebKit::pluginWindowMap):

  • WebProcess/gtk/WebGtkExtensionManager.cpp:

(WebKit::WebGtkExtensionManager::shared):

  • WebProcess/gtk/WebGtkExtensionManager.h:
1:34 AM WebKitGtkLayoutTests edited by Diego Pino Garcia
(diff)
1:02 AM Changeset in webkit [163432] by g.czajkowski@samsung.com
  • 7 edits in trunk/LayoutTests

Verify spellcheck attribute asynchronously
https://bugs.webkit.org/show_bug.cgi?id=128174

Reviewed by Sam Weinig.

Refactoring spelling tests that verify spellcheck attribute to use
asynchronous text checking.

  • editing/spelling/spelling-attribute-at-child-expected.txt:
  • editing/spelling/script-tests/spelling-attribute-at-child.js:

Do not use getElementById if more than one element has the same
id ('child'). Although we defined a bunch of elements with id
'child', however only first one was retrieved and tested.
Additionally, dump current markup so that user is able to see
which element is being tested.

  • editing/spelling/spelling-attribute-change-expected.txt:
  • editing/spelling/script-tests/spelling-attribute-change.js:
  • editing/spelling/spellcheck-attribute-expected.txt:
  • editing/spelling/spellcheck-attribute.html:

Dump markup to increase readability of test expectation.

Feb 4, 2014:

11:11 PM Changeset in webkit [163431] by rniwa@webkit.org
  • 2 edits
    4 copies in trunk

PerformanceTests: Undelete the "build" directory erroneously removed in r163427.

  • DoYouEvenBench/resources/todomvc/labs/architecture-examples/react/bower_components/director/build:

LayoutTests: Undelete the "build" directories erroneously removed in r163427.

  • webgl/1.0.2/conformance/ogles/GL/build:
  • webgl/1.0.2/resources/webgl_test_files/conformance/ogles/GL/build:
  • webgl/resources/webgl_test_files/conformance/ogles/GL/build:
11:00 PM Changeset in webkit [163430] by rniwa@webkit.org
  • 2 edits in trunk/PerformanceTests

Revert the change made in r162216 as it broke the benchmark on shipping Safari.

  • DoYouEvenBench/resources/benchmark-runner.js:
9:36 PM Changeset in webkit [163429] by rniwa@webkit.org
  • 18 edits
    5 adds
    2 deletes in trunk/PerformanceTests

DoYouEvenBench: Update Ember.js test case
https://bugs.webkit.org/show_bug.cgi?id=128227

Reviewed by Benjamin Poulain.

Updated the Ember.js TodoMVC implementation.

  • DoYouEvenBench/resources/tests.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower.json:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember-data/ember-data.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember-localstorage-adapter/localstorage_adapter.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/ember/ember.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/handlebars/handlebars.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/jquery/jquery.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.css:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/bower_components/todomvc-common/base.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/index.html:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/app.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/controllers/todo_controller.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/controllers/todos_controller.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/helpers/pluralize.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/libs/ember-data.js: Removed.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/models/store.js: Removed.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/models/todo.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/router.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/views/edit_todo_view.js:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/js/views/todos_view.js: Added.
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/readme.md:
  • DoYouEvenBench/resources/todomvc/architecture-examples/emberjs/test.html:
9:32 PM Changeset in webkit [163428] by mark.lam@apple.com
  • 5 edits in trunk/Source

The stack limit computation does not work for Windows.
<https://webkit.org/b/128226>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • llint/LowLevelInterpreter.cpp:

(JSC::CLoopRegister::CLoopRegister):
(JSC::CLoop::execute):

  • Suppressed some compiler warnings for the C loop build.
  • runtime/VM.cpp:

(JSC::VM::updateStackLimitWithReservedZoneSize):

  • Use the new StackBounds::recursionLimit() to compute the stack limit the right way.

Source/WTF:

The current stack limit computation assumes that the stack is allocated
in high memory. On Windows, the stack seems to be allocated very near
address 0, and is smaller in size than our Options::maxPerThreadStackUsage().
This combination triggers a bug where StackBounds::recursionLimit()
underflows and computes a limit address that is ridiculously high in memory.
The net effect is that the Windows port thinks its out of stack space all
the time.

We now check for potential underflows in StackBounds and return an
appropriate limit address.

  • wtf/StackBounds.h:

(WTF::StackBounds::recursionLimit):

8:59 PM Changeset in webkit [163427] by akling@apple.com
  • 79 edits
    14 deletes in trunk

Remove <iframe seamless> support.
<https://webkit.org/b/128213>

.:

Rubber-stamped by Antti Koivisto.

  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Seamless iframes were behind a runtime flag that we never enabled,
and the only other engine that implemented them (Blink) recently
removed them. Since the feature is very invasive, let's take it
out for now.

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(createAccessibilityRoleMap):

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):

  • bindings/generic/RuntimeEnabledFeatures.h:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):
(WebCore::populatePseudoTypeByNameMap):
(WebCore::CSSSelector::extractPseudoType):

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

(WebCore::SelectorChecker::checkOne):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):

  • css/html.css:

(iframe):

  • dom/Document.cpp:

(WebCore::Document::scheduleStyleRecalc):
(WebCore::Document::implicitOpen):
(WebCore::Document::initSecurityContext):

  • dom/Document.h:
  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

  • dom/SecurityContext.cpp:

(WebCore::SecurityContext::SecurityContext):

  • dom/SecurityContext.h:
  • html/HTMLAttributeNames.in:
  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::HTMLIFrameElement):
(WebCore::HTMLIFrameElement::isPresentationAttribute):
(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLIFrameElement.h:
  • html/HTMLIFrameElement.idl:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::findFrameForNavigation):

  • page/FrameView.cpp:

(WebCore::FrameView::calculateScrollbarModesForLayout):
(WebCore::FrameView::isInChildFrameWithFrameFlattening):

  • page/Location.cpp:

(WebCore::Location::setLocation):

  • rendering/RenderBox.h:

(WebCore::RenderBox::stretchesToViewport):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::shouldComputeSizeAsReplaced):
(WebCore::RenderIFrame::isInlineBlockOrInlineTable):
(WebCore::RenderIFrame::flattenFrame):
(WebCore::RenderIFrame::layout):

  • rendering/RenderIFrame.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::initializeLayoutState):
(WebCore::RenderView::layout):

  • rendering/RenderView.h:
  • style/StyleResolveForDocument.cpp:

(WebCore::Style::resolveForDocument):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

Source/WebKit/efl:

Rubber-stamped by Antti Koivisto.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:
  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

Source/WebKit/gtk:

Rubber-stamped by Antti Koivisto.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

Source/WebKit/mac:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit/win:

Rubber-stamped by Antti Koivisto.

  • WebPreferences.h:
  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WebKit2:

Rubber-stamped by Antti Koivisto.

  • Configurations/FeatureDefines.xcconfig:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.h:

Source/WTF:

Rubber-stamped by Antti Koivisto.

  • wtf/FeatureDefines.h:

Tools:

Rubber-stamped by Antti Koivisto.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebPreferencesToConsistentValues):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues):

  • Scripts/webkitperl/FeatureList.pm:
  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

WebKitLibraries:

Rubber-stamped by Antti Koivisto.

  • win/tools/vsprops/FeatureDefines.props:

LayoutTests:

Rubber-stamped by Antti Koivisto.

  • fast/frames/seamless/resources/css-cascade-child.html: Removed.
  • fast/frames/seamless/resources/done.html: Removed.
  • fast/frames/seamless/resources/nested-seamless.html: Removed.
  • fast/frames/seamless/resources/percent-square.html: Removed.
  • fast/frames/seamless/resources/quirks-square.html: Removed.
  • fast/frames/seamless/resources/span.html: Removed.
  • fast/frames/seamless/resources/square.html: Removed.
  • fast/frames/seamless/resources/two-inline-blocks.html: Removed.
  • fast/frames/seamless/seamless-basic-expected.txt: Removed.
  • fast/frames/seamless/seamless-basic.html: Removed.
  • fast/frames/seamless/seamless-body-margin-expected.txt: Removed.
  • fast/frames/seamless/seamless-body-margin.html: Removed.
  • fast/frames/seamless/seamless-border-padding-expected.txt: Removed.
  • fast/frames/seamless/seamless-border-padding.html: Removed.
  • fast/frames/seamless/seamless-contenteditable-not-inherited-expected.txt: Removed.
  • fast/frames/seamless/seamless-contenteditable-not-inherited.html: Removed.
  • fast/frames/seamless/seamless-css-cascade-expected.txt: Removed.
  • fast/frames/seamless/seamless-css-cascade.html: Removed.
  • fast/frames/seamless/seamless-custom-font-pruning-crash-expected.txt: Removed.
  • fast/frames/seamless/seamless-custom-font-pruning-crash.html: Removed.
  • fast/frames/seamless/seamless-designMode-expected.txt: Removed.
  • fast/frames/seamless/seamless-designMode.html: Removed.
  • fast/frames/seamless/seamless-document-write-expected.txt: Removed.
  • fast/frames/seamless/seamless-document-write.html: Removed.
  • fast/frames/seamless/seamless-float-expected.txt: Removed.
  • fast/frames/seamless/seamless-float.html: Removed.
  • fast/frames/seamless/seamless-form-get-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-named.html: Removed.
  • fast/frames/seamless/seamless-form-get-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-get-override.html: Removed.
  • fast/frames/seamless/seamless-form-get.html: Removed.
  • fast/frames/seamless/seamless-form-post-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-named.html: Removed.
  • fast/frames/seamless/seamless-form-post-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-form-post-override.html: Removed.
  • fast/frames/seamless/seamless-form-post.html: Removed.
  • fast/frames/seamless/seamless-hyperlink-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-named-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-named.html: Removed.
  • fast/frames/seamless/seamless-hyperlink-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-hyperlink-override.html: Removed.
  • fast/frames/seamless/seamless-hyperlink.html: Removed.
  • fast/frames/seamless/seamless-inherited-document-style-expected.txt: Removed.
  • fast/frames/seamless/seamless-inherited-document-style.html: Removed.
  • fast/frames/seamless/seamless-inherited-origin-expected.txt: Removed.
  • fast/frames/seamless/seamless-inherited-origin.html: Removed.
  • fast/frames/seamless/seamless-inline-expected.txt: Removed.
  • fast/frames/seamless/seamless-inline.html: Removed.
  • fast/frames/seamless/seamless-min-max-expected.txt: Removed.
  • fast/frames/seamless/seamless-min-max.html: Removed.
  • fast/frames/seamless/seamless-nested-crash-expected.txt: Removed.
  • fast/frames/seamless/seamless-nested-crash.html: Removed.
  • fast/frames/seamless/seamless-nested-expected.txt: Removed.
  • fast/frames/seamless/seamless-nested.html: Removed.
  • fast/frames/seamless/seamless-percent-height-expected.txt: Removed.
  • fast/frames/seamless/seamless-percent-height.html: Removed.
  • fast/frames/seamless/seamless-quirks-expected.txt: Removed.
  • fast/frames/seamless/seamless-quirks.html: Removed.
  • fast/frames/seamless/seamless-sandbox-flag-expected.txt: Removed.
  • fast/frames/seamless/seamless-sandbox-flag.html: Removed.
  • fast/frames/seamless/seamless-sandbox-srcdoc-expected.txt: Removed.
  • fast/frames/seamless/seamless-sandbox-srcdoc.html: Removed.
  • fast/frames/seamless/seamless-srcdoc-expected.txt: Removed.
  • fast/frames/seamless/seamless-srcdoc.html: Removed.
  • fast/frames/seamless/seamless-window-location-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-href-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-href.html: Removed.
  • fast/frames/seamless/seamless-window-location-replace-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-replace.html: Removed.
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-location-sandbox.html: Removed.
  • fast/frames/seamless/seamless-window-location.html: Removed.
  • fast/frames/seamless/seamless-window-open-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-open-override-expected.txt: Removed.
  • fast/frames/seamless/seamless-window-open-override.html: Removed.
  • fast/frames/seamless/seamless-window-open.html: Removed.
  • fast/multicol/resources/seamless.html: Removed.
  • fast/multicol/seamless-flowed-through-columns-expected.html: Removed.
  • fast/multicol/seamless-flowed-through-columns.html: Removed.
  • fast/regions/resources/seamless.html: Removed.
  • fast/regions/seamless-iframe-flowed-into-regions-expected.html: Removed.
  • fast/regions/seamless-iframe-flowed-into-regions.html: Removed.
  • http/tests/security/seamless/resources/square.html: Removed.
  • http/tests/security/seamless/seamless-cross-origin-expected.txt: Removed.
  • http/tests/security/seamless/seamless-cross-origin.html: Removed.
  • http/tests/security/seamless/seamless-sandbox-srcdoc-expected.txt: Removed.
  • http/tests/security/seamless/seamless-sandbox-srcdoc.html: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
8:22 PM Changeset in webkit [163426] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG::operationTypeOf() needs to set the VM::topCallFrame.
<https://webkit.org/b/128228>

Reviewed by Mark Hahnenberg.

  • dfg/DFGOperations.cpp:
  • operationTypeOf() can end up calling into WebCore which may in turn call back to JSC, and need a valid VM::topCallFrame. So, we need to set the value of VM::topCallFrame at the top of operationTypeOf().
8:22 PM Changeset in webkit [163425] by timothy_horton@apple.com
  • 6 edits
    4 adds
    2 deletes in trunk/Source

[iOS][wk2] Make development builds of WebKit work on device
https://bugs.webkit.org/show_bug.cgi?id=128230

Reviewed by Anders Carlsson.

  • Configurations/NetworkService.Development.xcconfig:
  • Configurations/WebContentService.Development.xcconfig:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: Renamed from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist.
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Renamed from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist.

The Development services should match the non-Development version's behavior
of having separate plists for OS X and iOS.

  • platform/RuntimeApplicationChecksIOS.mm:

(WebCore::applicationIsWebProcess):
Add WebContent.Development as an additional name for the WebContent process.

8:10 PM Changeset in webkit [163424] by zoltan@webkit.org
  • 2 edits
    4 adds in trunk/PerformanceTests

[CSS Shapes] Add initial performance test for shape-outside: content-box
https://bugs.webkit.org/show_bug.cgi?id=128190

Reviewed by Ryosuke Niwa.

I've introduced Shapes subdirectory in Layout, every CSS Shapes related performance tests should
go there in the future. The initial performance tests uses 'shape-outside: content-box' in order
to tests the code paths of the Shapes implementation. I also introduced shapes.js, which allows us
to easily add new, simple performance tests for shape-outside.

The entire progress is tracked under #128188 meta bug.

  • Layout/Shapes/ShapeOutsideContentBox.html: Added.
  • Layout/Shapes/resources/shapes.css: Added.
  • Layout/Shapes/resources/shapes.js: Added.
  • Skipped: We skip running the tests by default for now.
7:20 PM Changeset in webkit [163423] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Fix build when the script is called from Xcode.

  • Scripts/copy-webkitlibraries-to-product-directory:
6:56 PM Changeset in webkit [163422] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

And one more test to tag with ImageOnlyFailure.

5:54 PM Changeset in webkit [163421] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

Some tests introduced by 163415 need ImageOnlyFailure tag.

Unreviewed gardering.

5:35 PM Changeset in webkit [163420] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix !ENABLE(JIT) builds after r163418

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::reoptimizationRetryCounter): Return 0 if there's no way for us to reoptimize.

5:28 PM Changeset in webkit [163419] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Reduce boilerplate in BlockAllocator.h
https://bugs.webkit.org/show_bug.cgi?id=128222

Reviewed by Filip Pizlo.

There are a lot of template specializations for the various types of HeapBlocks
in BlockAllocator.h. We could reduce the spew by using a macro.

  • heap/BlockAllocator.h:
5:03 PM Changeset in webkit [163418] by fpizlo@apple.com
  • 13 edits
    3 adds
    3 deletes in trunk

DFG PutByVal on typed arrays should detect OutOfBounds sooner
https://bugs.webkit.org/show_bug.cgi?id=128162

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

Just wire the m_outOfBounds flag in ArrayProfile into the OutOfBounds speculation in
DFG::ArrayMode for typed arrays.

Also make it possible to have tests for convergence.

Also turn one of the LayoutTests/js/dfg- tests into a stress test because it
was relying on a specific number of recompiles. Stress tests instead take
the approach of just running for a while. That's more robust.

  • bytecode/CodeBlock.h:
  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::fromObserved):
(JSC::DFG::ArrayMode::refine):

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::withSpeculationFromProfile):
(JSC::DFG::ArrayMode::withProfile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compilePutByVal):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitIntTypedArrayPutByVal):
(JSC::JIT::emitFloatTypedArrayPutByVal):

  • jsc.cpp:

(GlobalObject::finishCreation):
(functionReoptimizationRetryCount):

  • runtime/TestRunnerUtils.cpp:

(JSC::getExecutableForFunction):
(JSC::getSomeBaselineCodeBlockForFunction):
(JSC::numberOfDFGCompiles):
(JSC::setNeverInline):

  • runtime/TestRunnerUtils.h:
  • tests/stress/float32-repeat-out-of-bounds.js: Added.

(foo):

  • tests/stress/int8-repeat-out-of-bounds.js: Added.

(foo):

  • tests/stress/string-out-of-bounds-negative-proto-value.js: Added.

(foo):

Tools:

Reviewed by Mark Hahnenberg.

Add a defautNoEagerRun, which is intended to be used for convergence tests.

  • Scripts/run-jsc-stress-tests:

LayoutTests:

Reviewed by Mark Hahnenberg.

dfg-string-out-of-blahblah was moved to JSC/tests/stress.

dfg-convert-this-dom-window was using dfgShouldBe() incorrectly and this got revealed
by my TestRunnerUtils refactoring.

  • js/dfg-string-out-of-bounds-negative-proto-value-expected.txt: Removed.
  • js/dfg-string-out-of-bounds-negative-proto-value.html: Removed.
  • js/script-tests/dfg-convert-this-dom-window.js:
  • js/script-tests/dfg-string-out-of-bounds-negative-proto-value.js: Removed.
4:26 PM Changeset in webkit [163417] by beidson@apple.com
  • 12 edits in trunk

IDB: indexeddb/mozilla/add-twice-failure.html fails
<rdar://problem/15982569> and https://bugs.webkit.org/show_bug.cgi?id=128208

Reviewed by Tim Horton.

Source/WebCore:

Covered specifically by indexeddb/mozilla/add-twice-failure.html and a handful of others.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onError): Improve logging.

  • Modules/indexeddb/IDBTransactionBackend.cpp:

(WebCore::IDBTransactionBackend::abort): Improve logging.

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::PutOperation::perform): Don’t abort the transaction when an error occurred.

  • WebCore.exp.in:

Source/WebKit2:

Note that besides making indexeddb/mozilla/add-twice-failure.html pass this also makes some other tests
pass and also improves the failure modes of others.

A full accounting of which tests pass is coming soon.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::putRecordInBackingStore): After checking for existence of the key and before

adding the record, remove any previous record. (Defined by the spec, found exploring this test).

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore): Implement this.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord): Add a form to be used as mentioned above in

UniqueIDBDatabase::putRecordInBackingStore.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRecordFromObjectStore): CAST the key argument properly.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRangeRecordFromObjectStore): Ditto.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

LayoutTests:

  • platform/mac-wk2/TestExpectations: Reenable this test for WK2
4:23 PM Changeset in webkit [163416] by andersca@apple.com
  • 3 edits in trunk/Source/WTF

Store StringImpl substring backpointers as tail data
https://bugs.webkit.org/show_bug.cgi?id=128220

Reviewed by Geoffrey Garen.

This lets us get rid of m_substringBuffer from the union.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::~StringImpl):
(WTF::StringImpl::getData16SlowCase):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):
(WTF::StringImpl::createSubstringSharingImpl8):
(WTF::StringImpl::createSubstringSharingImpl):
(WTF::StringImpl::cost):
(WTF::StringImpl::costDuringGC):
(WTF::StringImpl::substringBuffer):

4:09 PM Changeset in webkit [163415] by commit-queue@webkit.org
  • 32 edits
    1 copy
    32 adds
    6 deletes in trunk

Use srcset's pixel density to determine intrinsic size
https://bugs.webkit.org/show_bug.cgi?id=123832

Patch by Yoav Weiss <yoav@yoav.ws> on 2014-02-04
Reviewed by Dean Jackson.

The patch is a port of a similar Blink patch: https://codereview.chromium.org/25105004
According to the spec "When an img element has a current pixel density that is not 1.0,
the element's image data must be treated as if its resolution, in device pixels per CSS pixels,
was the current pixel density."

Source/WebCore:

I've added that support using the following changes:

  • bestFitSourceForImageAttributes now returns the image candidate to HTMLImageElement.
  • HTMLImageElement passes the devicePixelRatio data to RenderImage, which stores it.
  • Bitmap images are scaled using the devicePixelRatio at RenderImageResource's intrinsicSize() and imageSize().
  • SVG images are scaled using the devicePixelRatio at RenderReplaced::computeAspectRatioInformationForRenderBox.
  • Canvas support added at CanvasRenderingContext2D::size.

Tests: fast/hidpi/image-srcset-intrinsic-size.html

fast/hidpi/image-srcset-png-canvas.html
fast/hidpi/image-srcset-png.html
fast/hidpi/image-srcset-relative-svg-canvas-2x.html
fast/hidpi/image-srcset-relative-svg.html
fast/hidpi/image-srcset-space-left-nomodifier.html
fast/hidpi/image-srcset-svg-canvas-2x.html
fast/hidpi/image-srcset-svg-canvas.html
fast/hidpi/image-srcset-svg.html
fast/hidpi/image-srcset-svg2.html

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::HTMLImageElement):
(WebCore::HTMLImageElement::parseAttribute):
(WebCore::HTMLImageElement::createRenderer):

  • html/HTMLImageElement.h:
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::size):
(WebCore::CanvasRenderingContext2D::drawImage):

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::compareByScaleFactor):
(WebCore::parseImagesWithScaleFromSrcsetAttribute):
(WebCore::bestFitSourceForImageAttributes):

  • html/parser/HTMLParserIdioms.h:

(WebCore::ImageWithScale::ImageWithScale):
(WebCore::ImageWithScale::imageURL):
(WebCore::ImageWithScale::scaleFactor):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::RenderImage):

  • rendering/RenderImage.h:

(WebCore::RenderImage::setImageDevicePixelRatio):
(WebCore::RenderImage::imageDevicePixelRatio):

  • rendering/RenderImageResource.cpp:

(WebCore::RenderImageResource::imageSize):
(WebCore::RenderImageResource::intrinsicSize):
(WebCore::RenderImageResource::getImageSize):

  • rendering/RenderImageResource.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox):

LayoutTests:

Layout test changes include modifications of existing tests to accomodate the new image dimensions, as well as new tests for this
specific functionality.

  • fast/hidpi/image-srcset-change-dynamically-from-js-2x-expected.txt:
  • fast/hidpi/image-srcset-change-dynamically-from-js-2x.html:
  • fast/hidpi/image-srcset-data-escaped-srcset-expected.txt:
  • fast/hidpi/image-srcset-data-escaped-srcset.html:
  • fast/hidpi/image-srcset-data-src.html:
  • fast/hidpi/image-srcset-data-srcset.html:
  • fast/hidpi/image-srcset-fraction.html:
  • fast/hidpi/image-srcset-intrinsic-size-expected.txt: Added.
  • fast/hidpi/image-srcset-intrinsic-size.html: Added.
  • fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.txt:
  • fast/hidpi/image-srcset-invalid-inputs-correct-src.html:
  • fast/hidpi/image-srcset-invalid-inputs.html:
  • fast/hidpi/image-srcset-invalid-inputs-expected.txt: Added.
  • fast/hidpi/image-srcset-only-src-attribute-expected.txt: Added.
  • fast/hidpi/image-srcset-only-src-attribute.html:
  • fast/hidpi/image-srcset-png-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-png-canvas.html: Added.
  • fast/hidpi/image-srcset-png-expected.html: Added.
  • fast/hidpi/image-srcset-png.html: Added.
  • fast/hidpi/image-srcset-relative-svg-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg.html: Added.
  • fast/hidpi/image-srcset-remove-dynamically-from-js.html:
  • fast/hidpi/image-srcset-simple-2x-expected.txt:
  • fast/hidpi/image-srcset-simple-2x.html:
  • fast/hidpi/image-srcset-space-left-nomodifier-expected.txt: Added.
  • fast/hidpi/image-srcset-space-left-nomodifier.html: Copied from LayoutTests/fast/hidpi/image-srcset-data-srcset.html.
  • fast/hidpi/image-srcset-svg-expected.html: Added.
  • fast/hidpi/image-srcset-svg.html: Added.
  • fast/hidpi/image-srcset-svg2-expected.html: Added.
  • fast/hidpi/image-srcset-svg2.html: Added.
  • fast/hidpi/resources/green-400-px-square.png: Added.
  • fast/hidpi/resources/relativesrcset.svg: Added.
  • fast/hidpi/resources/srcset-helper.js:

(runTest):

  • fast/hidpi/resources/srcset.png: Added.
  • fast/hidpi/resources/srcset.svg: Added.
  • fast/hidpi/resources/srcset_100px.svg: Added.
  • fast/hidpi/resources/svg_canvas_helper.js: Added.

(drawCanvas):

  • fast/hidpi/resources/svg_tests.css: Added.

(.test):
(.test img, .test canvas):
(.test .stats):
(.expected, .actual):

  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.png: Removed.
  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.txt: Removed.

The following tests were added, but skipped, since they reveal an unrelated SVG on canvas rendering issue:

  • fast/hidpi/image-srcset-svg-canvas-2x-expected.html: Added.
  • fast/hidpi/image-srcset-svg-canvas-2x.html: Added.
  • fast/hidpi/image-srcset-svg-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-svg-canvas.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-2x-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-2x.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas-expected.html: Added.
  • fast/hidpi/image-srcset-relative-svg-canvas.html: Added.
4:08 PM Changeset in webkit [163414] by mhahnenberg@apple.com
  • 9 edits
    2 adds
    1 delete in trunk/Source/JavaScriptCore

Refactor MarkStackArray to allow more than JSCells to be stored
https://bugs.webkit.org/show_bug.cgi?id=128203

Reviewed by Geoffrey Garen.

This patch refactors MarkStackArray into a separate template class named GCSegmentedArray.
This class allows subclassing to add functionality that only MarkStackArray wants.
Since it uses the JSC BlockAllocator instead of FastMalloc, this class can be used during
conservative stack scanning, which disallows using FastMalloc.

  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • heap/BlockAllocator.h:
  • heap/GCSegmentedArray.h: Added.

(JSC::GCArraySegment::GCArraySegment):
(JSC::GCArraySegment::data):

  • heap/GCSegmentedArrayInlines.h: Added.

(JSC::GCSegmentedArray<T>::GCSegmentedArray):
(JSC::GCSegmentedArray<T>::~GCSegmentedArray):
(JSC::GCSegmentedArray<T>::clear):
(JSC::GCSegmentedArray<T>::expand):
(JSC::GCSegmentedArray<T>::refill):
(JSC::GCSegmentedArray<T>::fillVector):
(JSC::GCArraySegment<T>::create):
(JSC::GCSegmentedArray<T>::postIncTop):
(JSC::GCSegmentedArray<T>::preDecTop):
(JSC::GCSegmentedArray<T>::setTopForFullSegment):
(JSC::GCSegmentedArray<T>::setTopForEmptySegment):
(JSC::GCSegmentedArray<T>::top):
(JSC::GCSegmentedArray<T>::validatePrevious):
(JSC::GCSegmentedArray<T>::append):
(JSC::GCSegmentedArray<T>::canRemoveLast):
(JSC::GCSegmentedArray<T>::removeLast):
(JSC::GCSegmentedArray<T>::isEmpty):
(JSC::GCSegmentedArray<T>::size):

  • heap/MarkStack.cpp:

(JSC::MarkStackArray::MarkStackArray):
(JSC::MarkStackArray::~MarkStackArray):
(JSC::MarkStackArray::donateSomeCellsTo):
(JSC::MarkStackArray::stealSomeCellsFrom):

  • heap/MarkStack.h:
  • heap/MarkStackInlines.h:
3:57 PM Changeset in webkit [163413] by ggaren@apple.com
  • 41 edits in trunk

Rolled out <http://trac.webkit.org/changeset/163280>:

Source/WebCore:

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

It caused performance regressions, and broken websites on iOS.

Reviewed by Geoffrey Garen.

  • bindings/js/JSDOMBinding.h:

(WebCore::getStaticValueSlotEntryWithoutCaching):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):
(WebCore::JSStorage::deleteProperty):
(WebCore::JSStorage::putDelegate):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateAttributesHashTable):
(GenerateImplementation):

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

(WebCore::jsTestActiveDOMObjectConstructor):

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

(WebCore::jsTestCustomNamedGetterConstructor):

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

(WebCore::JSTestEventConstructor::getOwnPropertySlot):
(WebCore::jsTestEventConstructorConstructor):

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

(WebCore::jsTestEventTargetConstructor):

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

(WebCore::jsTestExceptionConstructor):

  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachable::getOwnPropertySlot):
(WebCore::jsTestGenerateIsReachableConstructor):

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

(WebCore::jsTestInterfaceConstructor):

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

(WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
(WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
(WebCore::jsTestMediaQueryListListenerConstructor):

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

(WebCore::JSTestNamedConstructor::getOwnPropertySlot):
(WebCore::jsTestNamedConstructorConstructor):

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

(WebCore::JSTestNode::getOwnPropertySlot):
(WebCore::jsTestNodeConstructor):

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

(WebCore::jsTestObjConstructor):

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

(WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
(WebCore::jsTestOverloadedConstructorsConstructor):

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

(WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
(WebCore::jsTestSerializedScriptValueInterfaceConstructor):

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

(WebCore::JSTestTypedefsPrototype::getOwnPropertySlot):
(WebCore::jsTestTypedefsConstructor):

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

(WebCore::JSattribute::getOwnPropertySlot):
(WebCore::jsattributeConstructor):

  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:

(WebCore::JSreadonly::getOwnPropertySlot):
(WebCore::jsreadonlyConstructor):

  • bindings/scripts/test/JS/JSreadonly.h:

LayoutTests:

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

It caused performance regressions, and broken websites on iOS.

Reviewed by Geoffrey Garen.

  • fast/dom/Geolocation/enabled-expected.txt:
  • fast/dom/Geolocation/script-tests/enabled.js:
  • fast/dom/wrapper-classes-expected.txt:
  • http/tests/security/cross-frame-access-enumeration-expected.txt:
  • js/dom/constructor-attributes-expected.txt:
  • js/dom/delete-syntax-expected.txt:
  • js/dom/dom-attributes-on-mismatch-type-expected.txt:
  • js/dom/dom-attributes-on-mismatch-type.html:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/script-tests/constructor-attributes.js:
  • js/dom/script-tests/delete-syntax.js:
3:55 PM Changeset in webkit [163412] by mitz@apple.com
  • 7 edits in trunk/Source/WebKit2

[Cocoa] Expose more WKWebProcessPlugInNodeHandle properties
https://bugs.webkit.org/show_bug.cgi?id=128219

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h: Declared new

properties.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

(-[WKWebProcessPlugInNodeHandle elementBounds]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLInputElementIsAutoFilled]): Added.
(-[WKWebProcessPlugInNodeHandle setHTMLInputElementIsAutoFilled:]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLInputELementIsUserEdited]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLTextAreaELementIsUserEdited]): Added.
(-[WKWebProcessPlugInNodeHandle HTMLTableCellElementCellAbove]): Added.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandleInternal.h: Rolled

Internal category into the class extension.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.h: Declared

-clearWrappers.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm:

(-[WKWebProcessPlugInScriptWorld clearWrappers]): Added. Calls through to clearWrappers().

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorldInternal.h: Rolled

Internal category into the class extension.

3:50 PM Changeset in webkit [163411] by fpizlo@apple.com
  • 2 edits in trunk/Tools

export-llvm-build should work with git checkouts
https://bugs.webkit.org/show_bug.cgi?id=128217

Reviewed by Mark Hahnenberg.

If svn export fails, just do ditto.

  • Scripts/export-llvm-build:
3:40 PM Changeset in webkit [163410] by andersca@apple.com
  • 9 edits in trunk/Source

Rename the substring sharing StringImpl::create variants to better indicate what they do
https://bugs.webkit.org/show_bug.cgi?id=128214

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • runtime/JSString.h:

(JSC::jsSingleCharacterSubstring):
(JSC::jsSubstring8):
(JSC::jsSubstring):

  • runtime/SmallStrings.cpp:

(JSC::SmallStringsStorage::SmallStringsStorage):

  • runtime/StringPrototype.cpp:

(JSC::jsSpliceSubstrings):
(JSC::jsSpliceSubstringsWithSeparators):
(JSC::replaceUsingStringSearch):

Source/WTF:

  • wtf/text/AtomicString.cpp:

(WTF::SubstringTranslator::translate):

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::reifyString):
(WTF::StringBuilder::resize):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::createSubstringSharingImpl8):
(WTF::StringImpl::createSubstringSharingImpl):

  • wtf/text/WTFString.cpp:

(WTF::String::substringSharingImpl):

3:33 PM Changeset in webkit [163409] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

webKitCookieStorageCopyRequestHeaderFieldsForURL builds an empty Cookie header when there are no cookies
https://bugs.webkit.org/show_bug.cgi?id=128201

Reviewed by Sam Weinig.

  • Shared/mac/CookieStorageShim.mm: (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):

Return null when NetworkProcess provided a null string, don't build a header dictionary
with an empty Cookie value.

3:33 PM Changeset in webkit [163408] by Alan Bujtas
  • 4 edits in branches/safari-537.74-branch/LayoutTests

Fix src path for js-test-*.js

Unreviewed.

  • fast/css/pending-image-crash.xhtml:
  • js/array-splice-with-holes.html:
  • platform/mac/accessibility/text-marker-for-bounds.html:
3:31 PM Changeset in webkit [163407] by ap@apple.com
  • 8 edits
    2 adds in trunk/Source

WebCrypto HMAC verification uses a non-constant-time memcmp
https://bugs.webkit.org/show_bug.cgi?id=128198
<rdar://problem/15976961>

Reviewed by Oliver Hunt.

Source/WebCore:

  • crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::CryptoAlgorithmHMAC::platformVerify):

Use a constant time memcmp.

Source/WTF:

Added a "constant time" memcmp that doesn't depend on data. The name is somewhat
strange, as the function is of course O(length) and not constant time at all,
but apparently this is how everyone calls such functions.

  • GNUmakefile.list.am:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/CryptographicUtilities.cpp: Added. (WTF::constantTimeMemcmp):
  • wtf/CryptographicUtilities.h: Added.
3:24 PM Changeset in webkit [163406] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Add WK2 event handling path for iOS, and make Mac and iOS code more similar
https://bugs.webkit.org/show_bug.cgi?id=128199

Reviewed by Sam Weinig.

EventHandlerIOS need some changes for WebKit2, where we have no native
widget. Merge those changes from EventHandlerMac.

Make a few drive-by changes to match EventHandlerMac behavior.

Clean up EventHandlerMac, removing trailing whitespace and fixing
the odd comment.

  • page/ios/EventHandlerIOS.mm:

(WebCore::EventHandler::passWidgetMouseDownEventToWidget):
(WebCore::EventHandler::passMouseDownEventToWidget):
(WebCore::EventHandler::passSubframeEventToSubframe):
(WebCore::EventHandler::passWheelEventToWidget):
(WebCore::EventHandler::mouseDown):
(WebCore::EventHandler::mouseMoved):
(WebCore::frameHasPlatformWidget):
(WebCore::EventHandler::passMousePressEventToSubframe):
(WebCore::EventHandler::passMouseMoveEventToSubframe):
(WebCore::EventHandler::passMouseReleaseEventToSubframe):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::passWidgetMouseDownEventToWidget):
(WebCore::EventHandler::passMouseDownEventToWidget):
(WebCore::findViewInSubviews):
(WebCore::EventHandler::eventLoopHandleMouseUp):
(WebCore::EventHandler::passWheelEventToWidget):
(WebCore::EventHandler::mouseMoved):

3:21 PM Changeset in webkit [163405] by andersca@apple.com
  • 3 edits
    3 adds in trunk/Source/WebKit2

Add a WKNavigationAction object
https://bugs.webkit.org/show_bug.cgi?id=128212

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKNavigationAction.h: Added.

(NS_ENUM):

  • UIProcess/API/Cocoa/WKNavigationAction.mm: Added.
  • UIProcess/API/Cocoa/WKNavigationActionInternal.h: Added.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::toWKNavigationType):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

  • WebKit2.xcodeproj/project.pbxproj:
2:41 PM Changeset in webkit [163404] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add back/forward related methods to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=128209

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView canGoBack]):
(-[WKWebView canGoForward]):
(-[WKWebView goBack]):
(-[WKWebView goForward]):

2:22 PM Changeset in webkit [163403] by mhahnenberg@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Remove conflict markers from ChangeLog

1:52 PM Changeset in webkit [163402] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

[OSX] Limit progress bar's dimensions to ushort
https://bugs.webkit.org/show_bug.cgi?id=128019

Wordaround a crash in Quartz until <rdar://problem/15855086> is fixed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-04
Reviewed by Sam Weinig.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::progressBarRectForBounds):

1:50 PM Changeset in webkit [163401] by andersca@apple.com
  • 9 edits in trunk/Source

Rename StringImpl::getCharacters to StringImpl::characters
https://bugs.webkit.org/show_bug.cgi?id=128205

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

Update for WTF changes.

  • runtime/JSStringJoiner.cpp:

(JSC::joinStrings):

  • runtime/StringPrototype.cpp:

(JSC::splitStringByOneCharacterImpl):

Source/WebCore:

Update for WTF changes.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::createTextRuns):

Source/WTF:

This lets us use StringImpl::getCharacters for the upconverting version.
Also, change StringImpl::characters<UChar>() to call characters16() instead of deprecatedCharacters()
and audit all call sites to make sure we weren't relying on upconversion anywhere.

  • wtf/text/AtomicString.cpp:

(WTF::findString):

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::simplifyMatchedCharactersToSpace):

  • wtf/text/StringImpl.h:

(WTF::StringImpl::characters<LChar>):
(WTF::StringImpl::characters<UChar>):

1:40 PM Changeset in webkit [163400] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK: Cannot select text inside clickable containers.
https://bugs.webkit.org/show_bug.cgi?id=128197
<rdar://problem/15970890>

Reviewed by Simon Fraser.

When retrieving position information, we first try to
find the node responding to click events because we want
to know whether we are on a link or an image to show
the appropriate action sheet.
We could still have a node responding to click events if
for example we have a DIV with a click handler but that
doesn't require any special handling and we still need to
perform regular hit testing.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

1:39 PM Changeset in webkit [163399] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix a mismatch of uint64_t and size_t on 32-bit platforms.

  • ftl/FTLDWARFDebugLineInfo.h:
1:32 PM Changeset in webkit [163398] by andersca@apple.com
  • 6 edits in trunk/Source

Rename equalNonNull to equal and make it take const StringImpl& instead
https://bugs.webkit.org/show_bug.cgi?id=128206

Reviewed by Andreas Kling.

Source/WebCore:

  • html/parser/HTMLParserIdioms.cpp:

(WebCore::threadSafeEqual):
(WebCore::threadSafeMatch):

Source/WTF:

  • wtf/text/StringHash.h:

(WTF::StringHash::equal):

  • wtf/text/StringImpl.cpp:

(WTF::stringImplContentEqual):
(WTF::equal):

  • wtf/text/StringImpl.h:
1:27 PM Changeset in webkit [163397] by mhahnenberg@apple.com
  • 4 edits
    2 adds in trunk/Source/JavaScriptCore

JSC needs to be able to parse DWARF debug_line info
https://bugs.webkit.org/show_bug.cgi?id=127394

Reviewed by Geoffrey Garen.

If we want to encode IR maps in the DWARF debug line info metadata generated by LLVM,
we'll need to know how to decode the .debug_line DWARF section. This patch implements
an interpreter for the .debug_line DWARF section in accordance with the version 3 spec
published at http://www.dwarfstd.org.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • ftl/FTLDWARFDebugLineInfo.cpp: Added.

(JSC::FTL::DebugLineInterpreter::DebugLineInterpreter):
(JSC::FTL::read):
(JSC::FTL::DebugLineInterpreter::parseULEB128):
(JSC::FTL::DebugLineInterpreter::parseSLEB128):
(JSC::FTL::DebugLineInterpreter::run):
(JSC::FTL::DebugLineInterpreter::parsePrologue):
(JSC::FTL::DebugLineInterpreter::parseIncludeDirectories):
(JSC::FTL::DebugLineInterpreter::parseFileEntries):
(JSC::FTL::DebugLineInterpreter::parseFileEntry):
(JSC::FTL::DebugLineInterpreter::interpretStatementProgram):
(JSC::FTL::DebugLineInterpreter::interpretOpcode):
(JSC::FTL::DebugLineInterpreter::printLineInfo):
(JSC::FTL::DebugLineInterpreter::resetInterpreterState):

  • ftl/FTLDWARFDebugLineInfo.h: Added.

(JSC::FTL::DebugLineInterpreter::Prologue::Prologue):

  • ftl/FTLValueRange.cpp: Random build fix for !ENABLE(FTL_JIT).
12:28 PM Changeset in webkit [163396] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Get rid of StringImpl::m_buffer
https://bugs.webkit.org/show_bug.cgi?id=128200

Reviewed by Michael Saboff.

Trade one lousy hack for another by changing the CreateEmptyUnique StringImpl
constructor to initialize its character buffer to point to m_length instead
since it will always be null.

Also change it to be an 8-bit string because why not.

  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl):

11:59 AM WebInspectorCodingStyleGuide edited by BJ Burg
Tip about event naming convention (diff)
11:36 AM Changeset in webkit [163395] by Lucas Forschler
  • 41 edits in tags/Safari-538.16.1

Rollout 163280.

11:32 AM Changeset in webkit [163394] by andersca@apple.com
  • 7 edits in trunk/Source

Rename String::getCharacters to String::characters
https://bugs.webkit.org/show_bug.cgi?id=128196

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Update for WTF::String changes.

  • yarr/YarrParser.h:

(JSC::Yarr::Parser::Parser):

Source/WebCore:

Update for WTF::String changes.

  • dom/Document.cpp:

(WebCore::canonicalizedTitle):

Source/WTF:

This means String::characters() will end up calling either characters8() or characters16() which
makes more logical sense. It also frees up the getCharacters name so we can use it for a new function
that will do upconversion.

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::appendUninitializedSlow):

  • wtf/text/WTFString.h:

(WTF::String::characters<LChar>):
(WTF::String::characters<UChar>):

11:22 AM Changeset in webkit [163393] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Fix Release build after r163390.

  • platform/audio/MediaSession.cpp: Add "#if !LOG_DISABLED" around logging-only function.
11:21 AM WebInspectorCodingStyleGuide edited by BJ Burg
Organize the various advices, add nits about forEach vs. for..of and … (diff)
11:10 AM Changeset in webkit [163392] by Brent Fulgham
  • 9 edits
    1 copy in branches/safari-537.75-branch

Source/WebCore: Build fix after last branch merge.

  • WebCore.vcxproj/WebCore.vcxproj: Correct bad merge of media build steps.

Source/WebInspectorUI: Merge r154395.

2013-08-20 Brent Fulgham <Brent Fulgham>

<http://webkit.org/b/120098> [Windows] Enable the New Web Inspector

Reviewed by Brian Weinstein.

Add a new project to copy files to the appropriate spots in the
Windows port.

  • WebInspectorUI.vcxproj: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters: Added.
  • WebInspectorUI.vcxproj/WebInspectorUIPostBuild.cmd: Added.
  • WebInspectorUI.vcxproj/WebInspectorUIPreBuild.cmd: Added.

Source/WebKit: Merge r154395.

2013-08-20 Brent Fulgham <Brent Fulgham>

<https://webkit.org/b/120098> [Windows] Enable the new Web Inspector

Reviewed by Brian Weinstein.

  • WebKit.vcxproj/WebKit.sln: Add reference to the new WebInspectorUI project so that it will be included in new distributions.

Source/WebKit/win: Merge r154394

2013-08-20 Brent Fulgham <Brent Fulgham>

<https://webkit.org/b/120098> [Windows] Enable the New Web Inspector

Reviewed by Brian Weinstein.

  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::openInspectorFrontend): Use the new inspector if present in the WebKit distribution. (WebInspectorFrontendClient::localizedStringsURL): Use the new Web Inspector's localized strings (if present).
11:09 AM Changeset in webkit [163391] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ASSERT in speculateMachineInt on 32-bit platforms
https://bugs.webkit.org/show_bug.cgi?id=128155

Reviewed by Filip Pizlo.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

11:09 AM Changeset in webkit [163390] by eric.carlson@apple.com
  • 23 edits
    2 adds
    2 deletes in trunk

Refine MediaSession interruptions
https://bugs.webkit.org/show_bug.cgi?id=128125

Reviewed by Jer Noble.

Source/WebCore:

Test: media/video-background-playback.html

  • WebCore.exp.in: Export applicationWillEnterForeground and applicationWillEnterBackground for

Internals.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::play): Ask the media session if playback is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::pause): Ask the media session if pausing is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::mediaType): Return media type based on media characteristics once

the information is available.

(WebCore::HTMLMediaElement::resumePlayback): New.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): New, use for logging only.
(WebCore::HTMLMediaSession::addBehaviorRestriction): Log restriction changes.
(WebCore::HTMLMediaSession::removeBehaviorRestriction): Ditto.

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::stateName): New, used for logging.
(WebCore::MediaSession::MediaSession): Don't cache client media type because it can change.
(WebCore::MediaSession::setState): Log state changes.
(WebCore::MediaSession::beginInterruption): Remember the current state in case we want to use it

to restore state when the interruption ends.

(WebCore::MediaSession::endInterruption): Resume playback if appropriate.
(WebCore::MediaSession::clientWillBeginPlayback): Track the client's playback state.
(WebCore::MediaSession::clientWillPausePlayback): Ditto.
(WebCore::MediaSession::mediaType): Ask client for state.

  • platform/audio/MediaSession.h:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager): m_interruptions -> m_interrupted.
(WebCore::MediaSessionManager::beginInterruption): Don't assume interruptions are always balanced.
(WebCore::MediaSessionManager::endInterruption): Ditto.
(WebCore::MediaSessionManager::addSession):
(WebCore::MediaSessionManager::applicationWillEnterBackground): Interrupt client if it is not

allowed to play in the background.

(WebCore::MediaSessionManager::applicationWillEnterForeground): End client interruption if it

was stopped by an interruption.

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS): Clear the helper callback.
(WebCore::MediaSessionManageriOS::resetRestrictions): Mark video as not allowed to play

while the application is in the background. Register for application suspend/resume
notifications.

(-[WebMediaSessionHelper clearCallback]): Set _callback to nil.
(-[WebMediaSessionHelper applicationWillEnterForeground:]): New, notify client of application

state change.

(-[WebMediaSessionHelper applicationWillResignActive:]): Ditto.

  • platform/audio/mac/AudioDestinationMac.h: Add resumePlayback.
  • testing/Internals.cpp:

(WebCore::Internals::applicationWillEnterForeground): New, simulate application context switch.
(WebCore::Internals::applicationWillEnterBackground): Ditto.
(WebCore::Internals::setMediaSessionRestrictions): Add "BackgroundPlaybackNotPermitted" restriction.

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

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export applicationWillEnterForeground

and applicationWillEnterBackground for Internals.

LayoutTests:

  • media/video-background-playback-expected.txt: Added.
  • media/video-background-playback.html: Added.
  • media/video-interruption-active-when-element-created-expected.txt: Removed.
  • media/video-interruption-active-when-element-created.html: Removed.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
10:56 AM WebInspectorCodingStyleGuide edited by BJ Burg
nit about model/view layering, and when to spell out identifier (diff)
10:51 AM Changeset in webkit [163389] by akling@apple.com
  • 15 edits
    3 deletes in trunk

Remove CPP bindings generator.
<https://webkit.org/b/128189>

Scrub out some leftover Blackberry gunk.

Reviewed by Anders Carlsson.

  • Modules/webdatabase/SQLResultSet.idl:
  • bindings/cpp/WebDOMCString.cpp: Removed.
  • bindings/cpp/WebDOMCString.h: Removed.
  • bindings/cpp/WebDOMDOMWindowCustom.cpp: Removed.
  • bindings/cpp/WebDOMEventListenerCustom.cpp: Removed.
  • bindings/cpp/WebDOMEventTarget.cpp: Removed.
  • bindings/cpp/WebDOMEventTarget.h: Removed.
  • bindings/cpp/WebDOMHTMLCollectionCustom.cpp: Removed.
  • bindings/cpp/WebDOMHTMLDocumentCustom.cpp: Removed.
  • bindings/cpp/WebDOMHTMLOptionsCollectionCustom.cpp: Removed.
  • bindings/cpp/WebDOMNodeCustom.cpp: Removed.
  • bindings/cpp/WebDOMNodeFilterCustom.cpp: Removed.
  • bindings/cpp/WebDOMObject.h: Removed.
  • bindings/cpp/WebDOMString.cpp: Removed.
  • bindings/cpp/WebDOMString.h: Removed.
  • bindings/cpp/WebExceptionHandler.cpp: Removed.
  • bindings/cpp/WebExceptionHandler.h: Removed.
  • bindings/cpp/WebNativeEventListener.cpp: Removed.
  • bindings/cpp/WebNativeEventListener.h: Removed.
  • bindings/cpp/WebNativeNodeFilterCondition.cpp: Removed.
  • bindings/cpp/WebNativeNodeFilterCondition.h: Removed.
  • bindings/scripts/CodeGeneratorCPP.pm: Removed.
  • bindings/scripts/test/CPP/CPPTestSupplemental.cpp: Removed.
  • bindings/scripts/test/CPP/CPPTestSupplemental.h: Removed.
  • bindings/scripts/test/CPP/WebDOMFloat64Array.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMFloat64Array.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCallback.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCallback.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventConstructor.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestEventTarget.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestException.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestException.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestImplements.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestImplements.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestInterface.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNamedConstructor.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNode.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestNode.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestObj.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSupplemental.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestSupplemental.h: Removed.
  • bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMTestTypedefs.h: Removed.
  • bindings/scripts/test/CPP/WebDOMattribute.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMattribute.h: Removed.
  • bindings/scripts/test/CPP/WebDOMreadonly.cpp: Removed.
  • bindings/scripts/test/CPP/WebDOMreadonly.h: Removed.
  • css/StyleSheet.idl:
  • dom/CustomEvent.idl:
  • dom/Document.idl:
  • dom/Event.idl:
  • dom/Node.idl:
  • dom/PopStateEvent.idl:
  • html/HTMLCanvasElement.idl:
  • html/HTMLInputElement.idl:
  • html/canvas/CanvasRenderingContext2D.idl:
  • page/DOMWindow.idl:
  • page/Location.idl:
  • workers/DedicatedWorkerGlobalScope.idl:
10:41 AM Changeset in webkit [163388] by enrica@apple.com
  • 7 edits in trunk/Source/WebKit2

WK2: Selection callout bar does not scroll with the selection.
https://bugs.webkit.org/show_bug.cgi?id=128142
<rdar://problem/15970812>

Reviewed by Benjamin Poulain.

Adding notifications to WKContentView to all the delegates
for scrolling and zooming to let WKInteractionView about it.
This allows the interaction assistants to hide the callout
while scrolling or zooming and to fade it in again at the end.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView scrollViewWillBeginZooming:withView:]):
(-[WKWebView scrollViewWillBeginDragging:]):

  • UIProcess/API/ios/WKContentView.h:
  • UIProcess/API/ios/WKContentView.mm:

(-[WKContentView didFinishScrollTo:]):
(-[WKContentView willStartZoomOrScroll]):
(-[WKContentView didZoomToScale:]):

  • UIProcess/API/ios/WKInteractionView.h:
  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView _willStartScrollingOrZooming]):
(-[WKInteractionView _didEndScrollingOrZooming]):

  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView scrollViewWillBeginZooming:withView:]):
(-[WKView scrollViewWillBeginDragging:]):

10:23 AM AddingFiles edited by BJ Burg
add instructions for windoze and Gmake (diff)
10:05 AM Changeset in webkit [163387] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

10:04 AM Changeset in webkit [163386] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Partially revert r162947 so that Document::topDocument() again Walk over the chain of
owner Elements. This fixes the crashes related to creating and accessing the AXObjectCache
of documents that were introduced in that revision, which determined the top document by
returning the Document of the main frame. This fails badly when the frame in question is cached.

Patch by Zan Dobersek <zdobersek@igalia.com> on 2014-02-04

  • dom/Document.cpp:

(WebCore::Document::topDocument):

10:00 AM Changeset in webkit [163385] by zandobersek@gmail.com
  • 11 edits in trunk/Source/WebCore

Manage MediaQuery and MediaQueryExp classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128117

Reviewed by Darin Adler.

Replace uses of OwnPtr for the MediaQuery and MediaQueryExp classes with std::unique_ptr.

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

(WebCore::CSSParser::parseMediaQuery):

  • css/CSSParser.h:
  • css/MediaList.cpp:

(WebCore::MediaQuerySet::parse):
(WebCore::MediaQuerySet::add):
(WebCore::MediaQuerySet::remove):
(WebCore::MediaQuerySet::addMediaQuery):
(WebCore::MediaList::item):
(WebCore::reportMediaQueryWarningIfNeeded):

  • css/MediaList.h:

(WebCore::MediaQuerySet::queryVector):

  • css/MediaQuery.cpp:

(WebCore::MediaQuery::MediaQuery):

  • css/MediaQuery.h:

(WebCore::MediaQuery::expressions):
(WebCore::MediaQuery::copy):

  • css/MediaQueryEvaluator.cpp:

(WebCore::MediaQueryEvaluator::eval):

  • css/MediaQueryExp.cpp:

(WebCore::MediaQueryExp::MediaQueryExp):

  • css/MediaQueryExp.h:

(WebCore::MediaQueryExp::copy):

9:56 AM Changeset in webkit [163384] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

GC timer should always do a FullCollection
https://bugs.webkit.org/show_bug.cgi?id=128186

Reviewed by Michael Saboff.

Right now the GC timer does whatever type of collection the next collection
would have been, which is almost always an EdenCollection. It then thinks
that it has done all of the work it was supposed to do and never schedules
another GC. Ideally we'd like to have some heuristics for the timer that
would schedule both EdenCollections and FullCollections, but the easiest
fix for now is to always do FullCollections since that will at least be
a non-regression.

  • heap/Heap.h:

(JSC::Heap::gcTimerDidFire):

  • runtime/GCActivityCallback.cpp:

(JSC::DefaultGCActivityCallback::doWork):

9:50 AM Changeset in webkit [163383] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove SVG_DOM_OBJC_BINDINGS after r161638.
https://bugs.webkit.org/show_bug.cgi?id=128182

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-04
Reviewed by Andreas Kling.

Removed ENABLE(SVG_DOM_OBJC_BINDINGS).

No tests required.

  • bindings/objc/DOMUIKitExtensions.mm:

(-[DOMNode boundingBoxes]):
(-[DOMNode absoluteQuads]):

9:42 AM AddingFiles edited by BJ Burg
instructions for adding to CMake (diff)
9:27 AM Changeset in webkit [163382] by stavila@adobe.com
  • 3 edits
    2 adds in trunk

REGRESSION (r159609): Images are corrupted when hovering over buttons @ github.com
https://bugs.webkit.org/show_bug.cgi?id=127729

Reviewed by Antti Koivisto.

Source/WebCore:

When clipping a rect, the RenderLayer would not properly save the context when
the clipping rect is the same as the paint rect and the clipping rect
has radius.

Test: fast/regions/repaint/hover-border-radius.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::restoreClip):

LayoutTests:

Added test for the correct repainting of buttons with border radius when hovering.

  • fast/regions/repaint/hover-border-radius-expected.txt: Added.
  • fast/regions/repaint/hover-border-radius.html: Added.
8:48 AM Changeset in webkit [163381] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128183

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
8:39 AM Changeset in webkit [163380] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Code cleanup: remove leftover occurrence of ENABLE(GESTURE_EVENTS)
https://bugs.webkit.org/show_bug.cgi?id=128180

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-04
Reviewed by Csaba Osztrogonác.

Removed last occurrence of ENABLE(GESTURE_EVENTS).

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePlugin::platformHandleMouseEvent):

8:34 AM Changeset in webkit [163379] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[CMAKE] Remove workaround for GCC 4.6
https://bugs.webkit.org/show_bug.cgi?id=128176

Reviewed by Csaba Osztrogonác.

Since r162126, WebKit requires at least 4.7.

  • CMakeLists.txt:
7:57 AM Changeset in webkit [163378] by zandobersek@gmail.com
  • 6 edits in trunk/Source/WebCore

Manage RuleSet and RuleData classes through std::unique_ptr instead of OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=128116

Reviewed by Darin Adler.

Replace uses of OwnPtr for the RuleSet and RuleData classes with std::unique_ptr.

  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::loadFullDefaultStyle):
(WebCore::CSSDefaultStyleSheets::loadSimpleDefaultStyle):
(WebCore::CSSDefaultStyleSheets::viewSourceStyle):

  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::initUserStyle):
(WebCore::makeRuleSet):
(WebCore::DocumentRuleSets::resetAuthorStyle):

  • css/DocumentRuleSets.h:
  • css/RuleSet.cpp:

(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::addRegionRule):

  • css/RuleSet.h:

(WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair):

7:52 AM Changeset in webkit [163377] by commit-queue@webkit.org
  • 23 edits
    2 copies
    2 deletes in trunk

Unreviewed, rolling out r163376.
http://trac.webkit.org/changeset/163376
https://bugs.webkit.org/show_bug.cgi?id=128184

Unexpected test failures. (Requested by eric_carlson on
#webkit).

Source/WebCore:

  • WebCore.exp.in:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::HTMLMediaSession::addBehaviorRestriction):
(WebCore::HTMLMediaSession::removeBehaviorRestriction):
(WebCore::HTMLMediaSession::clientWillBeginPlayback):

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::MediaSession::MediaSession):
(WebCore::MediaSession::beginInterruption):
(WebCore::MediaSession::endInterruption):

  • platform/audio/MediaSession.h:

(WebCore::MediaSession::mediaType):
(WebCore::MediaSession::setState):
(WebCore::MediaSessionClient::beginInterruption):
(WebCore::MediaSessionClient::endInterruption):

  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager):
(WebCore::MediaSessionManager::beginInterruption):
(WebCore::MediaSessionManager::endInterruption):
(WebCore::MediaSessionManager::addSession):

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS):

  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::resetRestrictions):
(-[WebMediaSessionHelper initWithCallback:]):

  • platform/audio/mac/AudioDestinationMac.h:
  • testing/Internals.cpp:

(WebCore::Internals::setMediaSessionRestrictions):

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

Source/WebKit:

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

LayoutTests:

  • media/video-background-playback-expected.txt: Removed.
  • media/video-background-playback.html: Removed.
  • media/video-interruption-active-when-element-created-expected.txt: Copied from LayoutTests/media/video-interruption-with-resume-allowing-play-expected.txt.
  • media/video-interruption-active-when-element-created.html: Copied from LayoutTests/media/video-interruption-with-resume-not-allowing-play.html.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
6:59 AM Changeset in webkit [163376] by eric.carlson@apple.com
  • 23 edits
    2 adds
    2 deletes in trunk

Refine MediaSession interruptions
https://bugs.webkit.org/show_bug.cgi?id=128125

Reviewed by Jer Noble.

Source/WebCore:

Test: media/video-background-playback.html

  • WebCore.exp.in: Export applicationWillEnterForeground and applicationWillEnterBackground for

Internals.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::play): Ask the media session if playback is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::pause): Ask the media session if pausing is allowed instead of check

to see if it is interrupted directly.

(WebCore::HTMLMediaElement::mediaType): Return media type based on media characteristics once

the information is available.

(WebCore::HTMLMediaElement::resumePlayback): New.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): New, use for logging only.
(WebCore::HTMLMediaSession::addBehaviorRestriction): Log restriction changes.
(WebCore::HTMLMediaSession::removeBehaviorRestriction): Ditto.

  • html/HTMLMediaSession.h:
  • platform/audio/MediaSession.cpp:

(WebCore::stateName): New, used for logging.
(WebCore::MediaSession::MediaSession): Don't cache client media type because it can change.
(WebCore::MediaSession::setState): Log state changes.
(WebCore::MediaSession::beginInterruption): Remember the current state in case we want to use it

to restore state when the interruption ends.

(WebCore::MediaSession::endInterruption): Resume playback if appropriate.
(WebCore::MediaSession::clientWillBeginPlayback): Track the client's playback state.
(WebCore::MediaSession::clientWillPausePlayback): Ditto.
(WebCore::MediaSession::mediaType): Ask client for state.

  • platform/audio/MediaSession.h:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager): m_interruptions -> m_interrupted.
(WebCore::MediaSessionManager::beginInterruption): Don't assume interruptions are always balanced.
(WebCore::MediaSessionManager::endInterruption): Ditto.
(WebCore::MediaSessionManager::addSession):
(WebCore::MediaSessionManager::applicationWillEnterBackground): Interrupt client if it is not

allowed to play in the background.

(WebCore::MediaSessionManager::applicationWillEnterForeground): End client interruption if it

was stopped by an interruption.

  • platform/audio/MediaSessionManager.h:
  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::~MediaSessionManageriOS): Clear the helper callback.
(WebCore::MediaSessionManageriOS::resetRestrictions): Mark video as not allowed to play

while the application is in the background. Register for application suspend/resume
notifications.

(-[WebMediaSessionHelper clearCallback]): Set _callback to nil.
(-[WebMediaSessionHelper applicationWillEnterForeground:]): New, notify client of application

state change.

(-[WebMediaSessionHelper applicationWillResignActive:]): Ditto.

  • platform/audio/mac/AudioDestinationMac.h: Add resumePlayback.
  • testing/Internals.cpp:

(WebCore::Internals::applicationWillEnterForeground): New, simulate application context switch.
(WebCore::Internals::applicationWillEnterBackground): Ditto.
(WebCore::Internals::setMediaSessionRestrictions): Add "BackgroundPlaybackNotPermitted" restriction.

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

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export applicationWillEnterForeground

and applicationWillEnterBackground for Internals.

LayoutTests:

  • media/video-background-playback-expected.txt: Added.
  • media/video-background-playback.html: Added.
  • media/video-interruption-active-when-element-created-expected.txt: Removed.
  • media/video-interruption-active-when-element-created.html: Removed.
  • media/video-interruption-with-resume-allowing-play-expected.txt:
  • media/video-interruption-with-resume-allowing-play.html:
  • media/video-interruption-with-resume-not-allowing-play-expected.txt:
  • media/video-interruption-with-resume-not-allowing-play.html:
6:50 AM Changeset in webkit [163375] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Automake] Add missing $(feature_defines) when generating InjectedBundle bindings
https://bugs.webkit.org/show_bug.cgi?id=128170

Patch by Carlos Garnacho <carlosg@gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

  • WebKitTestRunner/GNUmakefile.am: Add missing $(feature_defines) when

generating the InjectedBundle bindings. So the various ENABLE_* defines
are available there.

5:43 AM Changeset in webkit [163374] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for three flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=128104

Unreviewed EFL gardening

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
4:42 AM Changeset in webkit [163373] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Ensure generated events have given modifiers GDK understands
https://bugs.webkit.org/show_bug.cgi?id=128171

Patch by Carlos Garnacho <carlosg@gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

  • WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:

(WTR::webkitModifiersToGDKModifiers): Move around
(WTR::EventSenderProxy::createMouseButtonEvent):
(WTR::EventSenderProxy::keyDown): Use webkitModifiersToGDKModifiers to
translate WKEventModifiers.

3:54 AM Changeset in webkit [163372] by rgabor@webkit.org
  • 3 edits in trunk/Tools

Fine tuning the ARM EFL bots
https://bugs.webkit.org/show_bug.cgi?id=128168

Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/config.json: Add custom SVN mirror.
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(WaitForSVNServer): Make it not to halt before the first repository checkout.
(WaitForSVNServer.evaluateCommand):
(Factory.init): Disable kill-old-processes step on EFL ARM bots, because these
bots run on the same machine and they kill the processes of each other.

3:40 AM Changeset in webkit [163371] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Add expectations for two flaky media layout tests
https://bugs.webkit.org/show_bug.cgi?id=127994

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-02-04

  • platform/efl/TestExpectations:
2:25 AM Changeset in webkit [163370] by eunmi15.lee@samsung.com
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] ewk_context needs to route InjectedBundle messages correctly.
https://bugs.webkit.org/show_bug.cgi?id=90772

Reviewed by Gyuyoung Kim.

Add APIs to post message to injected bundle and register callback to
get message from injected bundle. When callback is registered,
WKContextInjectedBundleClient is set to get messages from injected bundle.

  • UIProcess/API/efl/ewk_context.cpp:

(EwkContext::EwkContext):
(toEwkContext):
(EwkContext::didReceiveMessageFromInjectedBundle):
(EwkContext::didReceiveSynchronousMessageFromInjectedBundle):
(EwkContext::setMessageFromInjectedBundleCallback): register callback to get message from injected bundle.
(EwkContext::processReceivedMessageFromInjectedBundle): process message from injected bundle.
(ewk_context_message_post_to_injected_bundle):
(ewk_context_message_from_injected_bundle_callback_set):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/ewk_context_private.h:
2:10 AM Changeset in webkit [163369] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

[CSS Regions] Fix Assert SHOULD NEVER BE REACHED in RenderLayer::enclosingElement()
https://bugs.webkit.org/show_bug.cgi?id=123329

Patch by Mihai Maerean <Mihai Maerean> on 2014-02-04
Reviewed by Mihnea Ovidenie.

Source/WebCore:

The flowthread doesn't have an enclosing element, so when hitting the layer of the
flowthread (e.g. the descent area of the RootInlineBox for the image flowed alone
inside the flow thread) we're letting the hit testing continue so it will hit the region.

Tests: fast/regions/assert-hit-test-image.html

fast/regions/auto-size/region-same-height-as-div-with-inline-child.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hitTestContents):

LayoutTests:

  • fast/regions/assert-hit-test-image.html: Added.
  • fast/regions/assert-hit-test-image-expected.txt: Added.
  • fast/regions/auto-size/region-same-height-as-div-with-inline-child.html: Added.
  • fast/regions/auto-size/region-same-height-as-div-with-inline-child-expected.txt: Added.
12:53 AM Changeset in webkit [163368] by mihnea@adobe.com
  • 3 edits
    4 adds in trunk
ASSERTION FAILED: !object
(object->isRenderBlock())

https://bugs.webkit.org/show_bug.cgi?id=127687

Reviewed by Ryosuke Niwa.

Source/WebCore:

Currently, when computing the visible position for a point inside a region,
we transform the point into flow thread coordinates and delegate the processing
to the first child of the flow thread which we incorrectly assume is a block.
However, we can specify flow-into also on inline elements which leads to the
assertion.

Instead of delegating the processing to the first child when the flow thread
has children, delegate the computation of the visible position to the
flow thread and avoid any assumption about the nature of the flow thread
first child. If the flow thread does not have any children that should be
rendered by the region, let the region behave like an ordinary element
with no children.

Tests: fast/regions/selection/position-for-point-inline-content-node.html

fast/regions/selection/selection-ended-in-empty-region.html

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::positionForPoint):

LayoutTests:

Added test showing that the content of an inline content node, having
flow-into specified, can be properly selected without hitting the assertion.
Also added another test to make sure that when the selection starts
outside an empty region and ends inside the empty region, the region behaves
like an ordinary element with no children.

  • fast/regions/selection/position-for-point-inline-content-node-expected.txt: Added.
  • fast/regions/selection/position-for-point-inline-content-node.html: Added.
  • fast/regions/selection/selection-ended-in-empty-region-expected.txt: Added.
  • fast/regions/selection/selection-ended-in-empty-region.html: Added.
12:20 AM Changeset in webkit [163367] by jinwoo7.song@samsung.com
  • 9 edits in trunk/Source/WebKit2

[EFL][WK2] Stop using COMPILE_ASSERT_MATCHING_ENUM macros in EFL WebKit2
https://bugs.webkit.org/show_bug.cgi?id=128156

Reviewed by Anders Carlsson.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::requestPopupMenu):

  • UIProcess/API/efl/ewk_context.cpp:

(toWKCacheModel):
(EwkContext::setCacheModel):

  • UIProcess/API/efl/ewk_cookie_manager.cpp:

(ewk_cookie_manager_persistent_storage_set):
(ewk_cookie_manager_accept_policy_set):

  • UIProcess/API/efl/ewk_navigation_policy_decision.cpp:

(toEwkNavigationType):
(toEventMouseButton):
(toEventModifierKeys):
(EwkNavigationPolicyDecision::EwkNavigationPolicyDecision):
(EwkNavigationPolicyDecision::navigationType):
(EwkNavigationPolicyDecision::mouseButton):
(EwkNavigationPolicyDecision::modifiers):
(ewk_navigation_policy_decision_download):

  • UIProcess/API/efl/ewk_navigation_policy_decision_private.h:

(EwkNavigationPolicyDecision::create):

  • UIProcess/API/efl/ewk_popup_menu_item.cpp:

(EwkPopupMenuItem::type):
(EwkPopupMenuItem::textDirection):

  • UIProcess/API/efl/ewk_private.h:
  • UIProcess/API/efl/ewk_view.cpp:

(toWKFindOptions):
(ewk_view_text_find):
(toWKPaginationMode):
(toEwkPaginationMode):
(ewk_view_pagination_mode_set):
(ewk_view_pagination_mode_get):

Note: See TracTimeline for information about the timeline view.