WebKit-https.git
6 years agoUnreviewed. Fix GTK+ cmake build after r165488.
carlosgc@webkit.org [Wed, 12 Mar 2014 19:25:32 +0000 (19:25 +0000)]
Unreviewed. Fix GTK+ cmake build after r165488.

* MiniBrowser/gtk/CMakeLists.txt: Add CMAKE_BINARY_DIR to include dirs.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165494 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoHave the scrolling tree track the viewport size, not the viewport rect
simon.fraser@apple.com [Wed, 12 Mar 2014 18:55:53 +0000 (18:55 +0000)]
Have the scrolling tree track the viewport size, not the viewport rect
https://bugs.webkit.org/show_bug.cgi?id=130141

Reviewed by Beth Dakin.

Source/WebCore:

The scrolling tree only needs to know the size of the viewport, not its
origin, since the origin is deduced from the updated scroll position.

* WebCore.exp.in:
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setViewportSize):
(WebCore::ScrollingStateScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateScrollingNode.h:
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
* page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::viewportSize):
* page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:
(WebCore::ScrollingTreeScrollingNodeIOS::setScrollLayerPosition):
(WebCore::ScrollingTreeScrollingNodeIOS::maximumScrollPosition):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::updateAfterChildren):
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
(WebCore::ScrollingTreeScrollingNodeMac::maximumScrollPosition):
(WebCore::ScrollingTreeScrollingNodeMac::logExposedUnfilledArea):

Source/WebKit2:

The scrolling tree only needs to know the size of the viewport, not its
origin, since the origin is deduced from the updated scroll position.

* Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):

LayoutTests:

The scrolling tree only needs to know the size of the viewport, not its
origin, since the origin is deduced from the updated scroll position.

Tests dump a size, not a rect with a 0,0 origin now.

* platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/four-bars-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/four-bars-with-header-and-footer-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/nested-fixed-expected.txt:
* platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt:
* platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset-expected.txt:
* platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165493 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r165481.
akling@apple.com [Wed, 12 Mar 2014 18:55:25 +0000 (18:55 +0000)]
Unreviewed, rolling out r165481.
https://bugs.webkit.org/show_bug.cgi?id=130151

That didn't go well. (Requested by kling on #webkit).

Reverted changeset:

https://bugs.webkit.org/show_bug.cgi?id=130140
http://trac.webkit.org/changeset/165481

Patch by Commit Queue <commit-queue@webkit.org> on 2014-03-12

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165492 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSpelling is hard
simon.fraser@apple.com [Wed, 12 Mar 2014 18:52:25 +0000 (18:52 +0000)]
Spelling is hard
https://bugs.webkit.org/show_bug.cgi?id=130146

Source/WebCore:

Reviewed by Beth Dakin.

Fix spelling (constained -> constrained).

* rendering/RenderLayerModelObject.cpp:
(WebCore::RenderLayerModelObject::styleDidChange):

Source/WebKit/ios:

Reviewed by Beth Dakin.

Fix spelling (constained -> constrained).

* WebCoreSupport/WebFixedPositionContent.mm:
(-[WebFixedPositionContent scrollOrZoomChanged:]):
(-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
(-[WebFixedPositionContent setViewportConstrainedLayers:WTF::WebCore::stickyContainerMap:WTF::]):
(-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):
(-[WebFixedPositionContent minimumOffsetFromFixedPositionLayersToAnchorEdge:ofRect:inLayer:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165491 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove HandleSet::m_nextToFinalize
mhahnenberg@apple.com [Wed, 12 Mar 2014 18:29:00 +0000 (18:29 +0000)]
Remove HandleSet::m_nextToFinalize
https://bugs.webkit.org/show_bug.cgi?id=130109

Reviewed by Mark Lam.

This is a remnant of when HandleSet contained things that needed to be finalized.

* heap/HandleSet.cpp:
(JSC::HandleSet::HandleSet):
(JSC::HandleSet::writeBarrier):
* heap/HandleSet.h:
(JSC::HandleSet::allocate):
(JSC::HandleSet::deallocate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165490 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Runtime error when page is closed while print operation is in progress
carlosgc@webkit.org [Wed, 12 Mar 2014 18:26:33 +0000 (18:26 +0000)]
[GTK] Runtime error when page is closed while print operation is in progress
https://bugs.webkit.org/show_bug.cgi?id=129869

Reviewed by Anders Carlsson.

Sometimes when the page is closed right after printing the web
process aborts with the runtime message "pure virtual method
called terminate called without an active exception".
This happens because the page is closed when the pages have been
printed, but print job is still ongoing sending the data to the
printer. When print job finishes, we try to notify the UI process
sending the print callback message using WebPage::send(), but the
web page object has been destroyed. The virtual method it complains
about is probably MessageSender::messageSenderDestinationID() used
by send(). Since our print operation is always asynchronous, we
need a way to notify the web page when the print operation has
actually finished to clean it up, but also notify the print
operation when the page has been closed to not try to notify the
UI process in that case.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close): Call disconnectFromPage to notify the
print operation in case there's an ongoing print job.
(WebKit::WebPage::endPrinting): Do not cleanup the print operation
here, since the print opertation might not have finished yet.
(WebKit::WebPage::didFinishPrintOperation): Send
PrintFinishedCallback message to the Ui process and cleanup the
print operation.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
(WebKit::WebPrintOperationGtk::disconnectFromPage): Set m_webPage
to nullptr.
(WebKit::WebPrintOperationGtk::printDone): Call
didFinishPrintOperation() is the web page hasn't been closed.
* WebProcess/WebPage/gtk/WebPrintOperationGtk.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165489 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK][CMAKE] Remove compile warnings about GTK+ deprecated API
carlosgc@webkit.org [Wed, 12 Mar 2014 18:24:05 +0000 (18:24 +0000)]
[GTK][CMAKE] Remove compile warnings about GTK+ deprecated API
https://bugs.webkit.org/show_bug.cgi?id=130014

Reviewed by Martin Robinson.

.:

Set GDK_VERSION_MIN_REQUIRED to GDK_VERSION_3_6.

* Source/cmake/OptionsGTK.cmake:
* Source/cmakeconfig.h.cmake:

Tools:

Include cmake or autotools config header.

* MiniBrowser/gtk/BrowserDownloadsBar.c:
* MiniBrowser/gtk/BrowserSearchBar.c:
* MiniBrowser/gtk/BrowserWindow.c:
* MiniBrowser/gtk/main.c:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165488 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: DataGrid should have an API to set sort column and direction
bburg@apple.com [Wed, 12 Mar 2014 18:18:29 +0000 (18:18 +0000)]
Web Inspector: DataGrid should have an API to set sort column and direction
https://bugs.webkit.org/show_bug.cgi?id=128783

Reviewed by Timothy Hatcher.

Previously there was no way for DataGrid clients to programmatically change
the sort order or sort column identifier after the data grid was constructed.
This patch modernizes DataGrid sorting by exposing getters and setters for
sortOrder and sortColumnIdentifier, which trigger the SortChanged event if
the sort settings have changed.

This patch also modernizes sorting functionality in DataGrid clients, and in
a few clients it moves column identifiers from numbers to string identifiers.

* UserInterface/Main.html:
* UserInterface/Views/ApplicationCacheFrameContentView.js: Use string column identifiers
instead of numbers. Don't repopulate the entire table when the sort changes, instead
call DataGrid.sortNodes from the sorting callback. Explicitly set the sort order.

(WebInspector.ApplicationCacheFrameContentView.prototype._createDataGrid):
(WebInspector.ApplicationCacheFrameContentView.prototype._sortDataGrid):
(WebInspector.ApplicationCacheFrameContentView.prototype._sortDataGrid.localeCompare):
(WebInspector.ApplicationCacheFrameContentView.prototype._populateDataGrid):

* UserInterface/Views/CookieStorageContentView.js: Use string column identifiers instead
of numbers. Don't sort the cookies themselves, just the data grid nodes representing
each cookie. Use DataGrid.sortNodes as the sorting implementation, and provide a
comparator. Don't rebuild the entire table when the sort changes.

(WebInspector.CookieStorageContentView.prototype._rebuildTable):
(WebInspector.CookieStorageContentView.prototype._sortDataGrid):
(WebInspector.CookieStorageContentView.prototype._sortDataGrid.numberCompare):
(WebInspector.CookieStorageContentView.prototype._sortDataGrid.expiresCompare):

* UserInterface/Views/DataGrid.js: Add the DataGrid.SortOrder enum. Put sortOrder
and sortColumnIdentifier behind getters and setters. Pull some hardcoded style
class names into constants. Remove the "sort" field on column config objects; instead
should use the DataGrid.sortColumnIdentifier setter after construction.

(WebInspector.DataGrid): Keep sort settings in private variables.
(WebInspector.DataGrid.prototype.get sortOrder): Reimplemented.
(WebInspector.DataGrid.prototype.get sortColumnIdentifier): Reimplemented.
(WebInspector.DataGrid.prototype.moveToNextCell):
(WebInspector.DataGrid.prototype._editingCommitted):
(WebInspector.DataGrid.prototype.sortNodes): Use requestAnimationFrame to
coalesce multiple sort requests within the same draw frame.
(WebInspector.DataGrid.prototype._sortNodesCallback):
(WebInspector.DataGrid.prototype._headerCellClicked): Use the new sort API.
* UserInterface/Views/LayerTreeDataGrid.js: Removed. Unnecessary for performance
now that sort requests are coalesced by requestAnimationFrame.

* UserInterface/Views/LayerTreeSidebarPanel.js: Use DataGrid instead of LayerTreeDataGrid.
Hook up the _sortDataGrid method to the built-in DataGrid.sortNodes API.

(WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection):
(WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid.comparator):
(WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid):
* UserInterface/Views/LayoutTimelineView.js:
* UserInterface/Views/LegacyJavaScriptProfileView.js:
(WebInspector.LegacyJavaScriptProfileView.prototype._sortProfile):
* UserInterface/Views/NetworkTimelineView.js:
* UserInterface/Views/ResourceDetailsSidebarPanel.js: Use the DataGrid.sortNodes API.
(WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid.sortDataGrid.comparator):
(WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid.sortDataGrid):
(WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid):
* UserInterface/Views/ScriptTimelineView.js:
* UserInterface/Views/TimelineDataGrid.js:
(WebInspector.TimelineDataGrid.prototype._sortComparator):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165487 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLayout Test fast/workers/worker-gc.html is failing
mhahnenberg@apple.com [Wed, 12 Mar 2014 18:17:43 +0000 (18:17 +0000)]
Layout Test fast/workers/worker-gc.html is failing
https://bugs.webkit.org/show_bug.cgi?id=130135

Reviewed by Geoffrey Garen.

When removing MarkedBlocks, we always expect them to be in the MarkedAllocator's
main list of blocks, i.e. not in the retired list. When shutting down the VM this
wasn't always the case which was causing ASSERTs to fire. We should rearrange things
so that allocators are notified with lastChanceToFinalize. This will give them
the chance to move their retired blocks back into the main list before removing them all.

* heap/MarkedAllocator.cpp:
(JSC::LastChanceToFinalize::operator()):
(JSC::MarkedAllocator::lastChanceToFinalize):
* heap/MarkedAllocator.h:
* heap/MarkedSpace.cpp:
(JSC::LastChanceToFinalize::operator()):
(JSC::MarkedSpace::lastChanceToFinalize):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165486 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r165471.
mrobinson@webkit.org [Wed, 12 Mar 2014 18:16:49 +0000 (18:16 +0000)]
Unreviewed, rolling out r165471.
https://bugs.webkit.org/show_bug.cgi?id=130139

Didn't really fix the issue and broke another bot (Requested
by mrobinson on #webkit).

Reverted changeset:

"[CMake] Newer versions of CMake cannot find older versions of
Freetype"
https://bugs.webkit.org/show_bug.cgi?id=130107
http://trac.webkit.org/changeset/165471

Patch by Commit Queue <commit-queue@webkit.org> on 2014-03-12

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165485 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoChange scrollOffsetForFixedPosition() to do LayoutUnit math
simon.fraser@apple.com [Wed, 12 Mar 2014 18:15:06 +0000 (18:15 +0000)]
Change scrollOffsetForFixedPosition() to do LayoutUnit math
https://bugs.webkit.org/show_bug.cgi?id=129981

Reviewed by Beth Dakin.

Source/WebCore:

FrameView::scrollOffsetForFixedPosition() returned an IntSize,
but to allow subpixel scroll offsets, we need it to return a LayoutSize.

Fix code that calls this to use more LayoutUnit math.

This progresses fixed background images on zoom, which cam now be subpixel
positioned.

* WebCore.exp.in:
* page/FrameView.cpp:
(WebCore::FrameView::viewportConstrainedVisibleContentRect):
(WebCore::FrameView::scrollOffsetForFixedPosition):
* page/FrameView.h:
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::constrainScrollPositionForOverhang):
* platform/ScrollableArea.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollLayerPosition):

LayoutTests:

FrameView::scrollOffsetForFixedPosition() returned an IntSize,
but to allow subpixel scroll offsets, we need it to return a LayoutSize.

Update test results for the progression.

* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.png:
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165484 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoReduce memory use for static property maps
barraclough@apple.com [Wed, 12 Mar 2014 18:08:35 +0000 (18:08 +0000)]
Reduce memory use for static property maps
https://bugs.webkit.org/show_bug.cgi?id=129986

Reviewed by Andreas Kling.

Static property tables are currently duplicated on first use from read-only memory into dirty memory
in every process, and since the entries are large (48 bytes) and the tables can be unusually sparse
(we use a custom hash table without a rehash) a lot of memory may be wasted.

Source/JavaScriptCore:

First, reduce the size of the hashtable. Instead of storing values in the table the hashtable maps
from string hashes to indicies into a densely packed array of values. Compute the index table at
compile time as a part of the derived sources step, such that this may be read-only data.

Second, don't copy all data from the HashTableValue array into a HashEntry objects. Instead refer
directly to the HashTableValue entries. The only data that needs to be allocated at runtime are the
keys, which are Identifiers.

* create_hash_table:
    - emit the hash table index into the derived source (we were calculating this already to ensure chaining does not get too deep).
* parser/Lexer.cpp:
(JSC::Lexer<LChar>::parseIdentifier):
(JSC::Lexer<UChar>::parseIdentifier):
(JSC::Lexer<T>::parseIdentifierSlowCase):
    - HashEntry -> HashTableValue.
* parser/Lexer.h:
(JSC::Keywords::getKeyword):
    - HashEntry -> HashTableValue.
* runtime/ClassInfo.h:
    - removed HashEntry.
* runtime/JSObject.cpp:
(JSC::getClassPropertyNames):
    - use HashTable::ConstIterator.
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::findPropertyHashEntry):
    - HashEntry -> HashTableValue.
(JSC::JSObject::reifyStaticFunctionsForDelete):
    - changed HashTable::ConstIterator interface.
* runtime/JSObject.h:
    - HashEntry -> HashTableValue.
* runtime/Lookup.cpp:
(JSC::HashTable::createTable):
    - table -> keys, keys array is now densely packed.
(JSC::HashTable::deleteTable):
    - table -> keys.
