Web Inspector: Restore Helvetica as the dashboard font in legacy mode
https://bugs.webkit.org/show_bug.cgi?id=135886

Reviewed by Joseph Pecoraro.

* UserInterface/Views/DefaultDashboardView.css:
(body.mac-platform.legacy .toolbar .dashboard.default > .item):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172525 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Workaround a NSWindow change to the title bar.
https://bugs.webkit.org/show_bug.cgi?id=135880

Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

* UserInterface/Base/Main.js:
(WebInspector._updateToolbarHeight): Don't call in legacy mode.

* UserInterface/Views/DashboardContainerView.css:
(.toolbar .dashboard-container):
(.toolbar .dashboard):
Drive-by fix some errant drop-shadows. The transparent border was pushing the inset top
drop shadow down when it shouldn't. Remove duplicate background and shadow.

* UserInterface/Views/Main.css:
(body): Set the background white, never needs to be transparent now.
(body.mac-platform.legacy:not(.docked)): Set background to transparent when not docked in legacy.
(body.docked.bottom): Update border color.
(body.docked.right): Ditto.
(body.docked.bottom.mac-platform.legacy): Keep old border color.
(body.docked.right.mac-platform.legacy): Ditto.

* UserInterface/Views/Toolbar.css:
(.toolbar): Set a default border and background gradient.
(body.window-inactive .toolbar): No gradient but use a solid color when inactive.
(body.mac-platform:not(.legacy):not(.docked) .toolbar): Padding on the top for the title bar.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Account for title bar height.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Ditto.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Ditto.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Ditto.
(body.mac-platform.legacy .toolbar): No inset shadow in legacy when not docked.
(body.mac-platform.legacy.docked .toolbar): Restore legacy border color.
(body.mac-platform.legacy:not(.docked) .toolbar .item.button > .label): Only disable sub-pixel antialiasing on legacy!
(body.mac-platform.legacy.window-inactive .toolbar): Restore legacy border color.

Source/WebKit/mac:

* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::setToolbarHeight): Only call setContentBorderThickness: on 10.9 and earlier.
(-[WebInspectorWindowController init]): Only call setDrawsBackground: on 10.9 and earlier.
(-[WebInspectorWindowController window]): Set titlebarAppearsTransparent on 10.10.
Only call border thickness APIs on 10.9 and earlier.

Source/WebKit2:

* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::createInspectorWindow): Set titlebarAppearsTransparent on 10.10.
Only call border thickness APIs on 10.9 and earlier.
(WebKit::WebInspectorProxy::platformCreateInspectorPage): Only call setDrawsBackground: on 10.9 and earlier.
(WebKit::WebInspectorProxy::platformSetToolbarHeight): Only call setContentBorderThickness: on 10.9 and earlier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172526 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Timeline Close buttons can use polish for new and legacy styles
https://bugs.webkit.org/show_bug.cgi?id=135870

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

* UserInterface/Images/Legacy/Close.svg:
Ensure this has fill colors in tree selections.

* UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline > .timelines-content .close-button):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content .close-button):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button):
Size the close-button for the top overviews differently in new styles (14x14) and legacy (12x12).

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172527 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid making new active service overlay highlights while the mouse is down
https://bugs.webkit.org/show_bug.cgi?id=135872
<rdar://problem/17982341>

Reviewed by Enrica Casucci.

* WebProcess/WebPage/ServicesOverlayController.h:
* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::remainingTimeUntilHighlightShouldBeShown):
(WebKit::ServicesOverlayController::mouseEvent):
If the mouse is pressed or it's been less than 200ms since the mouse went up,
don't allow the highlight to change. We apply the mouse-is-pressed rule to telephone
number highlights as well, unlike the rest of the hysteresis logic.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172528 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactor ShapeOutsideInfo so it isn't mutated for each line
https://bugs.webkit.org/show_bug.cgi?id=135781

Reviewed by Zoltan Horvath.

Encapsulate the per line state into a ShapeOutsideDeltas object.
updateDeltasForContainingBlockLine has been renamed to
computeDeltasForContainingBlockLine, and it returns an instance of the
ShapeOutsideDeltas object for that line. This object is cached, but
none of the functionality of ShapeOutsideInfo is dependant on any line
specific data anymore.

No new tests, no behavior change.

