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

Timeline



Aug 2, 2014:

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

Support both window and view based video fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=135525

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-08-02
Reviewed by Simon Fraser.

Source/WebCore:
Presenting in a separate window gives greater flexibility for rotation separately from the app.
Presenting in the same window works better if the interface is rehosted in another process.

  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(-[WebVideoFullscreenController enterFullscreen:]): Use clientRect instead of screenRect.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h: Add m_window and m_parentView.
  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVVideoLayer setBounds:]): Parent view might not be fullscreen; use window instead.
(WebVideoFullscreenInterfaceAVKit::setupFullscreen): Conditionally create UIWindow and UIViewController for fullscreen.
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): Video, not the container should have black background.
(WebVideoFullscreenInterfaceAVKit::exitFullscreen): Conditionally translate finalRect.
(WebVideoFullscreenInterfaceAVKit::cleanupFullscreen): Clean up UIWindow and force status bar to correct orientation.
(WebVideoFullscreenInterfaceAVKit::invalidate): Clean up UIWindow.
(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): Hide window and exit without animation.

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

(WebVideoFullscreenModelMediaElement::setVideoFullscreenLayer): Apply frame, because it may have been set before the layer.

Source/WebKit/mac:
Parenting in the view instead of the window gives the fullscreen implementation more latitude
in how it implements the animation.

  • WebView/WebView.mm:

(-[WebView _enterFullscreenForNode:]): Use view instead of window.

Source/WebKit2:
Parenting in the view instead of the window gives the fullscreen implementation more latitude
in how it implements the animation.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Use view instead of window.

  • WebProcess/ios/WebVideoFullscreenManager.mm:

(WebKit::clientRectForNode): Use client rect instead of screen rect.
(WebKit::WebVideoFullscreenManager::enterFullscreenForNode): ditto
(WebKit::WebVideoFullscreenManager::exitFullscreenForNode): ditto
(WebKit::screenRectForNode): Deleted.

1:51 PM Changeset in webkit [171972] by benjamin@webkit.org
  • 8 edits in trunk/Source/WebCore

Update the SearchFieldResultsButtonElement shadow Pseudo Id when HTMLInputElement's maxResults change
https://bugs.webkit.org/show_bug.cgi?id=135491

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-02
Reviewed by Ryosuke Niwa.

Replace the shadowPseudoId() override + manual style invalidation by the generic pseudo ID update.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):

  • html/InputType.cpp:

(WebCore::InputType::maxResultsAttributeChanged):

  • html/InputType.h:
  • html/SearchInputType.cpp:

(WebCore::SearchInputType::SearchInputType):
(WebCore::updateResultButtonPseudoType):
(WebCore::SearchInputType::maxResultsAttributeChanged):
(WebCore::SearchInputType::createShadowSubtree):
(WebCore::SearchInputType::destroyShadowSubtree):

  • html/SearchInputType.h:
  • html/shadow/TextControlInnerElements.cpp:

(WebCore::SearchFieldResultsButtonElement::shadowPseudoId): Deleted.

  • html/shadow/TextControlInnerElements.h:
1:47 PM Changeset in webkit [171971] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Add warnings for the buggy implementations of shadowPseudoId()
https://bugs.webkit.org/show_bug.cgi?id=135477

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-08-02
Reviewed by Ryosuke Niwa.

Dean is going to look into fixing media element styling.
In the meantime, add warnings to prevent this from spreading.

  • dom/Element.h:
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::shadowPseudoId):
(WebCore::SliderContainerElement::shadowPseudoId):

11:35 AM Changeset in webkit [171970] by Brent Fulgham
  • 2 edits in trunk/Source/ThirdParty/ANGLE

[Win] Unreviewed build fix.

  • src/libGLESv2/renderer/d3d11/BufferStorage11.cpp:

(rx::BufferStorage11::copyData): Help compiler make
decision about types.

11:04 AM Changeset in webkit [171969] by dfarler@apple.com
  • 5 edits in trunk/Tools

build-webkittestrunner doesn't build the app target for iOS SDKs
https://bugs.webkit.org/show_bug.cgi?id=135433

Reviewed by Dan Bernstein.

  • Scripts/build-dumprendertree: Build the app target on iOS.
  • Scripts/build-webkittestrunner: Build the app target on iOS.
  • Scripts/webkitdirs.pm: Add -sdk flags when building for iOS.

(buildXCodeProject):

  • Scripts/webkitpy/port/ios.py: Use --sdk flags instead of SDKROOT.

(IOSSimulatorPort._build_driver_flags):

11:03 AM Changeset in webkit [171968] by dfarler@apple.com
  • 2 edits
    1 delete in trunk/Tools

Remove iOS Perl DumpRenderTree support target
https://bugs.webkit.org/show_bug.cgi?id=135271

Reviewed by Dan Bernstein.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Remove the target.
  • DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupport.c: Removed.
  • DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupportPregenerated.pm: Removed.
  • DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupport_wrapPregenerated.c: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/Changes: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/IPhoneSimulatorNotification.xs: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/MANIFEST: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/Makefile.PL: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/README: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/lib/IPhoneSimulatorNotification.pm: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/ppport.h: Removed.
  • DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/t/IPhoneSimulatorNotification.t: Removed.
  • DumpRenderTree/ios/PerlSupport/Makefile: Removed.
11:01 AM Changeset in webkit [171967] by dfarler@apple.com
  • 1 edit
    1 delete in trunk/Tools

Remove old-run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=135374

Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests: Removed.
10:34 AM Changeset in webkit [171966] by mitz@apple.com
  • 2 edits in trunk/Tools

prepare-ChangeLog --no-write shouldn’t require ChangeLog to exist
https://bugs.webkit.org/show_bug.cgi?id=135542

Reviewed by Tim Horton.

  • Scripts/prepare-ChangeLog:

(main): Pass $writeChangeLogs for the new requireChangeLogToExist parameter of
findChangeLogs.
(findChangeLogs): Don’t require a ChangeLog file to exist if unless the
requireChangeLogToExist argument is true.

Aug 1, 2014:

11:06 PM Changeset in webkit [171965] by mitz@apple.com
  • 4 edits in trunk/Source

<rdar://problem/17891752> [iOS] WebKit links against libraries it doesn’t use
https://bugs.webkit.org/show_bug.cgi?id=135536

Reviewed by Tim Horton.

Source/WebKit/mac:

  • Configurations/WebKitLegacy.xcconfig: Removed -framework MobileAsset from

OTHER_LDFLAGS_iphoneos.