(JSC::setUpStaticFunctionSlot):
    - HashEntry -> HashTableValue.
* runtime/Lookup.h:
(JSC::HashTableValue::builtinGenerator):
(JSC::HashTableValue::function):
(JSC::HashTableValue::functionLength):
(JSC::HashTableValue::propertyGetter):
(JSC::HashTableValue::propertyPutter):
(JSC::HashTableValue::lexerValue):
    - added accessor methods from HashEntry.
(JSC::HashTable::copy):
    - fields changed.
(JSC::HashTable::initializeIfNeeded):
    - table -> keys.
(JSC::HashTable::entry):
    - HashEntry -> HashTableValue.
(JSC::HashTable::ConstIterator::ConstIterator):
    - iterate packed value array, so no need to skipInvalidKeys().
(JSC::HashTable::ConstIterator::value):
(JSC::HashTable::ConstIterator::key):
(JSC::HashTable::ConstIterator::operator->):
    - accessors now get HashTableValue/StringImpl* separately.
(JSC::HashTable::ConstIterator::operator++):
    - iterate packed value array, so no need to skipInvalidKeys().
(JSC::HashTable::end):
    - end is now size of dense not sparse array.
(JSC::getStaticPropertySlot):
(JSC::getStaticFunctionSlot):
(JSC::getStaticValueSlot):
(JSC::putEntry):
(JSC::lookupPut):
    - HashEntry -> HashTableValue.

Source/WebCore:

* bindings/js/JSDOMBinding.h:
(WebCore::getStaticValueSlotEntryWithoutCaching):
(WebCore::getStaticValueSlotEntryWithoutCaching<JSDOMWrapper>):
    - HashEntry -> HashTableValue.
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
    - HashEntry -> HashTableValue.
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::getOwnPropertySlotDelegate):
    - HashEntry -> HashTableValue.
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::putDelegate):
    - HashEntry -> HashTableValue.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
    - HashEntry -> HashTableValue.
(GenerateHashTable):
    - emit the hash table index into the derived source (we were calculating this already to ensure chaining does not get too deep).

LayoutTests:

* inspector-protocol/debugger/setPauseOnExceptions-all-expected.txt:
* inspector-protocol/debugger/setPauseOnExceptions-none-expected.txt:
* inspector-protocol/debugger/setPauseOnExceptions-uncaught-expected.txt:
* js/dom/dom-static-property-for-in-iteration-expected.txt:
    - Properties now iterated in correct order, not permuted by hash table.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165482 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBundlePageDiagnosticLoggingClient leaks every string passing through it.
akling@apple.com [Wed, 12 Mar 2014 18:00:17 +0000 (18:00 +0000)]
BundlePageDiagnosticLoggingClient leaks every string passing through it.
<https://webkit.org/b/130140>
<rdar://problem/15416838>

Use toAPI() instead of toCopiedAPI() so the receiving end doesn't need
to worry about adopting the WKStringRef.

Reviewed by Anders Carlsson.

* WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
(WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165481 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoIt should be possible to build WebKit with FTL on iOS
fpizlo@apple.com [Wed, 12 Mar 2014 17:55:34 +0000 (17:55 +0000)]
It should be possible to build WebKit with FTL on iOS
https://bugs.webkit.org/show_bug.cgi?id=130116

Reviewed by Dan Bernstein.

Source/JavaScriptCore:

* Configurations/Base.xcconfig:

Tools:

* Scripts/build-webkit:
* Scripts/copy-webkitlibraries-to-product-directory:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165480 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoHook up image controls for WebKit1
timothy_horton@apple.com [Wed, 12 Mar 2014 17:51:54 +0000 (17:51 +0000)]
Hook up image controls for WebKit1
https://bugs.webkit.org/show_bug.cgi?id=130062
<rdar://problem/15964809>

Reviewed by Brady Eidson.

WebCore/

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSPrimitiveValueMappings.h:
Fix some header ordering.

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
Handle mapping ImageControlsButtonPart to the -webkit-appearance value CSSValueImageControlsButton.

* css/CSSValueKeywords.in:
* platform/ThemeTypes.h:
Add a -webkit-appearance value image-controls-button, and an associated control part.

* dom/Node.h:
(WebCore::Node::isImageControlsButtonElement): Added.

* html/shadow/mac/ImageControlsButtonElementMac.cpp: Added.
(WebCore::RenderImageControlsButton::RenderImageControlsButton):
(WebCore::RenderImageControlsButton::~RenderImageControlsButton):
(WebCore::RenderImageControlsButton::updateLogicalWidth):
(WebCore::RenderImageControlsButton::computeLogicalHeight):
(WebCore::ImageControlsButtonElementMac::ImageControlsButtonElementMac):
(WebCore::ImageControlsButtonElementMac::~ImageControlsButtonElementMac):
(WebCore::ImageControlsButtonElementMac::maybeCreate):
(WebCore::ImageControlsButtonElementMac::defaultEventHandler):
(WebCore::ImageControlsButtonElementMac::createElementRenderer):
* html/shadow/mac/ImageControlsButtonElementMac.h: Added.
Add a new element/renderer pair for the single button that comprises image controls on Mac.
RenderImageControlsButton gets its size from the theme's imageControlsButtonSize.

* html/shadow/mac/ImageControlsRootElementMac.cpp:
(WebCore::RenderImageControls::RenderImageControls):
(WebCore::RenderImageControls::~RenderImageControls):
(WebCore::RenderImageControls::updateLogicalWidth):
(WebCore::RenderImageControls::computeLogicalHeight):
(WebCore::ImageControlsRootElement::maybeCreate):
(WebCore::ImageControlsRootElementMac::ImageControlsRootElementMac):
(WebCore::ImageControlsRootElementMac::~ImageControlsRootElementMac):
(WebCore::ImageControlsRootElementMac::createElementRenderer):
* html/shadow/mac/ImageControlsRootElementMac.h:
Add a custom renderer for the root image controls element on Mac, which inherits
its size from the <img> that it is shadowing.
Add a ImageControlsButtonElementMac as the sole child of the root element.

* html/shadow/mac/imageControlsMac.css:
(.x-webkit-image-controls):
(.x-webkit-image-controls-button):
(.x-webkit-image-controls:hover .x-webkit-image-controls-button):
The button should become opaque whenever *any* part of the image is hovered,
not just the button itself. Also, use the new image-controls-button -webkit-appearance
value to get the appropriate appearance from the theme.

* page/ContextMenuContext.cpp:
(WebCore::ContextMenuContext::ContextMenuContext):
* page/ContextMenuContext.h:
(WebCore::ContextMenuContext::setControlledImage):
(WebCore::ContextMenuContext::controlledImage):
Store an image on the ContextMenuContext instead of just whether we hit an image.

* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::handleContextMenuEvent):
(WebCore::ContextMenuController::showContextMenu):
(WebCore::imageFromImageElementNode):
(WebCore::ContextMenuController::maybeCreateContextMenu):
(WebCore::ContextMenuController::populate):
Keep track of the hit image in the ContextMenuContext.

(WebCore::ContextMenuController::replaceControlledImage):
Replace the hit image with a new one.

* page/ContextMenuController.h:

* rendering/RenderReplaced.h:
Fix a double-space typo.

* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle):
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::paintBorderOnly):
(WebCore::RenderTheme::paintDecorations):
Handle ImageControlsButtonPart in RenderTheme's switches.

* rendering/RenderTheme.h:
(WebCore::RenderTheme::imageControlsButtonSize):
(WebCore::RenderTheme::paintImageControlsButton):
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::servicesRolloverButtonCell):
(WebCore::RenderThemeMac::paintImageControlsButton):
(WebCore::RenderThemeMac::imageControlsButtonSize):
Paint the image controls button.

* editing/ios/EditorIOS.mm:
(WebCore::Editor::WebContentReader::readImage):
(WebCore::Editor::WebContentReader::readURL):
* editing/mac/EditorMac.mm:
(WebCore::Editor::WebContentReader::readImage):
* platform/URL.cpp:
(WebCore::URL::fakeURLWithRelativePart):
* platform/URL.h:
Factor out code to create a "fake" URL (with a UUID "hostname" and the
webkit-fake-url protocol), and make use of it where we construct such URLs.

WebKit/

* WebKit.xcodeproj/project.pbxproj:
Add WebSharingServicePickerController.

WebKit/mac/

* Misc/WebSharingServicePickerController.h: Added.
* Misc/WebSharingServicePickerController.mm: Added.
(-[WebSharingServicePickerController initWithImage:menuClient:]):
(-[WebSharingServicePickerController menu]):
(-[WebSharingServicePickerController sharingServicePicker:delegateForSharingService:]):
(-[WebSharingServicePickerController sharingServicePicker:didChooseSharingService:]):
(-[WebSharingServicePickerController sharingService:didShareItems:]):
(-[WebSharingServicePickerController sharingService:didFailToShareItems:error:]):
(-[WebSharingServicePickerController sharingService:sourceWindowForShareItems:sharingContentScope:]):
Add a NSSharingServiceDelegate and NSSharingServicePickerDelegate, which will also
provide a NSMenu instance for WebContextMenuClient to pop up when image controls are needed.
When data is returned from the service, it is re-inserted into the image via replaceControlledImage.

* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::contextMenuForEvent):
Factor out code to decide which NSMenu to use, so that we can use early-returns to simplify it.
If we hit an image with image controls, use the WebSharingServicePickerController's menu.

(WebContextMenuClient::showContextMenu):
(WebContextMenuClient::clearSharingServicePickerController):

WebKit2/

* Shared/ContextMenuContextData.cpp:
(WebKit::ContextMenuContextData::ContextMenuContextData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165479 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Mac] Crash when running media/fallback.html test in MediaPlayerPrivateAVFoundation...
jer.noble@apple.com [Wed, 12 Mar 2014 17:44:27 +0000 (17:44 +0000)]
[Mac] Crash when running media/fallback.html test in MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification()
https://bugs.webkit.org/show_bug.cgi?id=130136

Reviewed by Eric Carlson.

MediaPlayerPrivateAVFoundation is trying to lock its m_queueMutex from an async thread after
while being destroyed in the main thread. To resolve this race condition, redispatch from
the async thread to the main thread, and use a WeakPtr to determine whether the object has
been destroyed or not.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::checkPlayability):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165478 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION (r165356): [Mac] Multi-part key bindings don't work
ap@apple.com [Wed, 12 Mar 2014 17:19:33 +0000 (17:19 +0000)]
REGRESSION (r165356): [Mac] Multi-part key bindings don't work
https://bugs.webkit.org/show_bug.cgi?id=130100

Reviewed by Darin Adler.

Restore the previous behavior, where we only interpreted keydowns (including those
coming through performKeyEquivalent).

In the future, we might send all events to input methods, but not to key bindings.

* UIProcess/API/mac/WKView.mm:
(-[WKView keyUp:]):
(-[WKView flagsChanged:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165477 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Win] Remove use of QTSDK
bfulgham@apple.com [Wed, 12 Mar 2014 17:02:06 +0000 (17:02 +0000)]
[Win] Remove use of QTSDK
https://bugs.webkit.org/show_bug.cgi?id=130049

Reviewed by Darin Adler.

Source/WebCore:

Media testing already covers this functionality.

* WebCore.vcxproj/WebCore.vcxproj: Remove QuickTime files.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* platform/graphics/MediaPlayer.h: Remove QuickTime and Chromium
media references.
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Removed.
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: Removed.
* platform/graphics/win/QTCFDictionary.cpp: Removed.
* platform/graphics/win/QTCFDictionary.h: Removed.
* platform/graphics/win/QTDecompressionSession.cpp: Removed.
* platform/graphics/win/QTDecompressionSession.h: Removed.
* platform/graphics/win/QTMovie.cpp: Removed.
* platform/graphics/win/QTMovie.h: Removed.
* platform/graphics/win/QTMovieGWorld.cpp: Removed.
* platform/graphics/win/QTMovieGWorld.h: Removed.
* platform/graphics/win/QTMovieTask.cpp: Removed.
* platform/graphics/win/QTMovieTask.h: Removed.
* platform/graphics/win/QTMovieVisualContext.cpp: Removed.
* platform/graphics/win/QTMovieVisualContext.h: Removed.
* platform/graphics/win/QTMovieWinTimer.cpp: Removed.
* platform/graphics/win/QTMovieWinTimer.h: Removed.
* platform/graphics/win/QTPixelBuffer.cpp: Removed.
* platform/graphics/win/QTPixelBuffer.h: Removed.
* platform/graphics/win/QTTrack.cpp: Removed.
* platform/graphics/win/QTTrack.h: Removed.
* plugins/win/PluginDatabaseWin.cpp:
(WebCore::PluginDatabase::defaultPluginDirectories): Don't look
for the QuickTime plugin anymore.

Tools:

* DumpRenderTree/win/DumpRenderTree.cpp:
(initialize): Remove QuickTime code.
* win/AssembleBuildLogs/AssembleLogs.cmd: Don't grab logs from
building QTMovieWin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165476 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Update references for mo-stretch.html.
fred.wang@free.fr [Wed, 12 Mar 2014 16:46:49 +0000 (16:46 +0000)]
[GTK] Update references for mo-stretch.html.
https://bugs.webkit.org/show_bug.cgi?id=129366.

Reviewed by Chris Fleizach.

The rendering of mo-stretch has changed after the recent improvements
to the <mo> element. This updates the reference for the GTK port.

* platform/gtk/mathml/presentation/mo-stretch-expected.png:
* platform/gtk/mathml/presentation/mo-stretch-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165475 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix build after r165472
ddkilzer@apple.com [Wed, 12 Mar 2014 16:28:56 +0000 (16:28 +0000)]
Fix build after r165472

Fixes the following build failure:

    WebCore/rendering/shapes/Shape.cpp:97:20: error: unused function 'ensureRadiiDoNotOverlap' [-Werror,-Wunused-function]
    static inline void ensureRadiiDoNotOverlap(FloatRect& bounds, FloatSize& radii)
                       ^
    1 error generated.

* rendering/shapes/Shape.cpp:
(ensureRadiiDoNotOverlap): Remove unused function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165474 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK][CMAKE] Too verbose build output
mrobinson@webkit.org [Wed, 12 Mar 2014 15:48:13 +0000 (15:48 +0000)]
[GTK][CMAKE] Too verbose build output
https://bugs.webkit.org/show_bug.cgi?id=130076

Reviewed by Carlos Garcia Campos.

.:

* Source/cmake/OptionsGTK.cmake: Generate a script which does the actual build. This
works around an issue where cmake --build doesn't support ninja's pretty printing.

Tools:

Instead of building with cmake --build which isn't smart about pretty printing and
colors, we build with a script which calls the proper build command.

* Scripts/webkitdirs.pm:
(buildCMakeGeneratedProject): For GTK+ call the script that we generate during
the CMake configuration pass.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165473 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] Remove deprecated shapes
bjonesbe@adobe.com [Wed, 12 Mar 2014 15:41:55 +0000 (15:41 +0000)]
[CSS Shapes] Remove deprecated shapes
https://bugs.webkit.org/show_bug.cgi?id=125235