* rendering/FloatingObjects.cpp:
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
    Update to take a FloatingObject reference because the FloatingObject cannot be null.
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
    Ditto.
(WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): Pass FloatingObject to
    updateOffsetIfNeeded as a reference, since it cannot be null.
(WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
    Use ShapeOutsideDeltas object to calculate the offset and take the FloatingObject as a
    reference.
(WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
    Ditto.
(WebCore::shapeInfoForFloat): Deleted.
* rendering/line/LineWidth.cpp:
(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update to use ShapeOutsideDeltas object.
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Return a ShaoeOutsideDeltas object
    instead of storing line specific data in instance variables.
(WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Deleted.
* rendering/shapes/ShapeOutsideInfo.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Incorrect border colors in event listeners sections in details sidebar
https://bugs.webkit.org/show_bug.cgi?id=135891

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

* UserInterface/Views/DetailsSection.css:
(.details-section .details-section > .header):
(.details-section .details-section:not(.collapsed) > .header):
Remove box-shadow and replace with a bottom border.

(body.mac-platform.legacy .details-section .details-section.collapsed > .header):
(.details-section .details-section.collaspsed > .header): Deleted.
Collapsed was spelled incorrectly so this was not applying properly before.
But correct this for legacy because legacy still uses a box-shadow.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: "No Filter Results" view only shows once, does not show again
https://bugs.webkit.org/show_bug.cgi?id=135892

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

* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder):
We were checking at the wrong level for a parent. Check if the root
placeholder element has a parent or not.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172531 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Make JavaScriptCore and bmalloc build with the public SDK
https://bugs.webkit.org/show_bug.cgi?id=135848

Reviewed by Geoffrey Garen.

Source/bmalloc:

* bmalloc/BPlatform.h: Added macro BPLATFORM_IOS_SIMULATOR, which evaluates to true
when building for the iOS Simulator.
* bmalloc/PerThread.h: Use pthread_machdep.h code path when building for iOS Simulator
using the public SDK.
(_pthread_setspecific_direct): Added; only defined when building for the iOS Simulator
using the public SDK.
(_pthread_getspecific_direct): Added; only defined when building for the iOS Simulator
using the public SDK.

Source/JavaScriptCore:

* API/JSBase.h: Declare NSMap functions with external linkage when building for iOS without the
header <Foundation/NSMapTablePriv.h>.
* inspector/remote/RemoteInspector.mm: Define XPC functions with external linkage when building
without the system header <xpc/xpc.h>.
* inspector/remote/RemoteInspectorXPCConnection.h: Define xpc_connection_t and xpc_object_t when building
without the system header <xpc/xpc.h>.
* inspector/remote/RemoteInspectorXPCConnection.mm: Declare XPC functions with external linkage when
building without without the system header <xpc/xpc.h>.
(Inspector::RemoteInspectorXPCConnection::closeOnQueue): Fix code style; use nullptr instead of NULL.
(Inspector::RemoteInspectorXPCConnection::sendMessage): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172532 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Inline DataGrid inside details sidebar has double thick top border with legacy styles
https://bugs.webkit.org/show_bug.cgi?id=135894

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

* UserInterface/Views/DetailsSection.css:
(body.mac-platform.legacy .details-section:not(.collapsed) .data-grid.inline):
In legacy styles the details-section header always has a 1px bottom border.
In all styles, an inline data grid had a 1px border everywhere. So, handle
this specific case by removing the top border of an inline data grid
that is inside an expanded details section.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172533 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK1] A fixed-position <img> may not show on page load
https://bugs.webkit.org/show_bug.cgi?id=135893

Reviewed by Tim Horton.

Source/WebCore:

A position:fixed image could fail to display because we didn't make a
compositing layer for it under some circumstances. This can happen if
RenderLayerCompositor::requiresCompositingForPosition() runs before the
image is loaded, in which cause the layer is zero-sized, so does not get
composited.

When the image loads, there was no code path that ensured that compositing
would be re-evaluated (unlike size changes due to style updates). Fix by
having RenderLayer::contentChanged() also check for ImageChanged.

Test: compositing/fixed-image-loading.html

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

LayoutTests:

Test with a position:fixed image. Note that the test has to force layout
early on to test the bug.

* compositing/fixed-image-loading-expected.txt: Added.
* compositing/fixed-image-loading.html: Added.

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