Source/WebKit2:

  • Configurations/WebKit.xcconfig: Removed -lassertion_extension and -framework MobileAsset

from FRAMEWORK_AND_LIBRARY_LDFLAGS_iphonesimulator.

10:10 PM Changeset in webkit [171964] by commit-queue@webkit.org
  • 20 edits in trunk/Source/WebCore

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

Caused GTK assertions and test failures (Requested by smfr on
#webkit).

Reverted changeset:

"Clean up image subsampling code, make it less iOS-specific"
https://bugs.webkit.org/show_bug.cgi?id=134916
http://trac.webkit.org/changeset/171957

9:13 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
9:00 PM Changeset in webkit [171963] by clopez@igalia.com
  • 3 edits
    2 adds in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Report and mark new failures and flaky tests after 171341, r171591, r171567 and others.
  • platform/gtk/fast/css/viewport-units-dynamic-expected.txt: Added. Rebaseline after r171567.
  • platform/gtk/fast/multicol/pagination/RightToLeft-max-width-expected.txt: Added. Rebaseline after r171609.
  • platform/gtk/svg/zoom/page/zoom-foreignObject-expected.txt: Rebaseline after 171341.
5:46 PM Changeset in webkit [171962] by commit-queue@webkit.org
  • 2 edits in trunk/Source

[CMake] Allow CMake to find GLib on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=132530

Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-08-01
Reviewed by Gustavo Noronha Silva.

On FreeBSD, glibconfig.h is at /usr/local/include/glib-2.0/glibconfig.h.

  • Source/cmake/FindGLIB.cmake:
5:10 PM Changeset in webkit [171961] by clopez@igalia.com
  • 4 edits in trunk/Source

REGRESSION(r171942): [CMAKE] [GTK] build broken (clean build).
https://bugs.webkit.org/show_bug.cgi?id=135522

Reviewed by Martin Robinson.

Source/JavaScriptCore:

  • CMakeLists.txt: Output the inspector headers inside inspector

subdirectory.

Source/WebCore:
No new tests required, no new functionality.

  • CMakeLists.txt: Add missing include to the inspector headers

and fix the path to InspectorJSTypeBuilders.h

5:00 PM Changeset in webkit [171960] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix resource leak in FillLayersPropertyWrapper object member
https://bugs.webkit.org/show_bug.cgi?id=135462

Reviewed by Andreas Kling.

Fix leak of m_fillLayerPropertyWrapper by using unique_ptr<>.
Based on patch by Przemyslaw Kuczynski.

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):

4:57 PM Changeset in webkit [171959] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

[iOS WK2] Add extension read permission to network sandbox profile
<rdar://problem/17671574>

Reviewed by Alexey Proskuryakov and Oliver Hunt.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
4:55 PM Changeset in webkit [171958] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed post-review test fixup

  • editing/pasteboard/img-srcset-copy-paste-canonicalization.html:
4:22 PM Changeset in webkit [171957] by Simon Fraser
  • 20 edits in trunk/Source/WebCore

Clean up image subsampling code, make it less iOS-specific
https://bugs.webkit.org/show_bug.cgi?id=134916

Reviewed by Dean Jackson.

Compile the image subsampling code on both Mac and iOS, and make it more platform
neutral in general. Add a setting to allow it to be enabled on Mac for testing.

The most significant changes are in ImageSourceCG and BitmapImageCG. CG's ImageSource
is no longer stateful with respect to subsampling; its functions take a SubsamplingLevel
when appropriate. CG's BitmapImage now determines which level of subsampling to use
for a given frame, storing the subsampling level in the frame data. It can replace
an aggressively subsampled frame with a less subsampled frame if necessary.

To reduce the chances of subsampling affecting rendering, BitmapImage::size() now
always returns the non-subsampled size; subsampling is strictly internal to BitmapImage.
BitmapImage::draw() takes care of scaling the srcRect for subsampled images.

iOS had a code path that enabled caching of frame metadata in BitmapImage without
actually decoding the frame; make this cross-platform.

  • WebCore.exp.in: Changed signature for GraphicsContext::drawNativeImage().
  • WebCore.xcodeproj/project.pbxproj: Added ImageSource.cpp, which is not built

for Cocoa but useful for reference.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::imageSizeForRenderer): Remove iOS-specific subsampling code.
(WebCore::CachedImage::createImage): Call setAllowSubsampling() on the image if we
can get to Settings (m_loader is null for image documents).
(WebCore::CachedImage::currentFrameKnownToBeOpaque): This forced decode always
caused creation of the non-subsampled image, so remove it. There's no reason to
eagerly decode the frame here.

  • loader/cache/CachedImage.h: Fix comment.
  • page/Settings.cpp: Add defaultImageSubsamplingEnabled, true for iOS and false for Mac.
  • page/Settings.in: Added imageSubsamplingEnabled.
  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::BitmapImage): Init some more things. Default m_allowSubsampling to
true for iOS to catch images created in code paths where we can't get to Settings.
(WebCore::BitmapImage::haveFrameAtIndex): Handy helper.
(WebCore::BitmapImage::cacheFrame): Now takes the subsampling level and whether to cache
just metadata, or also the frame.
(WebCore::BitmapImage::didDecodeProperties): No need to store originalSize.
(WebCore::BitmapImage::updateSize): When we get the size for the first time, call
determineMinimumSubsamplingLevel() to choose a reasonable subsampling level which takes
platform-specific limits into account.
(WebCore::BitmapImage::dataChanged): Comment.
(WebCore::BitmapImage::ensureFrameIsCached): Take ImageFrameCaching into account.
(WebCore::BitmapImage::frameAtIndex): Choose a subsampling level given the scale,
then determine if we can use the currently cached frame, or whether we should resample.
(WebCore::BitmapImage::frameIsCompleteAtIndex): Caching m_isComplete is now done when caching
frame metadata.
(WebCore::BitmapImage::frameDurationAtIndex):
(WebCore::BitmapImage::frameHasAlphaAtIndex): The 'true' return is the safe return value.
(WebCore::BitmapImage::frameOrientationAtIndex): Caching m_orientation is now done when caching
frame metadata.
(WebCore::BitmapImage::cacheFrameInfo): Deleted.
(WebCore::BitmapImage::originalSize): Deleted.
(WebCore::BitmapImage::originalSizeRespectingOrientation): Deleted.
(WebCore::BitmapImage::currentFrameSize): Deleted.
(WebCore::BitmapImage::ensureFrameInfoIsCached): Deleted.

  • platform/graphics/BitmapImage.h:

(WebCore::FrameData::FrameData):

  • platform/graphics/GraphicsContext.h: No need to pass a scale param now.
  • platform/graphics/ImageSource.cpp: Non-Cocoa changes.

(WebCore::ImageSource::subsamplingLevelForScale):
(WebCore::ImageSource::allowSubsamplingOfFrameAtIndex):
(WebCore::ImageSource::size):
(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::createFrameAtIndex):
(WebCore::ImageSource::frameBytesAtIndex):

  • platform/graphics/ImageSource.h: No longer stores subsampling state.

(WebCore::ImageSource::isSubsampled): Deleted.

  • platform/graphics/cairo/BitmapImageCairo.cpp:

(WebCore::BitmapImage::determineMinimumSubsamplingLevel):

  • platform/graphics/cg/BitmapImageCG.cpp:

(WebCore::FrameData::clear):
(WebCore::BitmapImage::BitmapImage): Init more members.
(WebCore::BitmapImage::determineMinimumSubsamplingLevel): Choose a minimum subsampling
level for the platform (subsample until the image area falls under a threshold).
(WebCore::BitmapImage::checkForSolidColor): Don't bother decoding frames if the image
is not 1x1. Also take care not to decode a non-subsampled image.
(WebCore::BitmapImage::draw): The actual bug fix is here; remove logic that
computed srcRectForCurrentFrame from m_size and m_originalSize; for some callers
srcRect was computed using the pre-subsampled size, and for others it was the subsampled size.
Instead, scale srcRect by mapping between the non-subsampled size, and the size of the CGImageRef
which is affected by subsampling.
(WebCore::BitmapImage::copyUnscaledFrameAtIndex):

  • platform/graphics/cg/GraphicsContext3DCG.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::extractImage): Remove #ifdeffed code.
(WebCore::GraphicsContext3D::paintToCanvas):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::drawNativeImage): No more weird scaling!

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::draw):

  • platform/graphics/cg/ImageSourceCG.cpp:

(WebCore::ImageSource::ImageSource):
(WebCore::createImageSourceOptions): Helper that always returns a new CFDictionaryRef.
(WebCore::imageSourceOptions): If not subsampling, return the cached CFDictionaryRef, otherwise
make a new options dict and return it.
(WebCore::ImageSource::subsamplingLevelForScale): Helper that returns a subsampling level
between 0 and 3 given a scale.
(WebCore::ImageSource::isSizeAvailable): SkipMetadata is a default value for the param now.
(WebCore::ImageSource::allowSubsamplingOfFrameAtIndex): We turn off subsampling for progressive
JPEGs because of a bug, so need this to know if a frame should be subsampled.
(WebCore::ImageSource::frameSizeAtIndex): The looping to find a subsampling level is now in BitmapImageCG.
(WebCore::ImageSource::orientationAtIndex):
(WebCore::ImageSource::size): Always use a subsampling level of 0 for size().
(WebCore::ImageSource::getHotSpot):
(WebCore::ImageSource::repetitionCount):
(WebCore::ImageSource::createFrameAtIndex): The caller mapped a scale to a level.
(WebCore::ImageSource::frameDurationAtIndex):
(WebCore::ImageSource::frameBytesAtIndex):
(WebCore::ImageSource::imageSourceOptions): Deleted.
(WebCore::ImageSource::originalSize): Deleted.

  • platform/graphics/mac/ImageMac.mm:

(WebCore::BitmapImage::invalidatePlatformData): 0 -> nullptr

  • platform/graphics/wince/ImageWinCE.cpp:

(WebCore::BitmapImage::determineMinimumSubsamplingLevel):

4:20 PM Changeset in webkit [171956] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

Many DOM objects have InterceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero for no reason.
<https://webkit.org/b/135519>

Don't set this structure flag unless the object actually has an override
for getOwnPropertySlotByIndex().

Reviewed by Geoffrey Garen.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestTypedefs.h:
4:14 PM Changeset in webkit [171955] by mmaxfield@apple.com
  • 3 edits in trunk/Source/WebCore

SVG Font kerning can take an early out if the font has no kerning information
https://bugs.webkit.org/show_bug.cgi?id=135524

Reviewed by Dean Jackson.

Rather than calling SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs() again
and again, skip the iteration entirely if every call would return 0.

No new tests because there is no behavior change.

  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGTextRunRenderingContext::applySVGKerning):

  • svg/SVGFontElement.h:
4:10 PM Changeset in webkit [171954] by mitz@apple.com
  • 3 edits in trunk/Tools

commit-log-editor uses a non-standard message format when git index contains no ChangeLog changes
https://bugs.webkit.org/show_bug.cgi?id=135527

Reviewed by Tim Horton.

  • Scripts/commit-log-editor:

In the case of a git repository when there are no changed ChangeLog files, changed to pass
the --delimiters option to prepare-ChangeLog, then process each entry in the output using
commitMessageFromChangeLogEntry.
(commitMessageFromChangeLogEntry): Factored out from createCommitMessage.
(sortKey): Factored out from createCommitMessage.
(createCommitMessage): Changed to use new sortKey and commitMessageFromChangeLogEntry
subroutines.

  • Scripts/prepare-ChangeLog:

(main): Parse new --delimiters option.
(generateNewChangeLogs): When --no-write and --delimiters are both specified, always print
the label before each change log entry, and a "~" delimiter on a new line after each entry.

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

Add some structure related assertions.
<https://webkit.org/b/135523>

Reviewed by Geoffrey Garen.

Adding 2 assertions:

  1. assert that we don't index pass the end of the StructureIDTable. This should never happen, but this assertion will help catch bugs where a bad structureID gets passed in.
  2. assert that cells in MarkedBlock::callDestructor() that are not zapped should have a non-null StructureID. This will help us catch bugs where the other cell header flag bits get set after the cell is zapped, thereby making the cell look like an unzapped cell but has a null structureID.
  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor):

  • runtime/StructureIDTable.h:

(JSC::StructureIDTable::get):

3:47 PM Changeset in webkit [171952] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Inspector highlights clipped at the bottom on the page in WK1 views with
contentInsets
https://bugs.webkit.org/show_bug.cgi?id=135480
-and corresponding-
<rdar://problem/17850323>

Forgot to commit this one very critical part with
http://trac.webkit.org/changeset/171951

  • platform/ScrollView.cpp:

(WebCore::ScrollView::unscaledVisibleContentSizeIncludingObscuredArea):