Reviewed by Dirk Schulze.

Source/WebCore:

Remove support for deprecated shape types and syntax. These have
already been removed from the CSS Shapes specification, so this aligns
the implementation with the specification.

The "new" tests below were simply moved from the old csswg directory,
as they were the only tests there that applied to the current syntax.

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-polygon-000.html
       fast/shapes/shape-outside-floats/shape-outside-floats-polygon-001.html
       fast/shapes/shape-outside-floats/shape-outside-floats-polygon-002.html

* css/BasicShapeFunctions.cpp:
(WebCore::valueForBasicShape):
(WebCore::basicShapeForValue):
* css/BasicShapeFunctions.h:
* css/CSSBasicShapes.cpp:
* css/CSSBasicShapes.h:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseBasicShape):
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape):
* rendering/shapes/ShapeInsideInfo.cpp:
(WebCore::ShapeInsideInfo::isEnabledFor):
* rendering/style/BasicShapes.cpp:
* rendering/style/BasicShapes.h:

LayoutTests:

Remove tests for deprecated shape syntax.

There are also a few shape-inside tests that have been removed because
they were very difficult to make work without the rectangle shape, and
the future of the current shape-inside implementation is questionable
at best.

* animations/resources/animation-test-helpers.js:
(parseBasicShape):
* compositing/contents-opaque/opaque-with-clip-path-expected.html:
* compositing/contents-opaque/opaque-with-clip-path.html:
* css3/masking/clip-path-animation-expected.txt:
* css3/masking/clip-path-animation.html:
* css3/masking/clip-path-rectangle-expected.txt: Removed.
* css3/masking/clip-path-rectangle.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/resources/rounded-rectangle.js: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/resources/subpixel-utils.js: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/resources/w3c-import.log: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-001-ref-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-001-ref.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-003-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-003.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-004-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-004.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-005-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-005.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-006-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-006.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-003-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-003.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-004-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-004.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-003-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-003.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-004-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-004.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-005-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-005.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-006-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-006.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-007-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-007.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-008-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-008.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-009-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-009.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-010-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-010.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-011-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-011.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-012-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-012.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-013-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-013.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-014-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-014.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-015-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-015.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-016-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-016.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-017-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-017.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-018-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-018.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-019-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-019.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-020-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-020.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-021-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-margin-021.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-003-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-003.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-004-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-004.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-005-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-005.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-006-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-006.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-007-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-007.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-008-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-008.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-009-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-padding-009.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-square-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-square-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-square-border-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-square-border-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-stacked-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-stacked-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-000-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-000.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-001-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-001.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-002-expected.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-002.html: Removed.
* csswg/contributors/adobe/submitted/shapes/shape-outside/w3c-import.log: Removed.
* fast/masking/parsing-clip-path-shape-expected.txt:
* fast/masking/parsing-clip-path-shape.html:
* fast/regions/shape-inside/shape-inside-on-additional-regions.html:
* fast/regions/shape-inside/shape-inside-on-first-region-block-content.html:
* fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html:
* fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html:
* fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top-expected.html: Removed.
* fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html: Removed.
* fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset.html:
* fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html:
* fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html:
* fast/regions/shape-inside/shape-inside-on-regions-expected.html:
* fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset.html:
* fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html:
* fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html:
* fast/regions/shape-inside/shape-inside-on-regions-inline-content.html:
* fast/regions/shape-inside/shape-inside-on-regions.html:
* fast/regions/shape-inside/shape-inside-on-second-region-block-content.html:
* fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html:
* fast/regions/shape-inside/shape-inside-recursive-layout-expected.html:
* fast/regions/shape-inside/shape-inside-recursive-layout.html:
* fast/regions/shape-inside/shape-inside-with-region-borders.html:
* fast/regions/shape-inside/shape-inside-with-region-padding.html:
* fast/shapes/css-shapes-disabled-expected.txt:
* fast/shapes/css-shapes-disabled.html:
* fast/shapes/css-shapes-enabled-expected.txt:
* fast/shapes/css-shapes-enabled.html:
* fast/shapes/parsing/parsing-shape-inside-expected.txt:
* fast/shapes/parsing/parsing-shape-inside.html:
* fast/shapes/parsing/parsing-shape-lengths-expected.txt:
* fast/shapes/parsing/parsing-shape-lengths.html:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-shape-outside.html:
* fast/shapes/parsing/parsing-test-utils.js:
* fast/shapes/resources/simple-rectangle.js:
(drawTextRectangle):
* fast/shapes/shape-inside/shape-inside-animation-expected.txt:
* fast/shapes/shape-inside/shape-inside-animation.html:
* fast/shapes/shape-inside/shape-inside-bottom-edge-expected.html:
* fast/shapes/shape-inside/shape-inside-bottom-edge.html:
* fast/shapes/shape-inside/shape-inside-box-sizing.html:
* fast/shapes/shape-inside/shape-inside-dynamic-nested-expected.html:
* fast/shapes/shape-inside/shape-inside-dynamic-nested.html:
* fast/shapes/shape-inside/shape-inside-dynamic-shape.html:
* fast/shapes/shape-inside/shape-inside-dynamic-text.html:
* fast/shapes/shape-inside/shape-inside-empty-expected.html:
* fast/shapes/shape-inside/shape-inside-empty.html:
* fast/shapes/shape-inside/shape-inside-inline-elements-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-inline-elements.html: Removed.
* fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical.html:
* fast/shapes/shape-inside/shape-inside-multiple-blocks.html:
* fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html:
* fast/shapes/shape-inside/shape-inside-outside-shape.html:
* fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html:
* fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html:
* fast/shapes/shape-inside/shape-inside-overflow.html:
* fast/shapes/shape-inside/shape-inside-percentage-auto.html:
* fast/shapes/shape-inside/shape-inside-percentage.html:
* fast/shapes/shape-inside/shape-inside-rectangle-padding-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rectangle-padding.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-001-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-001.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-002-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-002.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-003-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-003.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-004-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-004.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-001-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-001.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-002-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-002.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-003-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-fit-003.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-large-radius-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-large-radius.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-padding-expected.html: Removed.
* fast/shapes/shape-inside/shape-inside-rounded-rectangle-padding.html: Removed.
* fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html:
* fast/shapes/shape-inside/shape-inside-text.html:
* fast/shapes/shape-inside/shape-inside-vertical-text.html:
* fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
* fast/shapes/shape-outside-floats/shape-outside-animation.html:
* fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-margin.html:
* fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-overhang.html:
* fast/shapes/shape-outside-floats/shape-outside-dynamic-shape.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-different-writing-modes.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-bottom.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-rectangle-negative-width-crash-expected.txt: Removed.
* fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-rectangle-negative-width-crash.html: Removed.
* fast/shapes/shape-outside-floats/shape-outside-floats-layout-after-initial-layout-pass.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-outermost.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-000-expected.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-000-expected.html.
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-000.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-000.html.
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-001-expected.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-001-expected.html.
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-001.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-001.html.
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-002-expected.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-002-expected.html.
* fast/shapes/shape-outside-floats/shape-outside-floats-polygon-002.html: Renamed from LayoutTests/csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-polygon-002.html.
* fast/shapes/shape-outside-floats/shape-outside-shape-margin-animation.html:
* svg/clip-path/clip-path-shape-rounded-rect-1-expected.svg: Removed.
* svg/clip-path/clip-path-shape-rounded-rect-1.svg: Removed.
* svg/clip-path/clip-path-shape-rounded-rect-2-expected.svg: Removed.
* svg/clip-path/clip-path-shape-rounded-rect-2.svg: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165472 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CMake] Newer versions of CMake cannot find older versions of Freetype
mrobinson@webkit.org [Wed, 12 Mar 2014 15:41:13 +0000 (15:41 +0000)]
[CMake] Newer versions of CMake cannot find older versions of Freetype
https://bugs.webkit.org/show_bug.cgi?id=130107

Reviewed by Gustavo Noronha Silva.

* gtk/jhbuildrc: Work around a bug in newer CMakes by giving the FREETYPE_DIR hint
to CMake during jhbuild initialization.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165471 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd hiDPI support for compositing content in DumpRenderTree/WebKitTestRunner
zalan@apple.com [Wed, 12 Mar 2014 15:34:47 +0000 (15:34 +0000)]
Add hiDPI support for compositing content in DumpRenderTree/WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=129961

Reviewed by Simon Fraser.

Now scaled content can go through the window capturing mechanism too for compositing content.
AppleMagnifiedMode is redundant.

Tools:

* DumpRenderTree/mac/DumpRenderTree.mm:
(setDefaultsToConsistentValuesForTesting):
(runTest):
* DumpRenderTree/mac/PixelDumpSupportMac.mm:
(createBitmapContextFromWebView):
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/cg/TestInvocationCG.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::didInitializeClients):
(WTR::PlatformWebView::changeWindowScaleIfNeeded):
(WTR::PlatformWebView::forceWindowFramesChanged):
* WebKitTestRunner/mac/main.mm:
(setDefaultsToConsistentValuesForTesting):

LayoutTests:

* compositing/hidpi-compositing-vs-non-compositing-check-on-testing-framework-expected.html: Added.
* compositing/hidpi-compositing-vs-non-compositing-check-on-testing-framework.html: Added.
* svg/custom/hidpi-masking-clipping-expected.svg: Added.
* svg/custom/hidpi-masking-clipping.svg: Renamed from LayoutTests/svg/custom/masking-clipping-hidpi.svg.
* svg/custom/masking-clipping-hidpi-expected.svg: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165470 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed. Add myself as a committer.
a.obzhirov@samsung.com [Wed, 12 Mar 2014 14:42:42 +0000 (14:42 +0000)]
Unreviewed. Add myself as a committer.

* Scripts/webkitpy/common/config/contributors.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165469 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] [Stable] deadlock in gobject introspection
carlosgc@webkit.org [Wed, 12 Mar 2014 14:01:26 +0000 (14:01 +0000)]
[GTK] [Stable] deadlock in gobject introspection
https://bugs.webkit.org/show_bug.cgi?id=125651

Reviewed by Sergio Villar Senin.

Source/WebCore:

Make the default SoupNetworkSession a destroyable object to ensure
the wrapped SoupSession is finalized when the process finishes. This
is important because soup cancels any ongoing connection when finalized.

* platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::defaultSession): Do not use NeverDestroyed.
* platform/network/soup/SoupNetworkSession.h:

Source/WebKit/gtk:

* webkit/webkitglobals.cpp:
(webkitExit): Dot not try to unref the default network session, it
will be finalized automatically when the process finishes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165467 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUpdate result after https://trac.webkit.org/r165465
antti@apple.com [Wed, 12 Mar 2014 11:11:06 +0000 (11:11 +0000)]
Update result after https://trac.webkit.org/r165465

* svg/custom/use-multiple-on-nested-disallowed-font-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165466 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoDon't use NodeRenderingTraversal for pseudo elements
antti@apple.com [Wed, 12 Mar 2014 10:18:47 +0000 (10:18 +0000)]
Don't use NodeRenderingTraversal for pseudo elements
https://bugs.webkit.org/show_bug.cgi?id=130091

Reviewed by Andreas Kling.

Make traversing during style resolve more comprehensible by handling before/after pseudo elements explicitly.

With this patch NodeRenderingTraversal is only needed for InsertionPoints (which are nothing but an implementation
detail of the <details> element at this point).

* dom/Element.cpp:
(WebCore::shouldUseNodeRenderingTraversalSlowPath):

    PseudoElements don't need the slow path anymore.

(WebCore::Element::setBeforePseudoElement):
(WebCore::Element::setAfterPseudoElement):
(WebCore::Element::clearBeforePseudoElement):
(WebCore::Element::clearAfterPseudoElement):
* dom/NodeRenderingTraversal.cpp:
(WebCore::NodeRenderingTraversal::traverseParent):
(WebCore::NodeRenderingTraversal::firstChildSlow):
(WebCore::NodeRenderingTraversal::nextSiblingSlow):
(WebCore::NodeRenderingTraversal::previousSiblingSlow):
* dom/NodeRenderingTraversal.h:
(WebCore::NodeRenderingTraversal::firstChild):
* style/StyleResolveTree.cpp:
(WebCore::Style::nextSiblingRenderer):

    Add ::before/::after pseudo element handling here.

(WebCore::Style::shouldCreateRenderer):
(WebCore::Style::elementInsideRegionNeedsRenderer):
(WebCore::Style::createRendererIfNeeded):
(WebCore::Style::previousSiblingRenderer):

    Add ::before pseudo element handling here (text node can't be ::after).

(WebCore::Style::reattachTextRenderersForWhitespaceOnlySiblingsAfterAttachIfNeeded):
(WebCore::Style::textRendererIsNeeded):
(WebCore::Style::createTextRendererIfNeeded):
(WebCore::Style::attachTextRenderer):
(WebCore::Style::updateTextRendererAfterContentChange):
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):

    Handle InsertionPoints in one place.

(WebCore::Style::attachShadowRoot):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveLocal):
(WebCore::Style::updateTextStyle):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::resolveTree):

    Pass the rendering parent around to various functions instead of determining it repeatedly by calling
    NodeRenderingTraversal::parent. It is always the same for all direct children being resolved and generally just
    the parent element.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165465 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoInvisible Operators should not add space.
fred.wang@free.fr [Wed, 12 Mar 2014 09:49:59 +0000 (09:49 +0000)]
Invisible Operators should not add space.
https://bugs.webkit.org/show_bug.cgi?id=115786

Reviewed by Chris Fleizach.

Source/WebCore:

This change adds special handling for invisible operator to ensure they really behave as empty box. We now ignore their glyph widths and do not paint them.

Test: mathml/presentation/mo-invisible.html

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::paint):
* rendering/mathml/RenderMathMLOperator.h:

LayoutTests:

Add a reftest based on the examples of the MathML specification to verify that invisible operators do not add space.

* mathml/presentation/mo-invisible-expected.html: Added.
* mathml/presentation/mo-invisible.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165464 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed build fix on the EFL port when used lower version of ATK
ryuan.choi@samsung.com [Wed, 12 Mar 2014 09:44:59 +0000 (09:44 +0000)]
Unreviewed build fix on the EFL port when used lower version of ATK

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::y): Fixed typo.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165463 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoImplement MathML spacing around operators .
fred.wang@free.fr [Wed, 12 Mar 2014 06:46:52 +0000 (06:46 +0000)]
Implement MathML spacing around operators .
https://bugs.webkit.org/show_bug.cgi?id=115787

Reviewed by Chris Fleizach.

Source/WebCore:

This makes the <mo> operators use the lspace/rspace properties to
determine their spacing. The spacing is now consistent with the one
of <mfenced> and as a consequence bug 118843 is fixed. This also ensures
that the rendering of <mo> elements is updated when the form or
attributes are changed.

Tests: mathml/presentation/dir-mo.html
       mathml/presentation/mo-form-dynamic.html
       mathml/presentation/mo-form-minus-plus.html
       mathml/presentation/mo-form.html
       mathml/presentation/mo-lspace-rspace-dynamic.html
       mathml/presentation/mo-lspace-rspace.html
       mathml/presentation/mo-whitespaces.html

* css/mathml.css:
* mathml/MathMLInlineContainerElement.cpp:
(WebCore::MathMLInlineContainerElement::childrenChanged):
* mathml/MathMLInlineContainerElement.h:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::setOperatorPropertiesFromOpDictEntry):
(WebCore::RenderMathMLOperator::SetOperatorProperties):
(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::updateOperatorProperties):
(WebCore::RenderMathMLOperator::updateStyle):
* rendering/mathml/RenderMathMLOperator.h:
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::updateOperatorProperties):
* rendering/mathml/RenderMathMLRow.h:
* rendering/mathml/RenderMathMLToken.h:

LayoutTests:

Add many new tests to verify the form/lspace/rspace properties of the
<mo> element and that the whitespace of the text content is collapsed.
Update fenced-mi now that bug 118843 is fixed.

* mathml/presentation/dir-mo-expected.html: Added.
* mathml/presentation/dir-mo.html: Added.
* mathml/presentation/fenced-expected.html:
* mathml/presentation/fenced-mi-expected.html:
* mathml/presentation/mo-form-dynamic-expected.html: Added.
* mathml/presentation/mo-form-dynamic.html: Added.
* mathml/presentation/mo-form-expected.html: Added.
* mathml/presentation/mo-form-minus-plus-expected.html: Added.
* mathml/presentation/mo-form-minus-plus.html: Added.
* mathml/presentation/mo-form.html: Added.
* mathml/presentation/mo-lspace-rspace-dynamic-expected.html: Added.
* mathml/presentation/mo-lspace-rspace-dynamic.html: Added.
* mathml/presentation/mo-lspace-rspace-expected.html: Added.
* mathml/presentation/mo-lspace-rspace.html: Added.
* mathml/presentation/mo-whitespaces-expected.html: Added.
* mathml/presentation/mo-whitespaces.html: Added.
* platform/mac/mathml/presentation/mo-stretch-expected.txt: update reference.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165461 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSome images are blank in the rebaseline server UI
mmaxfield@apple.com [Wed, 12 Mar 2014 03:47:16 +0000 (03:47 +0000)]
Some images are blank in the rebaseline server UI
https://bugs.webkit.org/show_bug.cgi?id=130104

Reviewed by Tim Horton.

Let the server check for images in the 'retries' directory
if it can't find an image otherwise.

* Scripts/webkitpy/tool/servers/rebaselineserver.py:
(RebaselineHTTPRequestHandler.test_result):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165460 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGetById list caching should use something object-oriented rather than PolymorphicAcce...
fpizlo@apple.com [Wed, 12 Mar 2014 03:42:42 +0000 (03:42 +0000)]
GetById list caching should use something object-oriented rather than PolymorphicAccessStructureList
https://bugs.webkit.org/show_bug.cgi?id=129778

Reviewed by Geoffrey Garen.

Also deduplicate the GetById getter call caching. Also add some small tests for
get stubs.

This change reduces the amount of code involved in GetById access caching and it
creates data structures that can serve as an elegant scaffold for introducing other
kinds of caches or improving current caching styles. It will definitely make getter
performance improvements easier to implement.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdCacheStatus):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeForStubInfo):
* bytecode/PolymorphicGetByIdList.cpp: Added.
(JSC::GetByIdAccess::GetByIdAccess):
(JSC::GetByIdAccess::~GetByIdAccess):
(JSC::GetByIdAccess::fromStructureStubInfo):
(JSC::GetByIdAccess::visitWeak):
(JSC::PolymorphicGetByIdList::PolymorphicGetByIdList):
(JSC::PolymorphicGetByIdList::from):
(JSC::PolymorphicGetByIdList::~PolymorphicGetByIdList):
(JSC::PolymorphicGetByIdList::currentSlowPathTarget):
(JSC::PolymorphicGetByIdList::addAccess):
(JSC::PolymorphicGetByIdList::isFull):
(JSC::PolymorphicGetByIdList::isAlmostFull):
(JSC::PolymorphicGetByIdList::didSelfPatching):
(JSC::PolymorphicGetByIdList::visitWeak):
* bytecode/PolymorphicGetByIdList.h: Added.
(JSC::GetByIdAccess::GetByIdAccess):
(JSC::GetByIdAccess::isSet):
(JSC::GetByIdAccess::operator!):
(JSC::GetByIdAccess::type):
(JSC::GetByIdAccess::structure):
(JSC::GetByIdAccess::chain):
(JSC::GetByIdAccess::chainCount):
(JSC::GetByIdAccess::stubRoutine):
(JSC::GetByIdAccess::doesCalls):
(JSC::PolymorphicGetByIdList::isEmpty):
(JSC::PolymorphicGetByIdList::size):
(JSC::PolymorphicGetByIdList::at):
(JSC::PolymorphicGetByIdList::operator[]):
* bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::deref):
(JSC::StructureStubInfo::visitWeakReferences):
* bytecode/StructureStubInfo.h:
(JSC::isGetByIdAccess):
(JSC::StructureStubInfo::initGetByIdList):
* jit/Repatch.cpp:
(JSC::generateGetByIdStub):
(JSC::tryCacheGetByID):
(JSC::patchJumpToGetByIdStub):
(JSC::tryBuildGetByIDList):
(JSC::tryBuildPutByIdList):
* tests/stress/getter.js: Added.
(foo):
(.o):
* tests/stress/polymorphic-prototype-accesses.js: Added.
(Foo):
(Bar):
(foo):
* tests/stress/prototype-getter.js: Added.
(Foo):
(foo):
* tests/stress/simple-prototype-accesses.js: Added.
(Foo):
(foo):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165459 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMarkedBlocks that are "full enough" shouldn't be swept after EdenCollections
mhahnenberg@apple.com [Wed, 12 Mar 2014 01:45:54 +0000 (01:45 +0000)]
MarkedBlocks that are "full enough" shouldn't be swept after EdenCollections
https://bugs.webkit.org/show_bug.cgi?id=129920

Reviewed by Geoffrey Garen.

This patch introduces the notion of "retiring" MarkedBlocks. We retire a MarkedBlock
when the amount of free space in a MarkedBlock drops below a certain threshold.
Retired blocks are not considered for sweeping.

This is profitable because it reduces churn during sweeping. To build a free list,
we have to scan through each cell in a block. After a collection, all objects that
are live in the block will remain live until the next FullCollection, at which time
we un-retire all previously retired blocks. Thus, a small number of objects in a block
that die during each EdenCollection could cause us to do a disproportiante amount of
sweeping for how much free memory we get back.

This patch looks like a consistent ~2% progression on boyer and is neutral everywhere else.

* heap/Heap.h:
(JSC::Heap::didRetireBlockWithFreeListSize):
* heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::removeBlock):
(JSC::MarkedAllocator::reset):
* heap/MarkedAllocator.h:
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::forEachBlock):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweepHelper):
(JSC::MarkedBlock::clearMarksWithCollectionType):
(JSC::MarkedBlock::didRetireBlock):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::willRemoveBlock):
(JSC::MarkedBlock::isLive):
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::clearNewlyAllocated):
(JSC::MarkedSpace::clearMarks):
* runtime/Options.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165458 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK][CMake] --update-gtk has no effect
gns@gnome.org [Wed, 12 Mar 2014 00:19:40 +0000 (00:19 +0000)]
[GTK][CMake] --update-gtk has no effect
https://bugs.webkit.org/show_bug.cgi?id=130088

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2014-03-11
Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(buildCMakeProjectOrExit): call update-webkitgtk-libs if --update-gtk has been passed
as an argument.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165457 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGet the incomplete WebVTT Regions code to build again.
bfulgham@apple.com [Wed, 12 Mar 2014 00:19:25 +0000 (00:19 +0000)]
Get the incomplete WebVTT Regions code to build again.
https://bugs.webkit.org/show_bug.cgi?id=130094

Reviewed by Eric Carlson.

The feature is not being turned on here, so there are no new tests.

* DerivedSources.make: Add missing IDL files for Regions.
* WebCore.xcodeproj/project.pbxproj: Add Regions-related files.
* html/track/InbandWebVTTTextTrack.cpp:
(WebCore::InbandWebVTTTextTrack::newRegionsParsed): Add stub implementation.
* html/track/LoadableTextTrack.cpp: Add missing include file.
* html/track/TextTrack.cpp:
(WebCore::TextTrack::TextTrack): Correct ordering of construction
to avoid compiler warning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165456 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd "System Font" to the list of whitelisted DRT fonts
mmaxfield@apple.com [Wed, 12 Mar 2014 00:12:22 +0000 (00:12 +0000)]
Add "System Font" to the list of whitelisted DRT fonts
https://bugs.webkit.org/show_bug.cgi?id=130046

Reviewed by Darin Adler.

* DumpRenderTree/mac/DumpRenderTree.mm:
(allowedFontFamilySet):
* WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165455 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago_pageExtendedBackgroundColor should not be exposed on WKWebView
bdakin@apple.com [Tue, 11 Mar 2014 23:00:19 +0000 (23:00 +0000)]
_pageExtendedBackgroundColor should not be exposed on WKWebView
https://bugs.webkit.org/show_bug.cgi?id=130093

Reviewed by Simon Fraser.

Added comment indicating that _pageExtendedBackgroundColor is deprecated.
* UIProcess/API/Cocoa/WKViewPrivate.h:

_pageExtendedBackgroundColor now returns nil, but the conversation functionality
is maintained with a convenience method pageExtendedBackgroundColor.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView pageExtendedBackgroundColor]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _pageExtendedBackgroundColor]):

Added comment indicating that _pageExtendedBackgroundColor is deprecated.
* UIProcess/API/Cocoa/WKWebViewPrivate.h:

Return nil.
* UIProcess/API/ios/WKViewIOS.mm:
(-[WKView _pageExtendedBackgroundColor]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165454 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Win] Unreviewed gardening.
bfulgham@apple.com [Tue, 11 Mar 2014 21:51:42 +0000 (21:51 +0000)]
[Win] Unreviewed gardening.

* wtf/MathExtras.h: VS2013 provides an lrint implementation. No need to implement
our own.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165453 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] The jhbuild environment should set CMAKE_PREFIX_PATH and CMAKE_LIBRARY_PATH
mrobinson@webkit.org [Tue, 11 Mar 2014 15:09:12 +0000 (15:09 +0000)]
[GTK] The jhbuild environment should set CMAKE_PREFIX_PATH and CMAKE_LIBRARY_PATH
https://bugs.webkit.org/show_bug.cgi?id=130064

Reviewed by Philippe Normand.

* efl/jhbuildrc: Remove duplicated code.
* gtk/jhbuildrc: Remove duplicated code.
* jhbuild/jhbuildrc_common.py:
(init): Move duplicated code from jhbuildrc's and extend setting CMake environment variables to
GTK+. We always set the CMAKE_LIBRARY_PATH, which should be harmless for EFL 32-bit systems.
and is apparently necessary for GTK+.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165452 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agocheck-webkit-style failed to complain about missing braces
llango.u-szeged@partner.samsung.com [Tue, 11 Mar 2014 14:56:48 +0000 (14:56 +0000)]
check-webkit-style failed to complain about missing braces
https://bugs.webkit.org/show_bug.cgi?id=34189

Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_braces):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_braces):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165451 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove Qt cruft from style checker.
llango.u-szeged@partner.samsung.com [Tue, 11 Mar 2014 13:38:22 +0000 (13:38 +0000)]
Remove Qt cruft from style checker.
https://bugs.webkit.org/show_bug.cgi?id=130085

Reviewed by Csaba Osztrogonác.

There is no 'foreach' keyword in c++. That was a Qt feature
added in: http://trac.webkit.org/changeset/46113
Qt was removed from WebKit, so we should remove the checks
of this keyword from check-webkit-style scripts.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_spacing_for_function_call):
(check_spacing):
(check_braces):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_mismatching_spaces_in_parens):
(CppStyleTest.test_spacing_for_fncall):
(WebKitStyleTest.test_braces):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165450 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Grid Layout] Add layout test for anonymous grid items
rego@igalia.com [Tue, 11 Mar 2014 13:29:03 +0000 (13:29 +0000)]
[CSS Grid Layout] Add layout test for anonymous grid items
https://bugs.webkit.org/show_bug.cgi?id=130083

Reviewed by Sergio Villar Senin.

Add a layout test to prevent regressions supporting anonymous grid items.

For example, anonymous grid items do not have an associated Node, so trying to access it will make this test
crash.

* fast/css-grid-layout/anonymous-grid-items-expected.html: Added.
* fast/css-grid-layout/anonymous-grid-items.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165449 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] update-webkitgtk-libs needs itstool
commit-queue@webkit.org [Tue, 11 Mar 2014 11:27:54 +0000 (11:27 +0000)]
[GTK] update-webkitgtk-libs needs itstool
https://bugs.webkit.org/show_bug.cgi?id=130082

After http://trac.webkit.org/changeset/165110 WebKitGTK+ uses gtk-doc 1.20.
itstool is a dependency of building gtk-doc from version 1.19, so it should
be added to Tools/gtk/install-dependencies script, too.

Patch by Martin Hodovan <mhodovan@inf.u-szeged.hu> on 2014-03-11
Reviewed by Philippe Normand.

* gtk/install-dependencies:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165448 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agowebkitbot rollout ChangeLogs should be nicer
ossy@webkit.org [Tue, 11 Mar 2014 11:23:27 +0000 (11:23 +0000)]
webkitbot rollout ChangeLogs should be nicer
https://bugs.webkit.org/show_bug.cgi?id=122654

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-03-11
Reviewed by Csaba Osztrogonác.

Added bug urls and descriptions of rolled out patches to the rollout changelog
if they are present in the original changelog. Additionally removed the list of
changed files and functions.

* Scripts/webkitpy/common/checkout/changelog.py:
(ChangeLog.update_with_unreviewed_message): Cut off the list of modified files.
* Scripts/webkitpy/common/checkout/checkout.py:
(Checkout._changelog_data_for_revision): Store bug description.
* Scripts/webkitpy/common/checkout/checkout_mock.py:
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
(CheckoutTest.test_commit_info_for_revision):
* Scripts/webkitpy/common/checkout/commitinfo.py:
(CommitInfo.bug_description): Added.
(CommitInfo.to_json):
* Scripts/webkitpy/common/checkout/commitinfo_unittest.py:
(CommitInfoTest.test_commit_info_creation):
* Scripts/webkitpy/tool/commands/download.py:
(AbstractRolloutPrepCommand._prepare_state): Store bug ids and descriptions of rolled
out patches for creating rollout changelog.
(CreateRollout._prepare_state): Remove obsolete comments and code, the bug id that
caused the regression is stored in state["bug_blocked"] now.
* Scripts/webkitpy/tool/commands/download_unittest.py:
(test_prepare_rollout):
(test_create_rollout_multiple_revision):
* Scripts/webkitpy/tool/steps/preparechangelogforrevert.py:
(PrepareChangeLogForRevert._message_for_revert): Add bug urls and descriptions of
rolled out patches to the changelog.
(PrepareChangeLogForRevert.run):
* Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
(UpdateChangeLogsForRevertTest):
(test_message_for_revert):
* Scripts/webkitpy/tool/steps/reopenbugafterrollout.py:
(ReopenBugAfterRollout.run):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165447 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove unused method from BatteryController
ryuan.choi@samsung.com [Tue, 11 Mar 2014 11:19:06 +0000 (11:19 +0000)]
Remove unused method from BatteryController
https://bugs.webkit.org/show_bug.cgi?id=130063