3:39 PM Changeset in webkit [171951] by Beth Dakin
  • 7 edits in trunk/Source/WebCore

Inspector highlights clipped at the bottom on the page in WK1 views with
contentInsets
https://bugs.webkit.org/show_bug.cgi?id=135480
-and corresponding-
<rdar://problem/17850323>

Reviewed by Simon Fraser.

unscaledTotalVisibleContentSize() was the main function on Mac that was expected
to return the rect representing ALL visible content, including content that might
be in an inset area and obscured by UI elements. This patch re-names that function
to unscaledVisibleContentSizeIncludingObscuredArea(), and that patch makes that
function return the right thing in the platformWidget() case.

Re-name.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::update):

Return platformVisibleContentSizeIncludingObscuredArea() for the platformWidget()
case and re-name.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::unscaledVisibleContentSizeIncludingObscuredArea):

This was just wrong. It was returning the big rectangle instead of the small one
for platformWidget().
(WebCore::ScrollView::unscaledUnobscuredVisibleContentSize):

New platform functions.
(WebCore::ScrollView::platformVisibleContentRectIncludingObscuredArea):
(WebCore::ScrollView::platformVisibleContentSizeIncludingObscuredArea):
(WebCore::ScrollView::unscaledTotalVisibleContentSize): Deleted.

  • platform/ScrollView.h:
  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::platformVisibleContentRectIncludingObscuredArea):
(WebCore::ScrollView::platformVisibleContentSizeIncludingObscuredArea):

  • platform/mac/ScrollViewMac.mm:

(WebCore::ScrollView::platformVisibleContentRect):
(WebCore::ScrollView::platformVisibleContentSize):
(WebCore::ScrollView::platformVisibleContentRectIncludingObscuredArea):
(WebCore::ScrollView::platformVisibleContentSizeIncludingObscuredArea):

Re-name.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
(WebCore::RenderLayerCompositor::ensureRootLayer):

3:33 PM Changeset in webkit [171950] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

SVGGlyph wastes space due to padding
https://bugs.webkit.org/show_bug.cgi?id=135520

Reviewed by Dean Jackson.

Rearrange members in SVGGlyph so there is no wasted padding space.

No new tests because there is no behavior change.

  • platform/graphics/SVGGlyph.h:

(WebCore::SVGGlyph::SVGGlyph):

1:58 PM Changeset in webkit [171949] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

URTBF after r171946 to fix non-Apple builds.

  • bytecode/InlineCallFrameSet.cpp:
1:46 PM Changeset in webkit [171948] by Beth Dakin
  • 3 edits in trunk/LayoutTests

REGRESSION (r171891): platform/mac/fast/scrolling/scroll-select-bottom-test.html
failing
https://bugs.webkit.org/show_bug.cgi?id=135485

Now that WK1 really tests contentInset, this test no longer works on platforms
that do not support the real contentInset

  • platform/mac-wk1/TestExpectations:
  • platform/mac/TestExpectations:
1:43 PM Changeset in webkit [171947] by betravis@adobe.com
  • 8 edits in trunk

[Feature Queries] Enable Feature Queries on EFL/GTK
https://bugs.webkit.org/show_bug.cgi?id=134902

Reviewed by Benjamin Poulain.

.:
Enable CSS Feature Queries by default on the EFL and GTK
platforms.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:

Tools:
Turn the feature on by default for the build script.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:
Resume running the CSS Feature Query tests on the EFL and GTK platforms.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
1:17 PM Changeset in webkit [171946] by ggaren@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

CodeBlock fails to visit the Executables of its InlineCallFrames
https://bugs.webkit.org/show_bug.cgi?id=135471

Patch by Mark Hahnenberg <mhahnenberg@apple.com> on 2014-08-01
Reviewed by Geoffrey Garen.

CodeBlock needs to visit its InlineCallFrames' owner Executables. If it doesn't, they
can be prematurely collected and cause crashes.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::stronglyVisitStrongReferences):

  • bytecode/CodeOrigin.h:

(JSC::InlineCallFrame::visitAggregate):

  • bytecode/InlineCallFrameSet.cpp:

(JSC::InlineCallFrameSet::visitAggregate):

  • bytecode/InlineCallFrameSet.h:
1:01 PM Changeset in webkit [171945] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

Build fix for 32-bit after r171926.

  • MiniBrowser/mac/SettingsController.h:
  • MiniBrowser/mac/SettingsController.m:
12:42 PM Changeset in webkit [171944] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[Media iOS] Ensure there is a nice default fallback for missing wireless target names
https://bugs.webkit.org/show_bug.cgi?id=135488
<rdar://problem/17879156>

Reviewed by Eric Carlson.

We occasionally run into cases where this.host.externalDeviceDisplayName
is empty or null, creating a pretty ugly/confusing string in the
wireless playback status screen.

If this happens, we should default to using "Apple TV".

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.updateWirelessPlaybackStatus): Check if the externalDeviceDisplayName
is empty or null, and fall back to "Apple TV" if so.

12:19 PM Changeset in webkit [171943] by oliver@apple.com
  • 9 edits in trunk/Source/WebKit2

Various frameworks may want to use the container temp directory, so our current restrictions are too tight
https://bugs.webkit.org/show_bug.cgi?id=135518
<rdar://17869279>

Reviewed by Anders Carlsson.

We don't (and can't) have complete knowledge of what different frameworks
will want to use the container temporary directory for, and so our
current attempt to heavily restrict access is simply too tight.

This patch recognises this by simply giving read-write access to the
entire NSTemporary() directory (e.g. $container/tmp in the general case),
rather than the single sub directory we wishfully thought that we would
be able to get away with.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::mediaCacheDirectory): Deleted.

  • UIProcess/WebContext.h:
  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::containerTemporaryDirectory):
(WebKit::WebContext::platformMediaCacheDirectory): Deleted.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::containerTemporaryDirectory):
(WebKit::WebContext::platformMediaCacheDirectory): Deleted.

  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::containerTemporaryDirectory):
(WebKit::WebContext::platformMediaCacheDirectory): Deleted.

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

12:19 PM Changeset in webkit [171942] by achristensen@apple.com
  • 11 edits
    2 adds in trunk

Progress towards cmake on Windows.
https://bugs.webkit.org/show_bug.cgi?id=135484

Reviewed by Martin Robinson.

.:

  • CMakeLists.txt:

Added Mac to list of ports, even though it is not done yet.
Changed minimum bison version to version installed on Macs.

  • Source/cmake/OptionsAppleWin.cmake:

Added some definitions.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:

Set WTF_LIBRARY_TYPE to STATIC to not change WTF linking on EFL or GTK ports.

  • Source/cmake/OptionsMac.cmake: Added blank for now.
  • Source/cmake/OptionsWinCairo.cmake:
  • Source/cmake/OptionsWindows.cmake:

Added some definitions.
Removed /WX (warnings treated as error while compiling).
Copied warnings to ignore from WebKitLibraries/win/tools/vsprops/common.props.

Source/JavaScriptCore:

  • CMakeLists.txt:

Generate code directly to inspector directory to avoid using the cp command
which is not available on Windows.

  • PlatformWin.cmake: Added.

Source/WTF:

  • wtf/CMakeLists.txt:

Added WTF_LIBRARY_TYPE because Windows needs WTF to be a shared library.

12:08 PM Changeset in webkit [171941] by mmaxfield@apple.com
  • 9 edits
    3 adds in trunk

URLs in srcset attributes are not made absolute upon copy and paste
https://bugs.webkit.org/show_bug.cgi?id=135448

Reviewed by Ryosuke Niwa.

Source/WebCore:
When pasting, canonicalize URLs in srcset the same way we do with src.

Test: editing/pasteboard/img-srcset-copy-paste-canonicalization.html

  • dom/Element.cpp:

(WebCore::Element::completeURLsInAttributeValue): Initial implemention, moved from markup.cpp.

  • dom/Element.h:

(WebCore::Element::attributeContainsURL): New function for completeURLs to call.
(WebCore::Element::completeURLsInAttributeValue): Only called if attributeContainsURL returns
true. Default implementation simply calls isURLAttribute().

  • editing/markup.cpp:

(WebCore::completeURLs): Call attributeContainsURL() and completeURLsInAttributeValue() to
complete the URL, so nodes can perform their own behavior.

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::attributeContainsURL): Return true for srcset.
(WebCore::HTMLImageElement::completeUrlAttributeValue): Use our existing srcset parser to
parse the srcset attribute, then use its output to canonicalize URLs, and build it back up
into a string.

  • html/HTMLImageElement.h:

(WebCore::HTMLImageElement::attributeContainsURL):
(WebCore::HTMLImageElement::completeUrlAttributeValue):

  • html/parser/HTMLSrcsetParser.cpp: Make parseImageCandidatesFromSrcsetAttribute() public

and change its signature to return its result.
(WebCore::parseImageCandidatesFromSrcsetAttribute):

  • html/parser/HTMLSrcsetParser.h: Ditto.

LayoutTests:
Copy and paste a srcset image with relative URLs, and make sure that the
pasted srcset attribute doesn't match what it was before. I can't actually
dump the new srcset because it will include a full path of the file on the
user's system, and would therefore be machine-specific.

  • editing/pasteboard/img-srcset-copy-paste-canonicalization-expected.txt:
  • editing/pasteboard/img-srcset-copy-paste-canonicalization.html: Paste and check.
  • editing/pasteboard/resources/img-srcset-copy-paste-canonicalization-iframe.html:

This has to be an iframe because we don't perform any url canonicalization if we
are copying and pasting from a document into itself.

12:06 PM Changeset in webkit [171940] by jonowells@apple.com
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Timeline header height doesn't match style updates.
https://bugs.webkit.org/show_bug.cgi?id=135516

Reviewed by Timothy Hatcher.

Update the timeline header height to match the updates
to the navigation bars in other panels made in
https://bugs.webkit.org/show_bug.cgi?id=135445. Also
update the shadows on some of the search bars.

  • UserInterface/Views/FilterBar.css:

(.filter-bar > input[type="search"]):
(body.mac-platform.legacy .filter-bar > input[type="search"]):

  • UserInterface/Views/FindBanner.css:

(.find-banner > input[type="search"]):
(body.mac-platform.legacy .find-banner > input[type="search"]):

  • UserInterface/Views/LogContentView.css:

(.search-bar.log-search-bar > input[type="search"]):
(body.mac-platform.legacy .search-bar.log-search-bar > input[type="search"]):
Remove inset shadows on search bars.

  • UserInterface/Views/TimelineSidebarPanel.css:

(.sidebar > .panel.navigation.timeline > .status-bar):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-status):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .status-bar > .record-status):
(.sidebar > .panel.navigation.timeline > .title-bar.timelines):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timelines):
(.sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
(.sidebar > .panel.navigation.timeline > .timelines-content):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content):
(.sidebar > .panel.navigation.timeline > .empty-content-placeholder):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .empty-content-placeholder):
Update the height of the timeline status bar.

11:57 AM Changeset in webkit [171939] by akling@apple.com
  • 87 edits in trunk/Source

Remove the JSC::OverridesVisitChildren flag.
<https://webkit.org/b/135489>

Source/JavaScriptCore:
Except for 3 special classes, the visitChildren() call is always
dispatched through the method table (see SlotVisitor.cpp.)

The OverridesVisitChildren flag doesn't actually do anything.
It could be used to implement a non-virtual direct call to
JSCell::visitChildren, bypassing the method table for some objects,
but such a micro-optimization seems like a weak trade for all this
code complexity. Instead, just remove the flag.

This change frees up an inline flag bit in JSCell.

Reviewed by Geoffrey Garen.

  • API/JSAPIWrapperObject.h:
  • API/JSAPIWrapperObject.mm:

(JSC::JSAPIWrapperObject::visitChildren):

  • API/JSCallbackObject.h:

(JSC::JSCallbackObject::visitChildren):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedFunctionExecutable::visitChildren):
(JSC::UnlinkedCodeBlock::visitChildren):
(JSC::UnlinkedProgramCodeBlock::visitChildren):

  • bytecode/UnlinkedCodeBlock.h:
  • debugger/DebuggerScope.cpp:

(JSC::DebuggerScope::visitChildren):

  • debugger/DebuggerScope.h:
  • jsc.cpp:
  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):

  • runtime/Arguments.h:
  • runtime/Executable.cpp:

(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildren):

  • runtime/Executable.h:
  • runtime/GetterSetter.cpp:

(JSC::GetterSetter::visitChildren):

  • runtime/GetterSetter.h:

(JSC::GetterSetter::createStructure):

  • runtime/JSAPIValueWrapper.h:

(JSC::JSAPIValueWrapper::createStructure):

  • runtime/JSActivation.cpp:

(JSC::JSActivation::visitChildren):

  • runtime/JSActivation.h:
  • runtime/JSArrayIterator.cpp:

(JSC::JSArrayIterator::visitChildren):

  • runtime/JSArrayIterator.h:
  • runtime/JSBoundFunction.cpp:

(JSC::JSBoundFunction::visitChildren):

  • runtime/JSBoundFunction.h:
  • runtime/JSCellInlines.h:

(JSC::JSCell::setStructure):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::visitChildren):

  • runtime/JSFunction.h:
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::visitChildren):

  • runtime/JSGlobalObject.h:
  • runtime/JSMap.h:
  • runtime/JSMapIterator.cpp:

(JSC::JSMapIterator::visitChildren):

  • runtime/JSMapIterator.h:
  • runtime/JSNameScope.cpp:

(JSC::JSNameScope::visitChildren):

  • runtime/JSNameScope.h:
  • runtime/JSPromise.cpp:

(JSC::JSPromise::visitChildren):

  • runtime/JSPromise.h:
  • runtime/JSPromiseDeferred.cpp:

(JSC::JSPromiseDeferred::visitChildren):

  • runtime/JSPromiseDeferred.h:
  • runtime/JSPromiseReaction.cpp:

(JSC::JSPromiseReaction::visitChildren):

  • runtime/JSPromiseReaction.h:
  • runtime/JSPropertyNameIterator.cpp:

(JSC::JSPropertyNameIterator::visitChildren):

  • runtime/JSPropertyNameIterator.h:
  • runtime/JSProxy.cpp:

(JSC::JSProxy::visitChildren):

  • runtime/JSProxy.h:
  • runtime/JSScope.cpp:

(JSC::JSScope::visitChildren):

  • runtime/JSScope.h:
  • runtime/JSSegmentedVariableObject.cpp:

(JSC::JSSegmentedVariableObject::visitChildren):

  • runtime/JSSegmentedVariableObject.h:
  • runtime/JSSet.h:
  • runtime/JSSetIterator.cpp:

(JSC::JSSetIterator::visitChildren):

  • runtime/JSSetIterator.h:
  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::visitChildren):

  • runtime/JSSymbolTableObject.h:
  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::overridesVisitChildren): Deleted.

  • runtime/JSWeakMap.h:
  • runtime/JSWithScope.cpp:

(JSC::JSWithScope::visitChildren):

  • runtime/JSWithScope.h:
  • runtime/JSWrapperObject.cpp:

(JSC::JSWrapperObject::visitChildren):

  • runtime/JSWrapperObject.h:
  • runtime/MapData.h:
  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor::visitChildren):

  • runtime/NativeErrorConstructor.h:
  • runtime/PropertyMapHashTable.h:
  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::visitChildren):

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::visitChildren):

  • runtime/RegExpConstructor.h:
  • runtime/RegExpMatchesArray.cpp:

(JSC::RegExpMatchesArray::visitChildren):

  • runtime/RegExpMatchesArray.h:
  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::visitChildren):

  • runtime/RegExpObject.h:
  • runtime/SparseArrayValueMap.h:
  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::visitChildren):

  • runtime/StructureChain.cpp:

(JSC::StructureChain::visitChildren):

  • runtime/StructureChain.h:
  • runtime/StructureRareData.cpp:

(JSC::StructureRareData::visitChildren):

  • runtime/StructureRareData.h:
  • runtime/WeakMapData.h:

Source/WebCore:
Tweak the bindings code generator to stop spitting out the flag.

Reviewed by Geoffrey Garen.

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::visitChildren):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

11:54 AM Changeset in webkit [171938] by matthew_hanson@apple.com
  • 1 delete in tags/Safari-600.1.2.5/Safari-600.1.2.4

Remove extraneous tag.

11:53 AM Changeset in webkit [171937] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Volume is not remembered between items in a YouTube playlist
https://bugs.webkit.org/show_bug.cgi?id=135479

Reviewed by Eric Carlson.

When an AVSampleBufferAudioRenderer is added to the player, set its -volume and -muted
properties with the current values from the HTMLMediaElement.

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

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer):

11:50 AM Changeset in webkit [171936] by matthew_hanson@apple.com
  • 3 edits
    1 copy in tags/Safari-600.1.2.5

Merge r171903. <rdar://problem/17877481>

11:44 AM Changeset in webkit [171935] by timothy_horton@apple.com
  • 4 edits in trunk/Tools

Confusing build fix after r171926.

  • MiniBrowser/mac/AppDelegate.h:
  • MiniBrowser/mac/AppDelegate.m:
  • MiniBrowser/mac/SettingsController.m:
11:33 AM Changeset in webkit [171934] by matthew_hanson@apple.com
  • 2 edits in tags/Safari-600.1.4.3/Source/WebCore

Merge r171259. <rdar://problem/17718984>

11:32 AM Changeset in webkit [171933] by matthew_hanson@apple.com
  • 2 edits in tags/Safari-600.1.4.3/Source/WebCore

Merge r171259. <rdar://problem/17718984>

11:30 AM Changeset in webkit [171932] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the iOS build after r171891

  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::platformTopContentInset):
(WebCore::ScrollView::platformSetTopContentInset):

11:29 AM Changeset in webkit [171931] by psolanki@apple.com
  • 15 edits in trunk/Source/WebCore

Remove EventNames.h include from header files
https://bugs.webkit.org/show_bug.cgi?id=135486

Reviewed by Alexey Proskuryakov.

No new tests because no functional changes.

  • Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.h:
  • Modules/gamepad/GamepadEvent.h:
  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBTransaction.h:
  • Modules/mediastream/RTCStatsResponse.h:
  • Modules/websockets/WebSocket.h:
  • css/FontLoader.h:
  • dom/SecurityPolicyViolationEvent.h:
  • loader/appcache/DOMApplicationCache.h:
  • workers/AbstractWorker.h:
  • workers/Worker.h:
  • workers/WorkerGlobalScope.h:
  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequestProgressEvent.h:
11:28 AM Changeset in webkit [171930] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-600.1.4.3/Source

Versioning.

11:26 AM Changeset in webkit [171929] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4-branch/Source/WebCore

Merge r171259. <rdar://problem/17718984>

11:22 AM Changeset in webkit [171928] by mitz@apple.com
  • 6 edits in trunk/Source/WebKit2

<rdar://problem/17862013> REGRESSION (r169357): Disabling "allow plug-ins" doesn't stick on quit/relaunch
https://bugs.webkit.org/show_bug.cgi?id=135511

Reviewed by Alexey Proskuryakov.