Reviewed by Darin Adler.

* Modules/battery/BatteryController.h: Removed client() which is not used.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165446 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoStreamline PropertyTable for lookup-only access.
akling@apple.com [Tue, 11 Mar 2014 09:35:55 +0000 (09:35 +0000)]
Streamline PropertyTable for lookup-only access.
<https://webkit.org/b/130060>

The PropertyTable lookup algorithm was written to support both read
and write access. This wasn't actually needed in most places.

This change adds a PropertyTable::get() that just returns the value
type (instead of an insertion iterator.) It also adds an early return
for empty tables.

Finally, up the minimum table capacity from 8 to 16. It was lowered
to 8 in order to save memory, but that was before PropertyTables were
GC allocated. Nowadays we don't have nearly as many tables, since all
the unpinned transitions die off.

Reviewed by Darin Adler.

* runtime/PropertyMapHashTable.h:
(JSC::PropertyTable::get):
* runtime/Structure.cpp:
(JSC::Structure::despecifyDictionaryFunction):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::get):
(JSC::Structure::despecifyFunction):
* runtime/StructureInlines.h:
(JSC::Structure::get):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165440 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[ATK] Adjust WKTR/DRT to use new API from ATK 2.11.90
k.czech@samsung.com [Tue, 11 Mar 2014 09:14:22 +0000 (09:14 +0000)]
[ATK] Adjust WKTR/DRT to use new API from ATK 2.11.90
https://bugs.webkit.org/show_bug.cgi?id=130021

Reviewed by Mario Sanchez Prada.

Replace deprecated functions to use new API from ATK 2.11.90.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::x):
(AccessibilityUIElement::y):
(AccessibilityUIElement::width):
(AccessibilityUIElement::height):
(AccessibilityUIElement::clickPointX):
(AccessibilityUIElement::clickPointY):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165439 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[ATK] Expose aria-posinset and aria-setsize through object attributes
k.czech@samsung.com [Tue, 11 Mar 2014 09:04:08 +0000 (09:04 +0000)]
[ATK] Expose aria-posinset and aria-setsize through object attributes
https://bugs.webkit.org/show_bug.cgi?id=130011

Reviewed by Chris Fleizach.

Source/WebCore:

Based on http://www.w3.org/TR/2014/PR-wai-aria-implementation-20140206/
aria-poinset and aria-setsize can be exposed as object attributes.

Test: accessibility/aria-setsize-posinset.html

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes):

Tools:

Added missing implementation of numberAttributeValue both to WKTR and DRT.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::numberAttributeValue):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::numberAttributeValue):

LayoutTests:

Test could be shared with other platforms.

* accessibility/aria-setsize-posinset-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/aria-setsize-posinset-expected.txt.
* accessibility/aria-setsize-posinset.html: Renamed from LayoutTests/platform/mac/accessibility/aria-setsize-posinset.html.
* platform/win/TestExpectations: Skipping on win port.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165438 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK][CMake] Add HARFBUZZ_INCLUDE_DIRS to WebKit and WebKit2
jaepark@webkit.org [Tue, 11 Mar 2014 08:13:08 +0000 (08:13 +0000)]
[GTK][CMake] Add HARFBUZZ_INCLUDE_DIRS to WebKit and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=130070

Reviewed by Martin Robinson.

Source/WebKit:

* PlatformGTK.cmake:

Source/WebKit2:

* PlatformGTK.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165437 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoImprove renderer classes for MathML Token elements.
fred.wang@free.fr [Tue, 11 Mar 2014 07:51:27 +0000 (07:51 +0000)]
Improve renderer classes for MathML Token elements.
https://bugs.webkit.org/show_bug.cgi?id=124838

Reviewed by Chris Fleizach.

Source/WebCore:

This patch continues the refactoring of token elements that has been
started in bug 44208. The <mo> element now derives from the
RenderMathMLToken class, which was already used for the <mi> element.
The behavior of anonymous <mo> elements created by the <mfenced> element
is now more consistent with the one of "standard" <mo> elements and the
spacing around them is now handled in RenderMathMLOperator. This is a
first step towards fixing bugs 115787 and 118843. The only visible
rendering change is how <mfenced> open/close attributes handle
whitespace and multiple characters and some tests are added for that.
Other features are already covered by other tests. Finally, this also
removes some code from AccessibilityRenderObject that was used to
workaround issues with <mo> elements.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::startOfContinuations):
(WebCore::AccessibilityRenderObject::textUnderElement):
(WebCore::AccessibilityRenderObject::isMathOperator):
(WebCore::AccessibilityRenderObject::isIgnoredElementWithinMathTree):
* mathml/MathMLTextElement.cpp:
(WebCore::MathMLTextElement::didAttachRenderers):
(WebCore::MathMLTextElement::childrenChanged):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::RenderMathMLBlock):
* rendering/mathml/RenderMathMLBlock.h:
* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::RenderMathMLFenced):
(WebCore::RenderMathMLFenced::updateFromElement):
(WebCore::RenderMathMLFenced::createMathMLOperator):
(WebCore::RenderMathMLFenced::makeFences):
(WebCore::RenderMathMLFenced::addChild):
* rendering/mathml/RenderMathMLFenced.h:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::setOperatorFlagFromAttribute):
(WebCore::RenderMathMLOperator::setOperatorPropertiesFromOpDictEntry):
(WebCore::RenderMathMLOperator::SetOperatorProperties):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::rebuildTokenContent):
(WebCore::RenderMathMLOperator::updateTokenContent):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::firstLineBaseline):
(WebCore::RenderMathMLOperator::paint):
(WebCore::RenderMathMLOperator::paintChildren):
* rendering/mathml/RenderMathMLOperator.h:
* rendering/mathml/RenderMathMLToken.cpp:
(WebCore::RenderMathMLToken::createWrapperIfNeeded):

LayoutTests:

Two tests are added to fenced-mi in order to verify that the open/close
attributes of the mfenced element collapse whitespace and accept values
with multiple characters.

* mathml/presentation/fenced-mi-expected.html:
* mathml/presentation/fenced-mi.html:
* platform/mac/accessibility/mathml-elements.html: fix bad closing tag and disable the test for now.
* platform/mac/mathml/presentation/mo-stretch-expected.txt: update text reference.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165436 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION(r165407): DoYouEvenBench crashes in DRT
mhahnenberg@apple.com [Tue, 11 Mar 2014 06:57:43 +0000 (06:57 +0000)]
REGRESSION(r165407): DoYouEvenBench crashes in DRT
https://bugs.webkit.org/show_bug.cgi?id=130066

Reviewed by Geoffrey Garen.

The baseline JIT does a conditional store barrier for the put_by_id, but we need
an unconditional store barrier so that we cover the butterfly case as well in emitPutTransitionStub.

* jit/JIT.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::emitWriteBarrier):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165435 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Cocoa] Expose WebPageProxy::close
mitz@apple.com [Tue, 11 Mar 2014 06:25:23 +0000 (06:25 +0000)]
[Cocoa] Expose WebPageProxy::close
https://bugs.webkit.org/show_bug.cgi?id=130068

Reviewed by Adele Peterson.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _close]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165434 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoResurrect bit-rotted JIT::probe() mechanism.
mark.lam@apple.com [Tue, 11 Mar 2014 05:18:41 +0000 (05:18 +0000)]
Resurrect bit-rotted JIT::probe() mechanism.
<https://webkit.org/b/130067>

Reviewed by Geoffrey Garen.

* jit/JITStubs.cpp:
- Added the needed #include <wtf/InlineASM.h>.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165433 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix typo in EXCLUDED_SOURCE_FILE_NAMES_iphoneos.
joepeck@webkit.org [Tue, 11 Mar 2014 05:01:18 +0000 (05:01 +0000)]
Fix typo in EXCLUDED_SOURCE_FILE_NAMES_iphoneos.

Rubber-stamped by Dan Bernstein.

* Configurations/JavaScriptCore.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165432 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agor165414 broke the 32-bit x86 tests: ASSERTION FAILED: result != InvalidIndex @ GPRInf...
mark.lam@apple.com [Tue, 11 Mar 2014 04:53:52 +0000 (04:53 +0000)]
r165414 broke the 32-bit x86 tests: ASSERTION FAILED: result != InvalidIndex @ GPRInfo.h:330.
<https://webkit.org/b/130065>

Reviewed by Michael Saboff.

There is code in ScratchRegisterAllocator.cpp that is relying on GPRInfo::toIndex()
being able to return InvalidIndex.  Hence, the assertion is invalid.  Ditto for
FPRInfo::toIndex().

The fix is to remove the "result != InvalidIndex" assertions.

* jit/FPRInfo.h:
(JSC::FPRInfo::toIndex):
* jit/GPRInfo.h:
(JSC::GPRInfo::toIndex):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165431 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: AXI: Expose checked/disabled/expanded/pressed/readonly/selected
commit-queue@webkit.org [Tue, 11 Mar 2014 04:52:02 +0000 (04:52 +0000)]
Web Inspector: AXI: Expose checked/disabled/expanded/pressed/readonly/selected
https://bugs.webkit.org/show_bug.cgi?id=129781

Patch by James Craig <jcraig@apple.com> on 2014-03-10
Reviewed by Joseph Pecoraro.

Enabling several more properties to be exposed in the Accessibility Node Inspector.

Source/WebCore:

Updated Tests: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsChecked):
* accessibility/AccessibilityObject.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
* inspector/protocol/DOM.json:

Source/WebInspectorUI:

Updated Tests: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Models/DOMNode.js:
* UserInterface/Protocol/InspectorWebBackendCommands.js:
* UserInterface/Views/DOMNodeDetailsSidebarPanel.js:

LayoutTests:

* inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
* inspector-protocol/dom/getAccessibilityPropertiesForNode.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165430 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] inset corner radii are not flipped for vertical writing modes
bjonesbe@adobe.com [Tue, 11 Mar 2014 04:31:06 +0000 (04:31 +0000)]
[CSS Shapes] inset corner radii are not flipped for vertical writing modes
https://bugs.webkit.org/show_bug.cgi?id=129918

Reviewed by Dean Jackson.

Source/WebCore:

When creating an inset shape, convert the radii to logical coordinates
as well as the box.

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-left.html
       fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-right.html

* rendering/shapes/Shape.cpp:
(WebCore::Shape::createShape): Convert the radii to logical
    coordinates.

LayoutTests:

Test both left and right float cases so that we cover all four
corners.

* fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-left-expected.txt: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-left.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-right-expected.txt: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-different-writing-modes-right.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165429 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[EFL] Modify accelerated compositing related functions in ewk_view.
ryuan.choi@samsung.com [Tue, 11 Mar 2014 04:28:49 +0000 (04:28 +0000)]
[EFL] Modify accelerated compositing related functions in ewk_view.
https://bugs.webkit.org/show_bug.cgi?id=129875

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-03-10
Reviewed by Gyuyoung Kim.

The compositing object will be created when root layer is attached.
So we don't need to expose the create function.
And this patch adds show(), hide() and resize() for compositing object.

* WebCoreSupport/AcceleratedCompositingContextEfl.h: move resize() to public.
* ewk/ewk_view.cpp:
(_ewk_view_smart_resize): add to resize the compositing object.
(_ewk_view_smart_show): add to show the compositing object.
(_ewk_view_smart_hide): add to hide the compositing object.
(_ewk_view_accelerated_compositing_context_create_if_needed):
modify the creation for the compositing object.
(_ewk_view_accelerated_compositing_object_create_if_needed):
add a return value.
(ewk_view_root_graphics_layer_set):
If root layer is not 0, we create the compositing object and AcceleratedCompositingContext.
* ewk/ewk_view_private.h: remove to expose the compositing object creation API.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165428 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: Frontend loaded resources from cache are not hidden as expected
commit-queue@webkit.org [Tue, 11 Mar 2014 04:22:10 +0000 (04:22 +0000)]
Web Inspector: Frontend loaded resources from cache are not hidden as expected
https://bugs.webkit.org/show_bug.cgi?id=130044

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-03-10
Reviewed by Timothy Hatcher.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadedResourceFromMemoryCache):
Use the new request that was passed in. Assume it is filled in appropriately.

* loader/cache/CachedResourceLoader.h:
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
Carry over the hidden from inspector state if the passed in request had it,
and create the request that loadedResourceFromMemoryCache will use.

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::createRequest):
Add missing ifdefs for INSPECTOR only function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165427 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoCrash on a stack overflow on 32-bit x86 in http/tests/websocket/tests/hybi/workers...
mark.lam@apple.com [Tue, 11 Mar 2014 04:06:31 +0000 (04:06 +0000)]
Crash on a stack overflow on 32-bit x86 in http/tests/websocket/tests/hybi/workers/no-onmessage-in-sync-op.html.
<https://webkit.org/b/129955>

Reviewed by Geoffrey Garen.

The 32-bit x86 version of getHostCallReturnValue() was leaking 16 bytes
stack memory every time it was called.  This is now fixed.

* jit/JITOperations.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165426 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoImprove WeakPtr operators.
jer.noble@apple.com [Tue, 11 Mar 2014 03:08:01 +0000 (03:08 +0000)]
Improve WeakPtr operators.
https://bugs.webkit.org/show_bug.cgi?id=130053

Reviewed by Andreas Kling.

Replace the "operator!()" with an explicit bool operator.  Add an "operator->()".

* wtf/WeakPtr.h:
(WTF::WeakPtr::operator bool):
(WTF::WeakPtr::operator->):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165425 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBetter JSContext API for named evaluations (other than //# sourceURL)
joepeck@webkit.org [Tue, 11 Mar 2014 02:39:40 +0000 (02:39 +0000)]
Better JSContext API for named evaluations (other than //# sourceURL)
https://bugs.webkit.org/show_bug.cgi?id=129911

Reviewed by Geoffrey Garen.

* API/JSBase.h:
* API/JSContext.h:
* API/JSContext.mm:
(-[JSContext evaluateScript:]):
(-[JSContext evaluateScript:withSourceURL:]):
Add new evaluateScript:withSourceURL:.

* API/tests/testapi.c:
(main):
* API/tests/testapi.mm:
(testObjectiveCAPI):
Add tests for sourceURL in evaluate APIs. It should
affect the exception objects.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165424 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove 'visibilitychange' attribute event listener from document
jinwoo7.song@samsung.com [Tue, 11 Mar 2014 02:26:36 +0000 (02:26 +0000)]
Remove 'visibilitychange' attribute event listener from document
https://bugs.webkit.org/show_bug.cgi?id=129794

Reviewed by Simon Fraser.

Remove the unused attribute event listener which is not defined in Page Visibility API spec.
http://www.w3.org/TR/page-visibility/#sec-document-interface

* dom/Document.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165423 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WebKit 2] Wire the unobscured rect in the WebProcess
benjamin@webkit.org [Tue, 11 Mar 2014 01:34:42 +0000 (01:34 +0000)]
[iOS][WebKit 2] Wire the unobscured rect in the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=130058

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

Source/WebCore:

* WebCore.exp.in:
* platform/ScrollView.h:
* platform/ios/ScrollViewIOS.mm:
(WebCore::ScrollView::unobscuredContentRect):
(WebCore::ScrollView::setUnobscuredContentRect):

Source/WebKit2:

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::updateVisibleContentRects):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165422 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agomakeSelectorPseudoTypeMap.py should not be copied in the WebCore bundle
benjamin@webkit.org [Tue, 11 Mar 2014 00:40:34 +0000 (00:40 +0000)]
makeSelectorPseudoTypeMap.py should not be copied in the WebCore bundle

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

* WebCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165421 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Win] Unreviewed build fix.
bfulgham@apple.com [Tue, 11 Mar 2014 00:39:57 +0000 (00:39 +0000)]
[Win] Unreviewed build fix.

Some bad Windows code was committed at some point that prevents the Apple Windows port
from finding its runtime dependencies reliably.

* win/DLLLauncher/DLLLauncherMain.cpp:
(appleApplicationSupportDirectory): Restored this function.
(modifyPath): Update to use appleApplicationSupportDirectory function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165420 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Win] Unreviewed build fix (64-bit).
bfulgham@apple.com [Tue, 11 Mar 2014 00:29:56 +0000 (00:29 +0000)]
[Win] Unreviewed build fix (64-bit).

* WebKit.vcxproj/WebKit/WebKitCommon.props: Put uuid.lib as the last link library so that
the MSIE DOM symbols don't conflict with WebKit's.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing 64-bit symbol definitions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165419 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Add support for Geoclue2
mario.prada@samsung.com [Tue, 11 Mar 2014 00:23:20 +0000 (00:23 +0000)]
[GTK] Add support for Geoclue2
https://bugs.webkit.org/show_bug.cgi?id=120185

Reviewed by Carlos Garcia Campos.

.:

Add support for Geoclue2 using autotools.

* Source/autotools/FindDependencies.m4: Add support for handling
both Geoclue 1.0 and 2.0.
* Source/autotools/PrintBuildConfiguration.m4: Print the version
of geoclue that is being used.
* Source/autotools/SetupAutoconfHeader.m4: Define GEOCLUE_API_VERSION_2.
* Source/autotools/SetupAutomake.m4: Likewise, for AM_CONDITIONAL.
* Source/autotools/Versions.m4: Added minimum required version for Geoclue2.

Add support for Geoclue2 using CMake.

* Source/cmake/FindGeoClue2.cmake: Added.
* Source/cmake/OptionsGTK.cmake:  Add support for handling Geoclue 1.0 and 2.0.
* Source/cmakeconfig.h.cmake: Define WTF_USE_GEOCLUE2.

Source/WebCore:

Implement a new geolocation provider based on Geoclue2, which will only
be used if a good enough version of Geoclue2 is found  at configure time.

* GNUmakefile.am: Generate C-API for accessing the D-Bus API
provided by Geoclue2, and place it in DerivedSources.
* GNUmakefile.list.am: Add GeolocationProviderGeoclue2.cpp, and
include the generated proxy files when using Geoclue2.
* PlatformGTK.cmake: Likewise, for CMake based builds.
* platform/geoclue/GeolocationProviderGeoclue.h: Modified to
accomodate the needs both for Geoclue and Geoclue2 providers.
* platform/geoclue/GeolocationProviderGeoclue1.cpp: Renamed from Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp.
(GeolocationProviderGeoclue::getPositionCallback):
(GeolocationProviderGeoclue::positionChangedCallback):
(GeolocationProviderGeoclue::createGeocluePositionCallback):
(GeolocationProviderGeoclue::geoclueClientSetRequirementsCallback):
(GeolocationProviderGeoclue::createGeoclueClientCallback):
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::initializeGeoclueClient):
(GeolocationProviderGeoclue::initializeGeocluePosition):
(GeolocationProviderGeoclue::updateClientRequirements):
(GeolocationProviderGeoclue::positionChanged):
(GeolocationProviderGeoclue::errorOccurred):
* platform/geoclue/GeolocationProviderGeoclue2.cpp: Added.
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::createGeoclueManagerProxyCallback):
(GeolocationProviderGeoclue::getGeoclueClientCallback):
(GeolocationProviderGeoclue::createGeoclueClientProxyCallback):
(GeolocationProviderGeoclue::startClientCallback):
(GeolocationProviderGeoclue::locationUpdatedCallback):
(GeolocationProviderGeoclue::createLocationProxyCallback):
(GeolocationProviderGeoclue::startGeoclueClient):
(GeolocationProviderGeoclue::updateLocation):
(GeolocationProviderGeoclue::errorOccurred):
(GeolocationProviderGeoclue::updateClientRequirements):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165418 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed Windows Build Fix.
bfulgham@apple.com [Tue, 11 Mar 2014 00:16:40 +0000 (00:16 +0000)]
Unreviewed Windows Build Fix.

* WebCore.vcxproj/WebCore.vcxproj: Don't build cURL files for Apple Windows port.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents): Correct
method signature to match base class.
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Use proper character encoding.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165417 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRepatch should save and restore all used registers - not just temp ones - when making...
fpizlo@apple.com [Mon, 10 Mar 2014 23:31:18 +0000 (23:31 +0000)]
Repatch should save and restore all used registers - not just temp ones - when making a call
https://bugs.webkit.org/show_bug.cgi?id=130041

Reviewed by Geoffrey Garen and Mark Hahnenberg.

The save/restore code was written back when the only client was the DFG, which only uses a
subset of hardware registers: the "temp" registers in our lingo. But the FTL may use many
other registers, especially on ARM64. The fact that Repatch doesn't know to save those can
lead to data corruption on ARM64.

* jit/RegisterSet.cpp:
(JSC::RegisterSet::calleeSaveRegisters):
(JSC::RegisterSet::numberOfSetGPRs):
(JSC::RegisterSet::numberOfSetFPRs):
* jit/RegisterSet.h:
* jit/Repatch.cpp:
(JSC::storeToWriteBarrierBuffer):
(JSC::emitPutTransitionStub):
* jit/ScratchRegisterAllocator.cpp:
(JSC::ScratchRegisterAllocator::ScratchRegisterAllocator):
(JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing):
(JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping):
(JSC::ScratchRegisterAllocator::usedRegistersForCall):
(JSC::ScratchRegisterAllocator::desiredScratchBufferSizeForCall):
(JSC::ScratchRegisterAllocator::preserveUsedRegistersToScratchBufferForCall):
(JSC::ScratchRegisterAllocator::restoreUsedRegistersFromScratchBufferForCall):
* jit/ScratchRegisterAllocator.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165414 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLet the user define the full address of the performance-site-server for uploading...
zoltan@webkit.org [Mon, 10 Mar 2014 23:22:05 +0000 (23:22 +0000)]
Let the user define the full address of the performance-site-server for uploading results
https://bugs.webkit.org/show_bug.cgi?id=129819

Reviewed by Ryosuke Niwa.

Currently perftestsrunner.py assumes that the server uses https protocol all the time, which
can be confusing. It's more straightforward, if you need to define explicitly the server's full
address along with the protocol, when you're using this parameter. I added HTTPS as the default
protocol for now, in order to avoid breaking the perf bots.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(_upload_json):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(MainTest.test_upload_json):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165413 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix three leaks
simon.fraser@apple.com [Mon, 10 Mar 2014 23:08:55 +0000 (23:08 +0000)]
Fix three leaks
https://bugs.webkit.org/show_bug.cgi?id=130048

Reviewed by Anders Carlsson.

Source/WebCore:

The NSDictionary was leaked.

* page/ios/UserAgentIOS.mm:
(WebCore::osMarketingVersion):

Source/WebKit2:

* Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(decodeObject): Code is simpler and less leaky without the RetainPtr.
* UIProcess/API/Cocoa/WKNavigationAction.mm: Fix _originalURL leak
by making it a RetainPtr and implementing the getter and setter.
(-[WKNavigationAction _setOriginalURL:]):
(-[WKNavigationAction _originalURL]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165412 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUpdate the install guidelines for perf.webkit.org
zoltan@webkit.org [Mon, 10 Mar 2014 23:01:18 +0000 (23:01 +0000)]
Update the install guidelines for perf.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=129895

Reviewed by Ryosuke Niwa.

The current install guideline for perf.webkit.org discourages the use of the installed
Server application. I've actualized the documentation for Mavericks, and modified the
guideline to include the instructions for Server.app also.

* Install.md:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165411 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSet background color of WK2's UIScrollView to the pageExtendedBackgroundColor
bdakin@apple.com [Mon, 10 Mar 2014 22:48:42 +0000 (22:48 +0000)]
Set background color of WK2's UIScrollView to the pageExtendedBackgroundColor
https://bugs.webkit.org/show_bug.cgi?id=129919

Reviewed by Benjamin Poulain.

Source/WebCore:

WK2 needs to be able to ask for the pageExtendedBackgroundColor, so this patch
adds a function to Page that will return it

* WebCore.exp.in:
* page/Page.cpp:
(WebCore::Page::pageExtendedBackgroundColor):
* page/Page.h:
* rendering/RenderLayerCompositor.h:
(WebCore::RenderLayerCompositor::rootExtendedBackgroundColor):

Source/WebKit2:

Make the pageExtendedBackgroundColor part of a RemoteLayerTreeTransaction.
* Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::pageExtendedBackgroundColor):
(WebKit::RemoteLayerTreeTransaction::setPageExtendedBackgroundColor):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):

Set the background color of the UIScrollView based on the
pageExtendedBackgroundColor.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:WebKit::]):

For the sake of PLATFORM(MAC), continue to support the fact that this color can be
set via a message from the WebProcess or the new RemoteLayerTreeTransaction.
* UIProcess/WebPageProxy.h:

Cache the pageExtendedBackgroundColor as provided by the
RemoteLayerTreeTransaction.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::didCommitLayerTree):

It’s not necessary to do anything here in non-Mac platforms anymore.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::pageExtendedBackgroundColorDidChange):

Include the pageExtendedBackgroundColor in the RemoteLayerTreeTransaction.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::willCommitLayerTree):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165409 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] Add performance tests for SVG shape with shape-margin
zoltan@webkit.org [Mon, 10 Mar 2014 22:32:15 +0000 (22:32 +0000)]
[CSS Shapes] Add performance tests for SVG shape with shape-margin
https://bugs.webkit.org/show_bug.cgi?id=129930

Reviewed by Ryosuke Niwa.

The test is skipped by default.

* Layout/Shapes/ShapeOutsideSVGWithMargin.html: Added.
* Layout/Shapes/resources/shape.svg: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165408 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove ConditionalStore barrier
mhahnenberg@apple.com [Mon, 10 Mar 2014 22:21:44 +0000 (22:21 +0000)]
Remove ConditionalStore barrier
https://bugs.webkit.org/show_bug.cgi?id=130040

Reviewed by Geoffrey Garen.

ConditionalStoreBarrier was created when barriers were much more expensive. Now that
they're cheap(er), we can get rid of them. This also allows us to get rid of the write
barrier logic in emitPutTransitionStub because we always will have executed a write barrier
on the base object in the case where we are allocating and storing a new Butterfly into it.
Previously, a ConditionalStoreBarrier might or might not have barrier-ed the base object,
so we'd have to emit a write barrier in the transition case.

This is performance neutral on the benchmarks we track.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertStoreBarrier):
* dfg/DFGNode.h:
(JSC::DFG::Node::isStoreBarrier):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileStoreBarrier):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
* jit/Repatch.cpp:
(JSC::emitPutTransitionStub):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165407 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoDFG and FTL should know that comparing anything to Misc is cheap and easy
fpizlo@apple.com [Mon, 10 Mar 2014 22:11:35 +0000 (22:11 +0000)]
DFG and FTL should know that comparing anything to Misc is cheap and easy
https://bugs.webkit.org/show_bug.cgi?id=130001

Reviewed by Geoffrey Garen.

- Expand CompareStrictEq(Misc:, Misc:) to work for cases where either side of the
  comparison is just Untyped:.

- This obviates the need for CompareStrictEqConstant, so remove it.

- FTL had a thing called "Nully" which is really "Other". Rename it and add
  OtherUse.

9% speed-up on box2d.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGNode.h:
(JSC::DFG::Node::isBinaryUseKind):
(JSC::DFG::Node::shouldSpeculateOther):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compileStrictEq):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compileMiscStrictEq):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compileMiscStrictEq):
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCompareEq):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEq):
(JSC::FTL::LowerDFGToLLVM::compareEqObjectOrOtherToObject):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):
(JSC::FTL::LowerDFGToLLVM::isNotOther):
(JSC::FTL::LowerDFGToLLVM::isOther):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::speculateObjectOrOther):
(JSC::FTL::LowerDFGToLLVM::speculateNotCell):
(JSC::FTL::LowerDFGToLLVM::speculateOther):
(JSC::FTL::LowerDFGToLLVM::speculateMisc):
* tests/stress/compare-strict-eq-integer-to-misc.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165406 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, remove unintended change.
fpizlo@apple.com [Mon, 10 Mar 2014 22:09:07 +0000 (22:09 +0000)]
Unreviewed, remove unintended change.

* dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165405 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoGeneralize unobscured rect to all ports
benjamin@webkit.org [Mon, 10 Mar 2014 21:25:24 +0000 (21:25 +0000)]
Generalize unobscured rect to all ports
https://bugs.webkit.org/show_bug.cgi?id=130036

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

Source/WebCore:

iOS differentiates visible content and unobscured content. This patch moves the concept to all
ports to remove the #ifdefs from the call sites.

On everything but iOS, unobscuredRect and visibleRect are the same.

* WebCore.exp.in:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::innerHeight):
(WebCore::DOMWindow::innerWidth):
* page/SpatialNavigation.cpp:
(WebCore::canScrollInDirection):
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::paint):
* platform/ScrollView.h:
(WebCore::ScrollView::unobscuredContentRectIncludingScrollbars):
(WebCore::ScrollView::unobscuredContentRect):
* rendering/RenderView.cpp:
(WebCore::RenderView::viewportSize):

Source/WebKit2:

* WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165404 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agojsc commandline shouldn't have a "console" because that confuses some tests into...
fpizlo@apple.com [Mon, 10 Mar 2014 21:06:29 +0000 (21:06 +0000)]
jsc commandline shouldn't have a "console" because that confuses some tests into thinking
that they're running in the browser.

Rubber stamped by Mark Hahnenberg.

* jsc.cpp:
(GlobalObject::finishCreation):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165403 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoStart splitting CSS Selectors's pseudo types
benjamin@webkit.org [Mon, 10 Mar 2014 21:00:26 +0000 (21:00 +0000)]
Start splitting CSS Selectors's pseudo types
https://bugs.webkit.org/show_bug.cgi?id=130003

Reviewed by Andreas Kling.

CSS Selectors pseudo types come in 3 flavors: page, pseudo class, pseudo elements.

The three types are mixed together in a single enum list named PseudoType. Only some combinations
of match type + pseudo type are valid, but this is implicitly defined from the code.

This patch is the beginning of a refactoring to add more clear boundaries between
valid and invalid combinations.

First, the handling of page pseudo types is completely split from the other values.
The parser use a different method for handling the value CSSParserSelector::parsePagePseudoSelector().

PagePseudo types no longer store their string in the CSSSelector either to reduce the redundancy
with m_pseudoType.
When we need to generate the string for those CSSSelector, we recreate the string as needed in
CSSSelector::selectorText().

The remaining two types are not yet split in this patch but this introduce the preliminary clean up
toward that goal.
The list of parsed pseudo types is now generated at compile time from the source in SelectorPseudoTypeMap.in.

* DerivedSources.make:
The mapping of strings to pseudo types is generated from SelectorPseudoTypeMap.in
by the new script makeSelectorPseudoTypeMap.py.

* WebCore.xcodeproj/project.pbxproj:
* css/CSSGrammar.y.in:
Split the parsing of Pseudo Types. Pseudo page get its own method. The others will need some work.

* css/CSSParserValues.cpp:
(WebCore::CSSParserSelector::parsePagePseudoSelector):
(WebCore::CSSParserSelector::setPseudoTypeValue):
* css/CSSParserValues.h:
* css/CSSSelector.cpp:
(WebCore::CSSSelector::specificityForPage):
This is an example of invalid combination that is hidden by the current code.
First, Left and Right could never appear in a pseudo class match.
(WebCore::CSSSelector::pseudoId):
(WebCore::CSSSelector::parsePseudoType):
(WebCore::appendPseudoTypeTailIfNecessary):
(WebCore::CSSSelector::selectorText):
* css/CSSSelector.h:
(WebCore::CSSSelector::pseudoType):
(WebCore::CSSSelector::matchesPseudoElement):
(WebCore::CSSSelector::setValue):
(WebCore::CSSSelector::CSSSelector):
* css/PageRuleCollector.cpp:
(WebCore::checkPageSelectorComponents):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* css/SelectorPseudoTypeMap.h: Added.
* css/SelectorPseudoTypeMap.in: Added.
* css/makeSelectorPseudoTypeMap.py: Added.
(enumerablePseudoType):
(expand_ifdef_condition):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoType):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165402 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoOut-line ScratchRegisterAllocator
fpizlo@apple.com [Mon, 10 Mar 2014 20:58:29 +0000 (20:58 +0000)]
Out-line ScratchRegisterAllocator

Rubber stamped by Mark Hahnenberg.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):
* jit/ScratchRegisterAllocator.cpp: Added.
(JSC::ScratchRegisterAllocator::ScratchRegisterAllocator):
(JSC::ScratchRegisterAllocator::~ScratchRegisterAllocator):
(JSC::ScratchRegisterAllocator::lock):
(JSC::ScratchRegisterAllocator::allocateScratch):
(JSC::ScratchRegisterAllocator::allocateScratchGPR):
(JSC::ScratchRegisterAllocator::allocateScratchFPR):
(JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing):
(JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping):
(JSC::ScratchRegisterAllocator::desiredScratchBufferSize):
(JSC::ScratchRegisterAllocator::preserveUsedRegistersToScratchBuffer):
(JSC::ScratchRegisterAllocator::restoreUsedRegistersFromScratchBuffer):
* jit/ScratchRegisterAllocator.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165401 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoiOS build fix after http://trac.webkit.org/changeset/165385
enrica@apple.com [Mon, 10 Mar 2014 20:53:11 +0000 (20:53 +0000)]
iOS build fix after trac.webkit.org/changeset/165385

Unreviewed.

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165400 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago<rdar://problem/16278716> [Cocoa] Allow setting a custom group identifier on a WKWebView
mitz@apple.com [Mon, 10 Mar 2014 20:19:06 +0000 (20:19 +0000)]
<rdar://problem/16278716> [Cocoa] Allow setting a custom group identifier on a WKWebView
https://bugs.webkit.org/show_bug.cgi?id=130033

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]): Create a page group with the group identifier
from the configuration, if it’s non-empty.
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration _groupIdentifier]): Added this accessor.
(-[WKWebViewConfiguration _setGroupIdentifier:]): Ditto.
* UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Declared _groupIdentifier property.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165398 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebKit2: Crash in WebPage::getPositionInformation.
enrica@apple.com [Mon, 10 Mar 2014 20:11:07 +0000 (20:11 +0000)]
WebKit2: Crash in WebPage::getPositionInformation.
https://bugs.webkit.org/show_bug.cgi?id=129936
<rdar://problem/16264550>

Reviewed by Eric Carlson.

Missing null check on the node renderer in one code path.
If the page body is smaller than the document, hit testing
will return HTMLHtmlElement that has no renderer.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getPositionInformation):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165397 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION (r159218): FrameView::layout() should destroy TemporaryChange<LayoutPhase>
dbates@webkit.org [Mon, 10 Mar 2014 20:02:35 +0000 (20:02 +0000)]
REGRESSION (r159218): FrameView::layout() should destroy TemporaryChange<LayoutPhase>
before destroying Ref<FrameView>
https://bugs.webkit.org/show_bug.cgi?id=130034
<rdar://problem/15664288>

Reviewed by Alexey Proskuryakov.

We should always destroy TemporaryChange<LayoutPhase> before destroying Ref<FrameView>
in FrameView::layout() so as to ensure that the FrameView exists when we restore the
original layout phase value.

The existing test fast/frames/crash-remove-iframe-during-object-beforeload.html covers
this change. Although you must run the test with Guard Malloc enabled (i.e. run-webkit-tests -r).

* page/FrameView.cpp:
(WebCore::FrameView::layout): Move construction of variable protect before the construction of
variable layoutPhaseRestorer. Additionally, add a period to the end of the comment associated
with variable protect.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165396 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoASSERTION FAILED: span >= 1
commit-queue@webkit.org [Mon, 10 Mar 2014 19:56:38 +0000 (19:56 +0000)]
ASSERTION FAILED: span >= 1
https://bugs.webkit.org/show_bug.cgi?id=129148

Patch by Zsolt Borbely <borbezs@inf.u-szeged.hu> on 2014-03-10
Reviewed by Andreas Kling.

Source/WebCore:

Set the value of span to 1 if the given number is too big or zero.

Test: fast/table/incorrect-colgroup-span-values.html

* html/HTMLTableColElement.cpp:
(WebCore::HTMLTableColElement::parseAttribute):

LayoutTests:

Added test demonstrates the behavior of colgroup in case of large negative, large positive, zero and null span values.

* fast/table/incorrect-colgroup-span-values-expected.txt: Added.
* fast/table/incorrect-colgroup-span-values.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165395 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSource/JavaScriptCore: [Win] Pass environment to Pre-Build, Pre-link, and Post-Build...
bfulgham@apple.com [Mon, 10 Mar 2014 19:09:40 +0000 (19:09 +0000)]
Source/JavaScriptCore: [Win] Pass environment to Pre-Build, Pre-link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* JavaScriptCore.vcxproj/JavaScriptCore.proj: Avoid trailing backslashes in
path names to avoid accidental escaping of later string substitutions.

Source/WebCore: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023.

Reviewed by Dean Jackson.

* WebCore.vcxproj/WebCore.proj: Avoid trailing slashes in path values to
prevent escaping during later string substitution.

Source/WebKit: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* WebKit.vcxproj/WebKit.make: Removed.
* WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Use %PlatformArchitecture% rather than
hard-coded 32-bit path.

Source/WTF: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023.

Reviewed by Dean Jackson.

* WTF.vcxproj/WTF.proj: Avoid putting trailing slashes in system paths to avoid
escaping during later string substitution.
* WTF.vcxproj/build-generated-files.sh: Accept environment values passed by VS.

Tools: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj: Add missing
/SAFESEH flag to DLL launcher process.

WebKitLibraries: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* win/tools/vsprops/common.props: Pass WEBKIT_LIBRARIES value to subprocesses.
* win/tools/vsprops/debugsuffix.props: Make sure OFFICIAL_BUILD is set.
* win/tools/vsprops/production.props: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165393 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[X86_64] Smaller code for testb_i8r when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:57:34 +0000 (18:57 +0000)]
[X86_64] Smaller code for testb_i8r when register is accumulator.
<https://webkit.org/b/130026>

Generate the shorthand version of "test al, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::testb_i8r):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165392 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[X86_64] Smaller code for sub_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:57:14 +0000 (18:57 +0000)]
[X86_64] Smaller code for sub_ir when register is accumulator.
<https://webkit.org/b/130025>

Generate the shorthand version of "sub eax, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::subl_ir):
(JSC::X86Assembler::subq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165391 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[X86_64] Smaller code for add_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:56:36 +0000 (18:56 +0000)]
[X86_64] Smaller code for add_ir when register is accumulator.
<https://webkit.org/b/130024>

Generate the shorthand version of "add eax, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::addl_ir):
(JSC::X86Assembler::addq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165390 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agowriteBarrier in emitPutReplaceStub is unnecessary
mhahnenberg@apple.com [Mon, 10 Mar 2014 18:55:17 +0000 (18:55 +0000)]
writeBarrier in emitPutReplaceStub is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=130030

Reviewed by Filip Pizlo.

We already emit write barriers for each put-by-id when they're first compiled, so it's
redundant to emit a write barrier as part of the repatched code.

* jit/Repatch.cpp:
(JSC::emitPutReplaceStub):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165389 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Regions] Hit-testing is not working properly inside scrollable regions
stavila@adobe.com [Mon, 10 Mar 2014 18:48:49 +0000 (18:48 +0000)]
[CSS Regions] Hit-testing is not working properly inside scrollable regions
https://bugs.webkit.org/show_bug.cgi?id=130015

Reviewed by Antti Koivisto.

Source/WebCore:

When hit-testing inside the flow thread's layer, the scrolled offset
of the current region must be taken into consideration.

Test: fast/regions/scrollable-regions-hit-testing-inside.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

Added test for hit-testing inside scrollable regions.

* fast/regions/scrollable-regions-hit-testing-inside-expected.html: Added.
* fast/regions/scrollable-regions-hit-testing-inside.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165388 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] SVG Image valued shape fails if root element's size is relative
hmuller@adobe.com [Mon, 10 Mar 2014 18:41:34 +0000 (18:41 +0000)]
[CSS Shapes] SVG Image valued shape fails if root element's size is relative
https://bugs.webkit.org/show_bug.cgi?id=128983

Reviewed by Simon Fraser.

Source/WebCore:

When creating a shape based on an Image, compute its dimensions using
RenderBoxModelObject::calculateImageIntrinsicDimensions(), then set the
ImageResource's containerSize, and then use imageForRenderer() to get the
image to be drawn. The first step resolves SVG Image relative sizes, the
second step creates and caches an SVGImageForContainer with the correct
containerSize, and the last step retrieves the SVGImageForContainer.

Test: fast/shapes/shape-outside-floats/shape-outside-relative-size-svg.html

* rendering/RenderBoxModelObject.h: Publicized calculateImageIntrinsicDimensions() and its enum.
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
* rendering/shapes/Shape.h:
* rendering/shapes/ShapeInfo.cpp:
(WebCore::getShapeImageAndRect):
(WebCore::ShapeInfo<RenderType>::computedShape):

LayoutTests:

Verify that an SVG Image valued shape-outside with a relatively sized SVG root element
generates a shape with the correct size.

* fast/shapes/shape-outside-floats/shape-outside-relative-size-svg-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-relative-size-svg.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165387 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with...
mrobinson@webkit.org [Mon, 10 Mar 2014 18:35:55 +0000 (18:35 +0000)]
[GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with CMake
https://bugs.webkit.org/show_bug.cgi?id=130016

Reviewed by Carlos Garcia Campos.

* Source/PlatformGTK.cmake: Add two gtkdoc targets, one which builds HTML and one which
doesn't. Add the non-HTML version to the default target, but not the HTML version. The
HTML version will still run when building the distribution tarball.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165386 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTextIterator: Use StringView and references rather than pointers
darin@apple.com [Mon, 10 Mar 2014 18:30:07 +0000 (18:30 +0000)]
TextIterator: Use StringView and references rather than pointers
https://bugs.webkit.org/show_bug.cgi?id=129975

Reviewed by Anders Carlsson.

Source/WebCore:

TextIterator refinements:
- Use StringView instead of deprecatedCharacters to point to characters within strings.
- Added TextIteratorCopyableText, a safe way to copy the current text of a TextIterator,
  for use by WordAwareIterator.
- Removed m_shouldStop; iterators stop by setting m_positionNode to null, and there is no
  need for a separate boolean to do the same thing.
- Got rid of all the boolean data members set based on the text iterator behavior; instead
  store the behavior in a data member and check it directly.
- Changed most functions to use references rather than pointers.
- Small micro-optimizations, such as using fastGetAttribute rather than getAttribute.
- Switched to nullptr instead of 0 where appropriate.
- Removed unused functions.
- Cut down on use of abbreviations instead of words.
- Renamed data members and argument names for clarity.
- Split up assertions that needlessly asserted more than one thing in a single expression.
- Treat CDATASection just like other Text, since its text will be visible.

* editing/Editor.cpp:
(WebCore::Editor::advanceToNextMisspelling): Pass reference rather than pointer.
(WebCore::Editor::rangeOfString): Ditto.
(WebCore::Editor::countMatchesForText): Ditto.
* editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingHelper::findFirstMisspelling): Ditto.