Since the values map in the preferences store doesn’t include values that are equal to the
defaults, we need to update it when a new default is registered.

  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::createWithLegacyDefaults): Changed to use new member functions
for registering defaults.
(WebKit::WebPreferences::registerDefaultBoolValueForKey): Added. Sets an override default
in the store, and sets the user default, if there is one, on top of it.
(WebKit::WebPreferences::registerDefaultUInt32ValueForKey): Ditto.

  • UIProcess/WebPreferences.h: Declared new member functions for getting the user default

value for a key.

  • UIProcess/efl/WebPreferencesEfl.cpp:

(WebKit::WebPreferences::platformGetStringUserValueForKey): Added an implementation that
returns false, because the EFL port doesn’t support persistent user defaults.
(WebKit::WebPreferences::platformGetBoolUserValueForKey): Ditto.
(WebKit::WebPreferences::platformGetUInt32UserValueForKey): Ditto.
(WebKit::WebPreferences::platformGetDoubleUserValueForKey): Ditto.

  • UIProcess/gtk/WebPreferencesGtk.cpp:

(WebKit::WebPreferences::platformGetStringUserValueForKey): Ditto for the GTK port.
(WebKit::WebPreferences::platformGetBoolUserValueForKey): Ditto.
(WebKit::WebPreferences::platformGetUInt32UserValueForKey): Ditto.
(WebKit::WebPreferences::platformGetDoubleUserValueForKey): Ditto.

  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::WebPreferences::platformGetStringUserValueForKey): Added. Replaces
setStringValueIfInUserDefaults, on which it is based.
(WebKit::WebPreferences::platformGetBoolUserValueForKey): Similarly for booleans.
(WebKit::WebPreferences::platformGetUInt32UserValueForKey): Similarly for integers.
(WebKit::WebPreferences::platformGetDoubleUserValueForKey): Similarly for doubles.
(WebKit::WebPreferences::platformInitializeStore): Changed to use the above functions.

11:21 AM Changeset in webkit [171927] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4-branch/Source/WebCore

Merge r171259. <rdar://problem/17718984>

11:21 AM Changeset in webkit [171926] by timothy_horton@apple.com
  • 8 edits
    2 adds in trunk/Tools

Make it easer to add switches to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=135499

Reviewed by Simon Fraser.

Add a single class to manage a set of persistent, global settings for MiniBrowser.
Add a new menu that contains items to toggle the aforementioned settings (moving them out of the Debug menu).

  • MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:

Add SettingsController.{m, h}.

  • MiniBrowser/mac/AppDelegate.h:

Move _browserWindowControllers to the implementation.
Get rid of toggleUseWebKit2ByDefault, because SettingsController now takes care
of that; instead, we'll receive didChangeSettings.

  • MiniBrowser/mac/AppDelegate.m:

Move the default URL, default URL preference key, and use-WebKit2-by-default
preference key into SettingsController.

(-[BrowserAppDelegate awakeFromNib]):
Add the dynamically-generated SettingsController menu just to the left of the Debug menu.

(-[BrowserAppDelegate newWindow:]):
Ask SettingsController if we should use WebKit2 by default, and what the initial URL to load is.

(-[BrowserAppDelegate applicationDidFinishLaunching:]):
SettingsController now takes care of reading the default URL preference.
WK1BrowserWindowController now takes care of enabling the developer extras, via WebPreferences.

(-[BrowserAppDelegate didChangeSettings]):
When settings change, update the key equivalents for the new-window menu items, as they
might have changed (as use-WebKit2-by-default is one of the settings).

Dispatch settings change notifications to all live BrowserControllers.

(-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
(-[BrowserAppDelegate toggleUseWebKit2ByDefault:]): Deleted.
(-[BrowserAppDelegate _useWebKit2ByDefault]): Deleted.
(-[BrowserAppDelegate validateMenuItem:]): Deleted.
All menu item validation for settings is moved into SettingsController.

  • MiniBrowser/mac/BrowserWindowController.h:

Simplify the BrowserWindowController interface; "toggling" settings will happen inside SettingsController,
the BrowserWindowController subclasses will be able to a) know when any setting changes, b) query the current setting state.

  • MiniBrowser/mac/MainMenu.xib:

Remove the settings menu items from the "Debug" menu.

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

(+[SettingsController shared]):
(-[SettingsController menu]):

(-[SettingsController _addItemWithTitle:action:indented:]):
(-[SettingsController _addHeaderWithTitle:]):
NSMenuItem-creating helpers.

(-[SettingsController _populateMenu]):
Build the menu. Ideally this and the validation step would eventually be made more dynamic.

(-[SettingsController validateMenuItem:]):
Validate menu items; since they can be used to toggle the default state of a setting,
we'll always return YES. However, we will use this opportunity to set the 'checked' state
of each item.

(-[SettingsController _toggleBooleanDefault:]):
Toggle the given boolean default, and notify BrowserAppDelegate that something changed.

(-[SettingsController toggleUseWebKit2ByDefault:]):
(-[SettingsController useWebKit2ByDefault]):
(-[SettingsController toggleUseTransparentWindows:]):
(-[SettingsController useTransparentWindows]):
(-[SettingsController toggleUsePaginatedMode:]):
(-[SettingsController usePaginatedMode]):
(-[SettingsController toggleUseUISideCompositing:]):
(-[SettingsController useUISideCompositing]):
(-[SettingsController toggleShowLayerBorders:]):
(-[SettingsController layerBordersVisible]):
(-[SettingsController toggleShowTiledScrollingIndicator:]):
(-[SettingsController tiledScrollingIndicatorVisible]):
(-[SettingsController toggleEnableSubPixelCSSOMMetrics:]):
(-[SettingsController subPixelCSSOMMetricsEnabled]):
(-[SettingsController defaultURL]):
Toggle or return the current state of each preference.

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController awakeFromNib]):
(-[WK1BrowserWindowController validateMenuItem:]):
(-[WK1BrowserWindowController windowWillClose:]):
(-[WK1BrowserWindowController find:]):
(-[WK1BrowserWindowController dumpSourceToConsole:]):
(-[WK1BrowserWindowController didChangeSettings]):
(-[WK1BrowserWindowController webView:didReceiveTitle:forFrame:]):
(-[WK1BrowserWindowController isPaginated]): Deleted.
(-[WK1BrowserWindowController togglePaginationMode:]): Deleted.
(-[WK1BrowserWindowController toggleTransparentWindow:]): Deleted.
(-[WK1BrowserWindowController isSubpixelCSSOMElementMetricsEnabled]): Deleted.
(-[WK1BrowserWindowController toggleSubpixelCSSOMElementMetricsEnabled:]): Deleted.
(-[WK1BrowserWindowController layerBordersVisible]): Deleted.
(-[WK1BrowserWindowController toggleLayerBordersVisibility:]): Deleted.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):
(-[WK2BrowserWindowController validateMenuItem:]):
(-[WK2BrowserWindowController forceRepaint:]):
(-[WK2BrowserWindowController windowWillClose:]):
(-[WK2BrowserWindowController didChangeSettings]):
(-[WK2BrowserWindowController isPaginated]): Deleted.
(-[WK2BrowserWindowController togglePaginationMode:]): Deleted.
(-[WK2BrowserWindowController toggleTransparentWindow:]): Deleted.
(-[WK2BrowserWindowController isUISideCompositingEnabled]): Deleted.
(-[WK2BrowserWindowController toggleUISideCompositing:]): Deleted.
(-[WK2BrowserWindowController layerBordersVisible]): Deleted.
(-[WK2BrowserWindowController toggleLayerBordersVisibility:]): Deleted.
(-[WK2BrowserWindowController tiledScrollingIndicatorVisible]): Deleted.
(-[WK2BrowserWindowController toggleTiledScrollingIndicatorVisibility:]): Deleted.

11:20 AM Changeset in webkit [171925] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

nullptr goodness in RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=135512

Reviewed by Brent Fulgham.

Use nullptr in RenderLayer.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::destroyScrollbar):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestList):
(WebCore::RenderLayer::calculateClipRects):

11:19 AM Changeset in webkit [171924] by timothy_horton@apple.com
  • 3 edits in trunk/Tools

MiniBrowser doesn't support data URLs
https://bugs.webkit.org/show_bug.cgi?id=135492

Reviewed by Simon Fraser.

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController addProtocolIfNecessary:]):
Don't add http:// to data: URLs.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController fetch:]):
(-[WK2BrowserWindowController updateTextFieldFromURL:]):
Percent-escape the contents of the address field before trying to make a URL.
Percent-unescape the URL when displaying it in the address field.
This is not great, but trivial and good-enough-for-Minibrowser.

11:16 AM Changeset in webkit [171923] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix for iOS

  • bindings/objc/DOM.mm:

(-[DOMRange renderedImageForcingBlackText:renderedImageForcingBlackText:]):
We use CGImageRef instead of NSImage here on iOS.

11:13 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
10:46 AM Changeset in webkit [171922] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1.4-branch/Source

Versioning.

10:44 AM Changeset in webkit [171921] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-600.1.4.3

New Tag.

10:38 AM Changeset in webkit [171920] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit2

[Mac] Fullscreen mode for some applications shows only a black screen.
https://bugs.webkit.org/show_bug.cgi?id=135493
<rdar://problem/17628212>

Reviewed by Jer Noble.

In some applications, the window hosting the WKView is an InProcess layer hosting mode.
The fullscreen window created by the WKFullScreenWindowController defaults to an
OutOfProcess mode.

When this kind of mismatch is encountered, the WK2 layer in the UI process is supposed
to send a message back to the WebProcess indicating that the layer hosting mode of the
containing window is different, so that the WebProcess can adjust its logic accordingly.
Unfortunately, the notification that this had happened was not getting sent to the
WebProcess due to an optimization in window state change logic (see Bug 135509 for
details).

The fix is to check layer hosting mode state when a WKView is added to a window, and
notify the WebProcess when it needs to change state to match.

  • UIProcess/API/mac/WKView.mm:

(-[WKView viewDidMoveToWindow]): When moving to a new window, always call
'layerHostingModeDidChange' to pick up any changes in the layer hosting mode.

10:32 AM Changeset in webkit [171919] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.1.4-branch/Source/WebCore

Merge r171895. <rdar://problem/17835345>

10:02 AM Changeset in webkit [171918] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-600.1.2.5/Safari-600.1.2.4

New Tag.

9:15 AM Changeset in webkit [171917] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

ASSERTION FAILED: listNode in WebCore::RenderListItem::updateListMarkerNumbers
https://bugs.webkit.org/show_bug.cgi?id=134970

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-01
Reviewed by Zalan Bujtas.

Removed an unnecessary assert, because the null return value of enclosingList() is
handled properly after this assert.

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::updateListMarkerNumbers):

6:42 AM Changeset in webkit [171916] by Michał Pakuła vel Rutka
  • 4 edits in trunk/LayoutTests

Unreviewed EFL gardening

Add test expectations for failing tests. Remove flaky test expectations that are
no longer correct.

  • platform/efl/TestExpectations:
  • platform/efl/fast/text/khmer-lao-font-expected.txt: Update expected result.
  • svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt: Update after r171046.
6:34 AM Changeset in webkit [171915] by Carlos Garcia Campos
  • 7 edits in trunk

[CMake] GTK and EFL are using PROJECT_VERSION_PATCH to define the micro version
https://bugs.webkit.org/show_bug.cgi?id=135501

Reviewed by Gyuyoung Kim.

Use PROJECT_VERSION_MICRO instead.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitHelpers.cmake:

Source/WebKit2:

  • UIProcess/API/efl/EWebKit2.h.in:
  • UIProcess/API/gtk/WebKitVersion.h.in:
3:48 AM Changeset in webkit [171914] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Add missing sections to documentation.

  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add

WebKitUserContent and WebKitUserContentManager sections to the
documentation.

2:59 AM Changeset in webkit [171913] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.5.1

WebKitGTK+ 2.5.1

1:14 AM Changeset in webkit [171912] by Michał Pakuła vel Rutka
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening

Update test expectations for crashing webgl tests.

  • platform/efl/TestExpectations:
12:26 AM Changeset in webkit [171911] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Replace DEPRECATED_DEFINE_STATIC_LOCAL with NeverDestroyed<T> in NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=135494

Reviewed by Andrei Bucur.

Use static NeverDestroyed<T> variables instead of the DEPRECATED_DEFINE_STATIC_LOCAL macro.

No new tests, no behavior changes.

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::customHandlersStateString):
(WebCore::NavigatorContentUtils::isProtocolHandlerRegistered):

12:24 AM Changeset in webkit [171910] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Unable to do make install since r171901
https://bugs.webkit.org/show_bug.cgi?id=135497

Reviewed by Gyuyoung Kim.

  • PlatformEfl.cmake: Removed ewk_defins.h from the installation list.
Note: See TracTimeline for information about the timeline view.