* editing/TextIterator.cpp:
(WebCore::depthCrossingShadowBoundaries): Take a reference rather than a pointer.
(WebCore::nextInPreOrderCrossingShadowBoundaries): Ditto.
(WebCore::fullyClipsContents): Ditto.
(WebCore::ignoresContainerClip): Ditto.
(WebCore::pushFullyClippedState): Ditto.
(WebCore::setUpFullyClippedStack): Ditto.
(WebCore::isRendererReplacedElement): Use references rather than pointers in the
implementation. Also use fastGetAttribute instead of getAttribute.
(WebCore::TextIteratorCopyableText::reset): Added.
(WebCore::TextIteratorCopyableText::set): Added.
(WebCore::TextIteratorCopyableText::appendToStringBuilder): Added.
(WebCore::TextIterator::TextIterator): Use more initialization rather than assignment.
Got rid of some local variables.
(WebCore::TextIterator::advance): Removed the m_shouldStop boolean, uneeded.
Many other improvements. Use isTextNode instead of nodeType.
(WebCore::hasVisibleTextNode): Changed this into a file-private helper function
instead of a member function.
(WebCore::TextIterator::handleTextNode): Used references and cut down on type casts.
Gave local variables clearer names.
(WebCore::TextIterator::handleTextBox): More of the same.
(WebCore::TextIterator::handleTextNodeFirstLetter): Ditto.
(WebCore::TextIterator::handleReplacedElement): Ditto.
(WebCore::shouldEmitTabBeforeNode): Ditto.
(WebCore::hasHeaderTag): Added.
(WebCore::shouldEmitNewlinesBeforeAndAfterNode): More of the same.
(WebCore::shouldEmitNewlineAfterNode): Ditto.
(WebCore::shouldEmitNewlineBeforeNode): Ditto.
(WebCore::shouldEmitExtraNewlineForNode): Ditto.
(WebCore::collapsedSpaceLength): Use StringImpl directly instead of using the
deprecatedCharacters function.
(WebCore::TextIterator::shouldRepresentNodeOffsetZero): More like above.
(WebCore::TextIterator::shouldEmitSpaceBeforeAndAfterNode): Ditto.
(WebCore::TextIterator::representNodeOffsetZero): Ditto.
(WebCore::TextIterator::handleNonTextNode): Ditto.
(WebCore::TextIterator::exitNode): Ditto.
(WebCore::TextIterator::emitCharacter): Changed to use the new copyable text class
instead of managing the single character buffer directly here.
(WebCore::TextIterator::emitText): Changed to take a Text& and use the copyable text
class. Added a FIXME about a mistake I noticed.
(WebCore::TextIterator::range): Streamlined and simplified a bit. Updated data
member names to be a bit clearer. This function never returned null before, but there
was a code path that looked like it would; I removed that.
(WebCore::TextIterator::node): Removed unneeded null checks; the range function will
never return a range of null or one with null for a start container.
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): More
like above.
(WebCore::SimplifiedBackwardsTextIterator::advance): Reorganized a bit and removed
m_shouldStop.
(WebCore::SimplifiedBackwardsTextIterator::handleTextNode): More of the same.
(WebCore::SimplifiedBackwardsTextIterator::handleFirstLetter): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::exitNode): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::advanceRespectingRange): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::range): Ditto.
(WebCore::CharacterIterator::CharacterIterator): Ditto.
(WebCore::CharacterIterator::range): Ditto. No need for ASSERT_NO_EXCEPTION.
(WebCore::CharacterIterator::advance): Ditto.
(WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator): Ditto.
(WebCore::BackwardsCharacterIterator::range): Ditto.
(WebCore::BackwardsCharacterIterator::advance): Ditto.
(WebCore::WordAwareIterator::WordAwareIterator): Ditto.
(WebCore::WordAwareIterator::advance): Use copyableText for m_previousText, fixing
the FIXME that I wrote in here before.
(WebCore::WordAwareIterator::text): Ditto.
(WebCore::containsKanaLetters): Changed to quickly return false when the pattern
is all Latin-1 rather than expanding to 16-bit just to check.
(WebCore::SearchBuffer::SearchBuffer): Iterate the target using the string operator[]
instead of using deprecatedCharacters.
(WebCore::SearchBuffer::append): Do the folding of quote marks and hyphens one character
at a time as we move characters into the buffer instead of in a separate loop.
(WebCore::TextIterator::rangeLength): Updated for changes eslwehere.
(WebCore::TextIterator::subrange): Ditto.
(WebCore::isInsideReplacedElement): Ditto. Also streamlined and removed unneeded null check.
(WebCore::TextIterator::rangeFromLocationAndLength): Updated for changes elsewhere and
removed unneeded ASSERT_NO_EXCEPTION.
(WebCore::plainText): Ditto.
(WebCore::collapsedToBoundary): Ditto.
(WebCore::findPlainText): Ditto.

* editing/TextIterator.h: Changed many functions to take references instead of pointers.
Added TextIteratorCopyableText, to represent the current text in a TextIterator in a form
that can be safely copied and used after further iteration. Reorganized member functions so
they are in the same order in all the classes. Changed TextIterator to use
TextIteratorCopyableText. Removed many unused functions, including:
- TextIterator::length
- TextIterator::deprecatedTextIteratorCharacters
- TextIterator::characterAt
- SimplifiedBackwardsTextIterator::length
- CharacterIterator::length
- CharacterIterator::string
- WordAwareIterator::length
- WordAwareIterator::range

* editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::appendTrailingWhitespace): Pass reference rather than pointer.
Use text().length() instead of length(). Check atEnd() before using CharacterIterator, since
iterator member functions don't work when at the end.
* editing/VisibleUnits.cpp:
(WebCore::previousBoundary): Ditto.
(WebCore::nextBoundary): Ditto.
* editing/htmlediting.cpp:
(WebCore::visiblePositionForIndexUsingCharacterIterator): Ditto.
* page/ios/FrameIOS.mm:
(WebCore::Frame::indexCountOfWordPrecedingSelection): Ditto.
(WebCore::Frame::wordsInCurrentParagraph): Ditto.

LayoutTests:

* dom/xhtml/level3/core/nodelookupnamespaceuri14-expected.txt: Updated to expect
the CDATA section to be included in the text output of the test. This changed because
TextIterator now treats CDATA sections like other text, just as rendering code does.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165385 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION: js/dom/create-lots-of-workers.html frequently crashes
ap@apple.com [Mon, 10 Mar 2014 18:18:08 +0000 (18:18 +0000)]
REGRESSION: js/dom/create-lots-of-workers.html frequently crashes
(sometimes in js/dom/cross-frame-bad-time.html)
https://bugs.webkit.org/show_bug.cgi?id=129758

* platform/mac-wk1/TestExpectations: Removed an older incorrect expectation.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165384 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: show a debugging-oriented dashboard when scripts pause
bburg@apple.com [Mon, 10 Mar 2014 18:15:09 +0000 (18:15 +0000)]
Web Inspector: show a debugging-oriented dashboard when scripts pause
https://bugs.webkit.org/show_bug.cgi?id=129913

Reviewed by Timothy Hatcher.

Using the dashboard swapping functionality just added, show a debugger dashboard
whenever the debugger pauses, and hide it when it resumes. The debugger manager
already coalesces pause/resume events across stepping commands.

The dashboard itself is straightforward, with the exception of how it uses the
navigation bar buttons. Since buttons from the same URL can't be reused if they
are bezeled, we don't bezel our button, and set the button image as the glyph mask
instead of the background image. This lets us easily animate the glyph shape.

We also have to more forcefully declare a bunch of icon rules that would otherwise
be messed up by the toolbar's icon rules (whereas we want to mostly emulate navigation
bar icon styles).

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Base/Main.js:
(WebInspector.loaded):
(WebInspector.contentLoaded):
(WebInspector._debuggerDidPause):
(WebInspector._debuggerDidResume):
* UserInterface/Controllers/DashboardManager.js:
(WebInspector.DashboardManager):
* UserInterface/Main.html:
* UserInterface/Models/DebuggerDashboard.js: Added.
(WebInspector.DebuggerDashboard):
* UserInterface/Views/ButtonNavigationItem.css:
(.navigation-bar .item.button.suppress-emboss > .glyph):
* UserInterface/Views/ButtonNavigationItem.js:
(WebInspector.ButtonNavigationItem.prototype._updateImage):
* UserInterface/Views/DashboardView.js:
(WebInspector.DashboardView):
* UserInterface/Views/DebuggerDashboardView.css: Added.
(.toolbar .dashboard.debugger):
(.dashboard.debugger > .message):
(.dashboard.debugger .navigation-bar):
(.toolbar:not(.small-size) .dashboard.debugger .navigation-bar):
(.dashboard.debugger .navigation-bar .item.button):
(.dashboard.debugger .navigation-bar .item.button > .glyph):
(@-webkit-keyframes pulse-pause-button):
(to):
(.dashboard.debugger > .divider):
(.dashboard.debugger > div):
(.dashboard.debugger > .location > :first-child):
(.toolbar:not(.small-size) .dashboard.debugger > .location :not(:first-child)):
(.dashboard.debugger > .location img.icon):
(.dashboard.debugger > .location .function-name):
(.dashboard.debugger > .location .function-name::after):
(.dashboard.debugger > .location .go-to-link):
(.toolbar.collapsed .dashboard.debugger > :not(.message):not(.navigation-bar )):
(.toolbar.small-size .dashboard.debugger > .message):
(.toolbar.small-size .dashboard.debugger > .location > :first-child):
* UserInterface/Views/DebuggerDashboardView.js: Added.
(WebInspector.DebuggerDashboardView):
(WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
(WebInspector.DebuggerDashboardView.prototype._resumeButtonClicked):
* UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165383 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWeb Inspector: convert the dashboard toolbar item to support multiple dashboards
bburg@apple.com [Mon, 10 Mar 2014 18:07:29 +0000 (18:07 +0000)]
Web Inspector: convert the dashboard toolbar item to support multiple dashboards
https://bugs.webkit.org/show_bug.cgi?id=129898

Reviewed by Timothy Hatcher.

We want to ability to swap in and out different dashboard contents depending on
circumstances such as debugger activity and page loading. This patch converts the
existing hard-coded dashboard implementation to follow the container-based approach
used by WebInspector.ContentViewContainer.

As part of the refactoring, we introduce dashboard model objects to store persistent
dashboard data. Some CSS has also been split between the container and specific dashboard.

* UserInterface/Controllers/DashboardManager.js:
(WebInspector.DashboardManager):
(WebInspector.DashboardManager.prototype.get toolbarItem):
* UserInterface/Main.html:
* UserInterface/Models/DefaultDashboard.js: Copied from Source/WebInspectorUI/UserInterface/Controllers/DashboardManager.js.
(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype.get resourcesCount):
(WebInspector.DefaultDashboard.prototype.set resourcesCount):
(WebInspector.DefaultDashboard.prototype.get resourcesSize):
(WebInspector.DefaultDashboard.prototype.set resourcesSize):
(WebInspector.DefaultDashboard.prototype.get time):
(WebInspector.DefaultDashboard.prototype.set time):
(WebInspector.DefaultDashboard.prototype.get logs):
(WebInspector.DefaultDashboard.prototype.set logs):
(WebInspector.DefaultDashboard.prototype.get errors):
(WebInspector.DefaultDashboard.prototype.set errors):
(WebInspector.DefaultDashboard.prototype.get issues):
(WebInspector.DefaultDashboard.prototype.set issues):
(WebInspector.DefaultDashboard.prototype._dataDidChange):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._recordingStopped):
(WebInspector.DefaultDashboard.prototype._resourceWasAdded):
(WebInspector.DefaultDashboard.prototype._frameWasAdded):
(WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
(WebInspector.DefaultDashboard.prototype._startUpdatingTime):
(WebInspector.DefaultDashboard.prototype._stopUpdatingTime):
(WebInspector.DefaultDashboard.prototype._updateTime):
(WebInspector.DefaultDashboard.prototype._consoleMessageAdded):
(WebInspector.DefaultDashboard.prototype._consoleMessageWasRepeated):
(WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
(WebInspector.DefaultDashboard.prototype._consoleWasCleared):
* UserInterface/Views/DashboardContainerView.css: Added.
(.toolbar .dashboard-container):
(body.window-inactive .toolbar .dashboard-container):
(body.javascript .toolbar .dashboard-container):
(.toolbar.normal-size.icon-and-label-vertical .dashboard-container):
(.toolbar.small-size.icon-and-label-horizontal .dashboard-container):
(.toolbar.normal-size.icon-and-label-horizontal .dashboard-container):
(.toolbar .dashboard-container):
(.toolbar .dashboard):
(.toolbar .dashboard.visible):
(.toolbar .dashboard.slide-out-up):
(.toolbar .dashboard.slide-out-down):
(.toolbar .dashboard.slide-in-up):
(.toolbar .dashboard.slide-in-down):
(@-webkit-keyframes slide-top-edge):
(to):
(@-webkit-keyframes slide-bottom-edge):
* UserInterface/Views/DashboardContainerView.js: Added.
(WebInspector.DashboardContainerView):
(WebInspector.DashboardContainerView.prototype.get toolbarItem):
(WebInspector.DashboardContainerView.prototype.get currentDashboardView):
(WebInspector.DashboardContainerView.prototype.showDashboardViewForRepresentedObject):
(WebInspector.DashboardContainerView.prototype._dashboardViewForRepresentedObject):
(WebInspector.DashboardContainerView.prototype._showDashboardView):
* UserInterface/Views/DashboardView.css: Removed.
* UserInterface/Views/DashboardView.js:
(WebInspector.DashboardView):
(WebInspector.DashboardView.prototype.get element):
(WebInspector.DashboardView.prototype.get parentContainer):
(WebInspector.DashboardView.prototype.get representedObject):
(WebInspector.DashboardView.prototype.shown):
(WebInspector.DashboardView.prototype.hidden):
* UserInterface/Views/DefaultDashboardView.css: Added.
(body.web .toolbar.collapsed .dashboard.default > .logs):
(body.javascript .toolbar .dashboard.default > .resourcesCount):
(.toolbar .dashboard.default):
(.toolbar .dashboard.default > .item):
(.toolbar .dashboard.default > .resourcesSize):
(.toolbar .dashboard.default > .item.enabled:hover):
(.toolbar .dashboard.default > .item.enabled:active):
(.toolbar .dashboard.default > .item > *):
(.toolbar .dashboard.default > .item > img):
(.toolbar .dashboard.default > .item.enabled > img):
(.toolbar .dashboard.default > .item.enabled:hover > img):
(.toolbar .dashboard.default > .item > div):
(.toolbar .dashboard.default > .item.enabled > div):
(.toolbar .dashboard.default > .item.enabled:hover > div):
(.toolbar .dashboard.default > .resourcesCount > img):
(.toolbar .dashboard.default > .time > img):
(.toolbar .dashboard.default > .logs > img):
(.toolbar .dashboard.default > .resourcesSize > img):
(.toolbar .dashboard.default > .errors > img):
(.toolbar .dashboard.default > .errors.enabled > img):
(.toolbar .dashboard.default > .errors.enabled:hover > img):
(.toolbar .dashboard.default > .errors.enabled > div):
(.toolbar .dashboard.default > .errors.enabled:hover > div):
(.toolbar .dashboard.default > .issues > img):
(.toolbar .dashboard.default > .issues.enabled > img):
(.toolbar .dashboard.default > .issues.enabled:hover > img):
(.toolbar .dashboard.default > .issues.enabled > div):
(.toolbar .dashboard.default > .issues.enabled:hover > div):
(.toolbar .dashboard.default > .item.pulsing):
(@-webkit-keyframes console-item-pulse):
(.toolbar.small-size.icon-and-label-horizontal .dashboard.default > .item):
(.toolbar.normal-size.icon-and-label-horizontal .dashboard.default > .item):
* UserInterface/Views/DefaultDashboardView.js: Copied from Source/WebInspectorUI/UserInterface/Views/DashboardView.js.
(WebInspector.DefaultDashboardView):
(WebInspector.DefaultDashboardView.prototype._updateDisplay):
(WebInspector.DefaultDashboardView.prototype._formatPossibleLargeNumber):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem.):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem.set item):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem):
(WebInspector.DefaultDashboardView.prototype._itemWasClicked):
(WebInspector.DefaultDashboardView.prototype._resourcesWasClicked):
(WebInspector.DefaultDashboardView.prototype._networkItemWasClicked):
(WebInspector.DefaultDashboardView.prototype._consoleItemWasClicked):
(WebInspector.DefaultDashboardView.prototype.animationEnded):
(WebInspector.DefaultDashboardView.prototype._setConsoleItemValue):
(WebInspector.DefaultDashboardView.prototype._setItemEnabled):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165382 268f45cc-cd09-0410-ab3c-d52691b4dbfc