Timeline
Dec 7, 2013:
- 10:43 PM Changeset in webkit [160282] by
-
- 12 edits2 adds in trunk
[MSE] Bring end-of-stream algorithm section up to current spec.
https://bugs.webkit.org/show_bug.cgi?id=125270
Reviewed by Darin Adler.
Source/WebCore:
Test: media/media-source/media-source-end-of-stream.html
Separate the "endOfStream()" method from the "end of stream algorithm".
- Modules/mediasource/MediaSource.cpp:
(WebCore::SourceBufferIsUpdating): Added predicate function.
(WebCore::MediaSource::endOfStream): Call streamEndedWithError().
(WebCore::MediaSource::streamEndedWithError): Added.
- Modules/mediasource/MediaSource.h:
- Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::appendBufferTimerFired): Call streamEndedWithError().
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): Ditto.
- Modules/mediasource/SourceBuffer.h:
- html/HTMLMediaElement.cpp:
(HTMLMediaElement::mediaLoadingFailedFatally): Renamed from mediaEngineError.
(HTMLMediaElement::mediaLoadingFailed): Call renamed method.
- html/HTMLMediaElement.h:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::markEndOfStream): Set load state to Loaded.
- platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::setNetworkState): Simple setter.
- platform/mock/mediasource/MockMediaPlayerMediaSource.h:
- platform/mock/mediasource/MockMediaSourcePrivate.cpp:
(WebCore::MockMediaSourcePrivate::MockMediaSourcePrivate): Set the intitial duration to NaN.
(WebCore::MockMediaSourcePrivate::markEndOfStream): Set load state to Loaded.
LayoutTests:
- media/media-source/media-source-end-of-stream-expected.txt: Added.
- media/media-source/media-source-end-of-stream.html: Added.
- 10:39 PM Changeset in webkit [160281] by
-
- 7 edits in trunk/Source/WebCore
[MSE][Mac] Crash when removing MediaSource from HTMLMediaElement.
https://bugs.webkit.org/show_bug.cgi?id=125269
Reviewed by Sam Weinig.
Fixes the media/media-source/media-source-fastseek.html test when run with MallocScribble enabled.
It's possible for a SourceBufferPrivateAVFObjC to outlive its MediaSourcePrivateAVFObjC, so
make sure to clear the pointer from the former to the latter when the latter is destroyed.
That means we now have to check to see if the pointer to the latter is still valid at every
call site.
As a drive-by fix, rename m_parent to m_mediaSource to more accurately reflect what the pointer
points to.
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::~MediaSourcePrivateAVFObjC): Clear the SourceBuffer's backpointer.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
(WebCore::SourceBufferPrivateAVFObjC::clearMediaSource):
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC): Rename m_parent -> m_mediaSource.
(WebCore::SourceBufferPrivateAVFObjC::append): Check m_mediaSource before calling.
(WebCore::SourceBufferPrivateAVFObjC::removedFromMediaSource): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::readyState): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::setReadyState): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::setActive): Ditto.
- platform/mock/mediasource/MockMediaSourcePrivate.cpp:
(WebCore::MockMediaSourcePrivate::~MockMediaSourcePrivate): Clear the SourceBuffer's backpointer.
- platform/mock/mediasource/MockSourceBufferPrivate.cpp:
(WebCore::MockSourceBufferPrivate::MockSourceBufferPrivate): Rename m_parent -> m_mediaSource.
(WebCore::MockSourceBufferPrivate::removedFromMediaSource): Check m_mediaSource before calling.
(WebCore::MockSourceBufferPrivate::readyState): Ditto.
(WebCore::MockSourceBufferPrivate::setReadyState): Ditto.
(WebCore::MockSourceBufferPrivate::setActive): Ditto.
- platform/mock/mediasource/MockSourceBufferPrivate.h:
(WebCore::MockSourceBufferPrivate::clearMediaSource):
- 10:17 PM Changeset in webkit [160280] by
-
- 7 edits in trunk/Source/WebKit2
[Cocoa] Make WKWebProcessPlugInController work with WKObject wrapping
https://bugs.webkit.org/show_bug.cgi?id=125404
Reviewed by Dan Bernstein.
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
- Shared/mac/ObjCObjectGraphCoders.mm:
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
(-[WKWebProcessPlugInController dealloc]):
(didCreatePage):
(willDestroyPage):
(-[WKWebProcessPlugInController _setPrincipalClassInstance:]):
(-[WKWebProcessPlugInController API::]):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
(WebKit::wrapper):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h:
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::load):
- 9:53 PM Changeset in webkit [160279] by
-
- 2 edits in trunk/Source/WebCore
Remove statusWithDirection static function from RenderBlockLineLayout
https://bugs.webkit.org/show_bug.cgi?id=125372
Reviewed by Andreas Kling.
I run into a FIXME about using BidiStatus constructor rather than statusWithDirection,
once it's implemented. BidiStatus has got the appropriate constructor now, so I removed
statusWithDirection and updated the code to use the constructor of BidiStatus.
No new tests, no behavior change.
- rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForSegment):
- 9:23 PM Changeset in webkit [160278] by
-
- 3 edits2 adds in trunk/Source/WebKit2
[Cocoa] WebData has a generic wrapper
https://bugs.webkit.org/show_bug.cgi?id=125402
Reviewed by Sam Weinig.
Added WKNSData, an NSData subclass that confroms to WKObject and wraps a WebData.
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject): Allocate a WKNSData if the API::Object is data.
- Shared/Cocoa/WKNSData.h: Added.
(WebKit::wrapper): Added. Returns a WebData’s wrapper as an NSData.
- Shared/Cocoa/WKNSData.mm: Added.
(-[WKNSData dealloc]): Calls the WebData destructor.
(-[WKNSData length]): Added.
(-[WKNSData bytes]): Added.
(-[WKNSData copyWithZone:]): Retains self.
(-[WKNSData _apiObject]): Returns the wrapped WebData.
- WebKit2.xcodeproj/project.pbxproj: Added references to new files.
- 9:22 PM Changeset in webkit [160277] by
-
- 8 edits in trunk/Source/WebKit2
[Cocoa] Make WKWebProcessPlugInBrowserContextController work with WKObject wrapping
https://bugs.webkit.org/show_bug.cgi?id=125403
Reviewed by Dan Bernstein.
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
- Shared/mac/ObjCObjectGraphCoders.mm:
(WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
(didCreatePage):
(willDestroyPage):
(setUpBundleClient):
(-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundle:]):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController dealloc]):
(-[WKWebProcessPlugInBrowserContextController mainFrameDocument]):
(-[WKWebProcessPlugInBrowserContextController selectedRange]):
(-[WKWebProcessPlugInBrowserContextController API::]):
(-[WKWebProcessPlugInBrowserContextController _bundlePageRef]):
(-[WKWebProcessPlugInBrowserContextController handle]):
(+[WKWebProcessPlugInBrowserContextController lookUpBrowsingContextFromHandle:]):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
(WebKit::wrapper):
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::load):
- 7:00 PM Changeset in webkit [160276] by
-
- 2 edits in trunk/Tools
[Cocoa] Convert a few more parts of MiniBrowser over to the Objective-C API
https://bugs.webkit.org/show_bug.cgi?id=125401
Reviewed by Dan Bernstein.
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController fetch:]):
(-[WK2BrowserWindowController reload:]):
(-[WK2BrowserWindowController goBack:]):
(-[WK2BrowserWindowController goForward:]):
(-[WK2BrowserWindowController validateUserInterfaceItem:]):
(-[WK2BrowserWindowController currentZoomFactor]):
(-[WK2BrowserWindowController setCurrentZoomFactor:]):
(-[WK2BrowserWindowController zoomIn:]):
(-[WK2BrowserWindowController zoomOut:]):
(-[WK2BrowserWindowController canResetZoom]):
(-[WK2BrowserWindowController resetZoom:]):
(-[WK2BrowserWindowController toggleZoomMode:]):
(-[WK2BrowserWindowController updateTextFieldFromURL:]):
- 6:36 PM Changeset in webkit [160275] by
-
- 5 edits in trunk/Tools
Convert MiniBrowser to use WKProcessGroup and WKBrowsingContextGroup
https://bugs.webkit.org/show_bug.cgi?id=125400
Reviewed by Dan Bernstein.
- MiniBrowser/mac/AppDelegate.h:
- MiniBrowser/mac/AppDelegate.m:
- MiniBrowser/mac/WK2BrowserWindowController.h:
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController initWithProcessGroup:browsingContextGroup:]):
(-[WK2BrowserWindowController dealloc]):
(createNewPage):
(-[WK2BrowserWindowController awakeFromNib]):
(-[WK2BrowserWindowController browsingContextController:didNavigateWithNavigationData:]):
(-[WK2BrowserWindowController browsingContextController:didPerformClientRedirectFromURL:toURL:]):
(-[WK2BrowserWindowController browsingContextController:didPerformServerRedirectFromURL:toURL:]):
(-[WK2BrowserWindowController browsingContextController:didUpdateHistoryTitle:forURL:]):
Replace global WKContextRef and WKPageGroupRef with WKProcessGroup and WKBrowsingContextGroup. Also
replace context based WKContextHistoryClient with WKBrowsingContextController based WKBrowsingContextHistoryDelegate
- 9:39 AM Changeset in webkit [160274] by
-
- 2 edits in trunk/Tools
[GTK] Run each gtest subtest separately instead of in one go
https://bugs.webkit.org/show_bug.cgi?id=125386
Reviewed by Martin Robinson.
This is what other ports are doing (except they build each test as a separate binary)
and will help with the timeouts we sometimes hit because it applies to the full test
run.
- Scripts/run-gtk-tests:
(TestRunner._get_tests_from_google_test_suite): get a list of available sub-tests.
(TestRunner._run_google_test): run a single subtest from a gtest binary.
(TestRunner._run_google_test_suite): call the binary once per subtest.
- 8:50 AM Changeset in webkit [160273] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Build fix for gtk port after r160260.
- loader/cache/CachedImage.h: Add missing a header.
- 8:33 AM Changeset in webkit [160272] by
-
- 2 edits in trunk/Source/JavaScriptCore
[Win][64-bit] Hitting breakpoint assembler instruction in callToJavaScript.
https://bugs.webkit.org/show_bug.cgi?id=125382
Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-07
Reviewed by Michael Saboff.
The WinCairo results from run-javascriptcore-tests are the same as the WinCairo 32-bits results, when removing these breakpoints.
- jit/JITStubsMSVC64.asm: Remove breakpoint instructions.
- 6:54 AM Changeset in webkit [160271] by
-
- 6 edits in trunk/Tools
Move PrettyPatch related code to prettypatch.py
https://bugs.webkit.org/show_bug.cgi?id=124937
Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-07
Reviewed by Ryosuke Niwa.
This code seems to have a better place here than in Port, since PrettyPatch already knows
pretty_patch_path, and this also unifies the usage of PrettyPatch
- Scripts/webkitpy/common/prettypatch.py:
(PrettyPatch.init):
(PrettyPatch.pretty_diff):
(PrettyPatch):
(PrettyPatch.pretty_patch_available):
(PrettyPatch.check_pretty_patch):
(PrettyPatch.pretty_patch_text):
- Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.create_text_diff_and_write_result):
- Scripts/webkitpy/layout_tests/models/test_run_results.py:
(summarize_results):
- Scripts/webkitpy/port/base.py:
(Port.init):
(Port.wdiff_available):
(Port.check_image_diff):
(Port.wdiff_text):
- Scripts/webkitpy/port/base_unittest.py:
(PortTest.test_pretty_patch_os_error):
(PortTest.test_pretty_patch_script_error):
- 5:03 AM Changeset in webkit [160270] by
-
- 4 edits in trunk/Source
Fix API test expectation following 160220.
Rubber-stamped by Martin Robinson.
Source/WebKit/gtk:
- tests/testatkroles.c:
(finish_loading): rename variable documentFrame -> document.
(test_webkit_atk_get_role_document_frame): check for ATK_ROLE_DOCUMENT_WEB instead of
ATK_ROLE_DOCUMENT_FRAME.
(test_webkit_atk_get_role_heading): rename variable documentFrame -> document.
(test_webkit_atk_get_role_image): ditto.
(test_webkit_atk_get_role_link): ditto.
(test_webkit_atk_get_role_list_and_item): ditto.
(test_webkit_atk_get_role_paragraph): ditto.
(test_webkit_atk_get_role_section): ditto.
(test_webkit_atk_get_role_table): ditto.
(test_webkit_atk_get_role_separator): ditto.
(test_webkit_atk_get_role_combobox): ditto.
(test_webkit_atk_get_role_form): ditto.
(test_webkit_atk_get_role_check_box): ditto.
(test_webkit_atk_get_role_entry): ditto.
(test_webkit_atk_get_role_label): ditto.
(test_webkit_atk_get_role_listbox): ditto.
(test_webkit_atk_get_role_password_text): ditto.
(test_webkit_atk_get_role_push_button): ditto.
(test_webkit_atk_get_role_radio_button): ditto.
Source/WebKit2:
- UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
(testAtspiBasicHierarchy): check for ATK_ROLE_DOCUMENT_WEB instead of ATK_ROLE_DOCUMENT_FRAME.
- 3:50 AM Changeset in webkit [160269] by
-
- 2 edits in trunk/Source/WebCore
ubuntu software center hits _XReadEvents() error
https://bugs.webkit.org/show_bug.cgi?id=123480
Reviewed by Martin Robinson.
- platform/gtk/WidgetBackingStoreGtkX11.cpp:
(WebCore::WidgetBackingStoreGtkX11::~WidgetBackingStoreGtkX11): clear the surface
before freeing the associated pixmap.
Dec 6, 2013:
- 10:41 PM Changeset in webkit [160268] by
-
- 2 edits in branches/jsCStack/Source/JavaScriptCore
CStack Branch: Fix Specialized Thunks to use function prologues and epilogues
https://bugs.webkit.org/show_bug.cgi?id=125381
Not yet reviewed.
Changed the entry / exit sequences to use emitFunctionPrologue() and
functionEpilogue().
- jit/SpecializedThunkJIT.h:
(JSC::SpecializedThunkJIT::SpecializedThunkJIT):
(JSC::SpecializedThunkJIT::returnJSValue):
(JSC::SpecializedThunkJIT::returnDouble):
(JSC::SpecializedThunkJIT::returnInt32):
(JSC::SpecializedThunkJIT::returnJSCell):
- 9:46 PM Changeset in webkit [160267] by
-
- 15 edits in branches/jsCStack/Source/JavaScriptCore
CStack Branch: Enable basic JavaScript functionality in LLInt
https://bugs.webkit.org/show_bug.cgi?id=125378
Reviewed by Filip Pizlo.
This provides basic LLInt only functionality for X86_64. It runs simple scripts.
There are several places where the code is tagged with "&&&& FIXME: ..." comments
as placeholders where more work needs to be done.
Added X86 compliant prologue / epilogues at the head and tail of functions.
Changed LLInt calls to leave the caller framePointer in callFrame register and
pass the callee framePointer (-16) in SP so that the callee receiving prologue
will make store the ReturnPC and CallerFrame at the right location in the call
frame header. Created a stack pointer sanity check macro (checkStackPointerAlignment)
in the LLInt that will cause a breakpoint on failure.
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileEntry):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLLink.cpp:
(JSC::FTL::compileEntry):
(JSC::FTL::link):
- ftl/FTLThunks.cpp:
(JSC::FTL::osrExitGenerationThunkGenerator):
(JSC::FTL::slowPathCallThunkGenerator):
- interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
- interpreter/ProtoCallFrame.cpp:
(JSC::ProtoCallFrame::init):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitFunctionPrologue):
(JSC::AssemblyHelpers::emitFunctionEpilogue):
- jit/JIT.cpp:
(JSC::JIT::privateCompile):
- jit/JITCall.cpp:
(JSC::JIT::privateCompileClosureCall):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_end):
(JSC::JIT::emit_op_ret):
(JSC::JIT::emit_op_ret_object_or_this):
- jit/Repatch.cpp:
(JSC::linkClosureCall):
- jit/ThunkGenerators.cpp:
(JSC::slowPathFor):
(JSC::nativeForGenerator):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter64.asm:
- 6:55 PM Changeset in webkit [160266] by
-
- 2 edits in trunk/Tools
[Mac] MiniBrowser Debug builds are compiled with -Os
https://bugs.webkit.org/show_bug.cgi?id=125376
Reviewed by Tim Horton.
- MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Set GCC_OPTIMIZATION_LEVEL to 0 for
the Debug configuration at the project level.
- 6:14 PM Changeset in webkit [160265] by
-
- 2 edits in trunk/Source/WebCore
[mac] Keep around more decoded image data, since it's purgeable
https://bugs.webkit.org/show_bug.cgi?id=125273
<rdar://problem/13205438>
Unreviewed patch to fix review comments...
- platform/graphics/BitmapImage.h:
Dan noticed that these return statements were improperly indented.
- 5:42 PM Changeset in webkit [160264] by
-
- 5 edits in trunk/Source/WebKit2
Make insertText message asynchronous for iOS.
Reviewed by Benjamin Poulain.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::insertText):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::insertText):
- 5:01 PM Changeset in webkit [160263] by
-
- 2 edits in trunk/Source/WebCore
[MSE][Mac] Disable AVFoundation when enabling the MockMediaPlayerMediaSource.
https://bugs.webkit.org/show_bug.cgi?id=125338
Reviewed by Darin Adler.
The MediaSource API has some assumptions which break if more than one installed
media engine supports MediaSources at the same time. So when enabling the mock
media source engine in DRT or WKTR, disable AVFoundation so that only the mock
engine will support media source loading.
- testing/Internals.cpp:
(WebCore::Internals::initializeMockMediaSource):
- 4:57 PM Changeset in webkit [160262] by
-
- 2 edits in trunk/Source/WebCore
Use NeverDestroyed instead of DEFINE_STATIC_LOCAL
Reviewed by Anders Carlsson.
- rendering/RenderText.cpp:
(WebCore::originalTextMap):
- 4:56 PM Changeset in webkit [160261] by
-
- 16 edits in trunk
[MSE] Add a runtime-setting for the MediaSource constructor.
https://bugs.webkit.org/show_bug.cgi?id=125336
Reviewed by Eric Carlson.
Source/WebCore:
Add a Setting to enable the MediaSource constructor.
- Modules/mediasource/MediaSource.idl:
- page/Settings.in:
Source/WebKit/mac:
Add a private WebPreference which controls the WebCore mediaSourceEnabled setting.
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences mediaSourceEnabled]):
(-[WebPreferences setMediaSourceEnabled:]):
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Source/WebKit2:
Add a private WKPreferences API to control the WebCore mediaSourceEnabled setting.
- Shared/WebPreferencesStore.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetMediaSourceEnabled):
(WKPreferencesGetMediaSourceEnabled):
- UIProcess/API/C/WKPreferencesPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Tools:
Enable MediaSource in DRT and WKTR.
- DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
- 4:45 PM Changeset in webkit [160260] by
-
- 7 edits in trunk/Source/WebCore
[mac] Keep around more decoded image data, since it's purgeable
https://bugs.webkit.org/show_bug.cgi?id=125273
<rdar://problem/13205438>
Reviewed by Simon Fraser.
No new tests, just an optimization.
Instead of throwing away decoded image data eagerly, allow the operating
system to manage the memory via the standard purgeability mechanism,
where it can.
This improves the performance on some pathological cases (extremely large
animated GIFs) by up to 8x.
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::pruneLiveResourcesToSize):
Don't prune live resources' decoded data if it is purgeable.
- platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::destroyDecodedDataIfNecessary):
Don't eagerly throw away decoded image data if it's purgeable.
- loader/cache/CachedImage.h:
- loader/cache/CachedResource.h:
(WebCore::CachedResource::decodedDataIsPurgeable):
- platform/graphics/BitmapImage.h:
- platform/graphics/Image.h:
(WebCore::Image::decodedDataIsPurgeable):
- 4:33 PM Changeset in webkit [160259] by
-
- 8 edits in trunk/Source/WebCore
Save original text for RenderText to a map
https://bugs.webkit.org/show_bug.cgi?id=125278
Reviewed by Darin Adler.
Currently the original text is fetched from the Text node. This is one of the few things
where we use the RenderText node pointer and is stopping Text nodes from being anonymous.
It is very rare of original text to differ from the actual text so we can just squirrel the
original to a map when it differs. This is also simplifies the code.
- rendering/RenderQuote.cpp:
(WebCore::RenderQuote::styleDidChange):
(WebCore::RenderQuote::updateDepth):
- rendering/RenderText.cpp:
(WebCore::originalTextMap):
(WebCore::RenderText::RenderText):
(WebCore::RenderText::~RenderText):
(WebCore::RenderText::styleDidChange):
(WebCore::RenderText::originalText):
(WebCore::RenderText::setTextInternal):
(WebCore::RenderText::setText):
- rendering/RenderText.h:
- rendering/RenderTextFragment.cpp:
- rendering/RenderTextFragment.h:
- 4:10 PM Changeset in webkit [160258] by
-
- 9 edits2 deletes in trunk/Source/WebCore
[MSE] Refactor MediaSourceBase back into MediaSource
https://bugs.webkit.org/show_bug.cgi?id=125245
Reviewed by Eric Carlson.
Now that the legacy WebKitMediaSource has been removed, there is no reason to have
a separate MediaSource and MediaSourceBase. Re-integrate the two.
Copy all the methods from MediaSource into MediaSourceBase, and rename the class MediaSource:
- Modules/mediasource/MediaSource.cpp: Copied from MediaSourceBase.cpp.
(WebCore::MediaSource::create): Copied from MediaSource.cpp.
(WebCore::MediaSource::addSourceBuffer): Ditto.
(WebCore::MediaSource::removeSourceBuffer): Ditto.
(WebCore::MediaSource::isTypeSupported): Ditto.
(WebCore::MediaSource::eventTargetInterface): Ditto.
(WebCore::MediaSource::sourceBufferDidChangeAcitveState): Ditto.
- Modules/mediasource/MediaSource.h: Copied from MediaSourceBase.h.
(WebCore::MediaSource::sourceBuffers): Copied from MediaSource.h.
(WebCore::MediaSource::activeSourceBuffers): Copied from MediaSource.h.
- Modules/mediasource/MediaSourceBase.cpp: Removed.
- Modules/mediasource/MediaSourceBase.h: Removed.
Change all references to MediaSourceBase into MediaSource:
- Modules/mediasource/DOMURLMediaSource.cpp:
(WebCore::DOMURLMediaSource::createObjectURL):
- Modules/mediasource/DOMURLMediaSource.h:
- Modules/mediasource/MediaSourceRegistry.cpp:
(WebCore::MediaSourceRegistry::registerURL):
(WebCore::MediaSourceRegistry::unregisterURL):
- Modules/mediasource/MediaSourceRegistry.h:
Remove MediaSourceBase.cpp/h from the project file:
- WebCore.xcodeproj/project.pbxproj:
- GNUmakefile.list.am:
- 3:20 PM Changeset in webkit [160257] by
-
- 5 edits3 adds in trunk
FTL should support all of Branch/LogicalNot
https://bugs.webkit.org/show_bug.cgi?id=125370
Reviewed by Mark Hahnenberg.
Source/JavaScriptCore:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::boolify):
LayoutTests:
- js/regress/logical-not-expected.txt: Added.
- js/regress/logical-not.html: Added.
- js/regress/script-tests/logical-not.js: Added.
(foo):
- 3:14 PM Changeset in webkit [160256] by
-
- 5 edits in trunk/Source/ThirdParty/ANGLE
Unreviewed, rolling out r159543.
http://trac.webkit.org/changeset/159543
https://bugs.webkit.org/show_bug.cgi?id=125371
Build fix for mac no longer needed (Requested by rfong on
#webkit).
- ANGLE.xcodeproj/project.pbxproj:
- src/compiler/glslang_tab.cpp:
(yysyntax_error):
(glslang_parse):
- src/compiler/glslang_tab.h:
- src/compiler/preprocessor/ExpressionParser.cpp:
(yy_symbol_print):
(yy_stack_print):
(yy_reduce_print):
(yytnamerr):
(yysyntax_error):
(yydestruct):
(yyparse):
- 3:06 PM Changeset in webkit [160255] by
-
- 2 edits in trunk/Source/WebCore
r159827 broke plug-in snapshotting
https://bugs.webkit.org/show_bug.cgi?id=125365
Reviewed by Dean Jackson.
No new tests, covered by existing tests.
- html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Return early if there is NOT
a page, not if there IS a page.
- 2:56 PM Changeset in webkit [160254] by
-
- 12 edits in trunk/Source
../JavaScriptCore: [Win] Support compiling with VS2013
https://bugs.webkit.org/show_bug.cgi?id=125353
Reviewed by Anders Carlsson.
- API/tests/testapi.c: Use C99 defines if available.
- jit/JITOperations.cpp: Don't attempt to define C linkage when
returning a C++ object.
../WebCore: [Win] Support compiling with VS2013
https://bugs.webkit.org/show_bug.cgi?id=125353
Reviewed by Anders Carlsson.
- loader/archive/cf/LegacyWebArchive.cpp:
(WebCore::LegacyWebArchive::create): Use nullptr
(WebCore::LegacyWebArchive::createFromSelection): Ditto
../WebKit: [Win] Support compiling with VS2013.
https://bugs.webkit.org/show_bug.cgi?id=125353
Reviewed by Anders Carlsson.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Provide
proper exports for VS2013 build.
../WTF: [Win] Support compiling with VS2013
https://bugs.webkit.org/show_bug.cgi?id=125353
Reviewed by Anders Carlsson.
- wtf/Compiler.h: Show proper features for VS2012 and VS2013.
- wtf/MathExtras.h: Don't implement common C99 routines when
they are available through the runtime libraries.
- wtf/RetainPtr.h:
(WTF::RetainPtr::operator bool): Added.
- wtf/StdLibExtras.h: Use Microsoft's version of make_unique
when it exists.
- 2:54 PM Changeset in webkit [160253] by
-
- 15 edits in branches/jsCStack/Source/JavaScriptCore
Merged from trunk r160244: <http://trac.webkit.org/changeset/160244>
Split sizing of VarArgs frames from loading arguments for the frame
https://bugs.webkit.org/show_bug.cgi?id=125331
Reviewed by Filip Pizlo.
Split loadVarargs into sizeAndAllocFrameForVarargs() and loadVarargs() in
preparation for moving onto the C stack. sizeAndAllocFrameForVarargs() will
compute the size of the callee frame and allocate it, while loadVarargs()
actually loads the argument values.
As part of moving onto the C stack, sizeAndAllocFrameForVarargs() will be
changed to a function that just computes the size. The caller will use that
size to allocate the new frame on the stack before calling loadVargs() and
actually making the call.
- interpreter/Interpreter.cpp: (JSC::sizeAndAllocFrameForVarargs): (JSC::loadVarargs):
- interpreter/Interpreter.h:
- jit/JIT.h:
- jit/JITCall.cpp: (JSC::JIT::compileLoadVarargs):
- jit/JITCall32_64.cpp: (JSC::JIT::compileLoadVarargs):
- jit/JITInlines.h: (JSC::JIT::callOperation):
- jit/JITOperations.cpp:
- jit/JITOperations.h:
- llint/LLIntSlowPaths.cpp: (JSC::LLInt::LLINT_SLOW_PATH_DECL):
- llint/LLIntSlowPaths.h:
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- runtime/VM.h:
- 2:54 PM Changeset in webkit [160252] by
-
- 6 edits3 adds in trunk
FTL should support generic ByVal accesses
https://bugs.webkit.org/show_bug.cgi?id=125368
Reviewed by Mark Hahnenberg.
Source/JavaScriptCore:
- dfg/DFGGraph.h:
(JSC::DFG::Graph::isStrictModeFor):
(JSC::DFG::Graph::ecmaModeFor):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
LayoutTests:
- js/regress/by-val-generic-expected.txt: Added.
- js/regress/by-val-generic.html: Added.
- js/regress/script-tests/by-val-generic.js: Added.
(foo):
- 2:43 PM Changeset in webkit [160251] by
-
- 9 edits4 copies6 adds in trunk/Source/WebCore
[MSE][Mac] Add a new MSE-compatible MediaPlayerPrivate implementation, MediaPlayerPrivateMediaSourceAVFObjC
https://bugs.webkit.org/show_bug.cgi?id=123378
Reviewed by Eric Carlson.
Add an AVFoundation implementation of MediaPlayerPrivate which creates and uses
MediaSourcePrivate and SourceBufferPrivate subclasses.
Add the new media engine to the list of installed engines:
- platform/MediaSample.h:
- platform/graphics/MediaPlayer.cpp:
(WebCore::installedMediaEngines):
- platform/graphics/MediaPlayer.h:
Add the new files to the project:
- WebCore.xcodeproj/project.pbxproj:
Drive by fix for ports who implement seekDouble():
- platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::seekWithTolerance):
Add new Video and AudioTrackPrivate types which handle their own enable state:
- platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp: Added
(WebCore::AudioTrackPrivateMediaSourceAVFObjC::AudioTrackPrivateMediaSourceAVFObjC):
(WebCore::AudioTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack):
(WebCore::AudioTrackPrivateMediaSourceAVFObjC::setAssetTrack):
(WebCore::AudioTrackPrivateMediaSourceAVFObjC::assetTrack):
(WebCore::AudioTrackPrivateMediaSourceAVFObjC::setEnabled):
- platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h: Added
- platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.cpp: Added.
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::VideoTrackPrivateMediaSourceAVFObjC):
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack):
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::setAssetTrack):
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::assetTrack):
(WebCore::VideoTrackPrivateMediaSourceAVFObjC::setSelected):
- platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h: Added.
Add a new MediaPlayerPrivate which can handle MediaSource objects:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h: Added.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: Added.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::create):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable):
(WebCore::mimeTypeCache):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::getSupportedTypes):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::load):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cancelLoad):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareToPlay):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformMedia):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformLayer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::play):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pause):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pauseInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paused):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsScanning):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasVideo):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAudio):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setVisible):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::startTimeDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::initialTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seeking):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::networkState):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::readyState):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::maxTimeSeekableDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::minTimeSeekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::didLoadingProgress):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setSize):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paint):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAvailableVideoFrame):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsAcceleratedRendering):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::acceleratedRenderingStateChanged):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::movieLoadType):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareForRendering):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::engineDescription):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::languageOfPrimaryAudioTrack):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::extraMemoryCost):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::destroyLayer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateDuration):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateStates):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setReadyState):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setNetworkState):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addDisplayLayer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeDisplayLayer):
Add a new MediaSourcePrivate implementation:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h: Added.
(WebCore::MediaSourcePrivateAVFObjC::player):
(WebCore::MediaSourcePrivateAVFObjC::activeSourceBuffers):
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm: Added.
(WebCore::MediaSourcePrivateAVFObjC::create):
(WebCore::MediaSourcePrivateAVFObjC::MediaSourcePrivateAVFObjC):
(WebCore::MediaSourcePrivateAVFObjC::~MediaSourcePrivateAVFObjC):
(WebCore::MediaSourcePrivateAVFObjC::addSourceBuffer):
(WebCore::MediaSourcePrivateAVFObjC::removeSourceBuffer):
(WebCore::MediaSourcePrivateAVFObjC::duration):
(WebCore::MediaSourcePrivateAVFObjC::setDuration):
(WebCore::MediaSourcePrivateAVFObjC::markEndOfStream):
(WebCore::MediaSourcePrivateAVFObjC::unmarkEndOfStream):
(WebCore::MediaSourcePrivateAVFObjC::readyState):
(WebCore::MediaSourcePrivateAVFObjC::setReadyState):
(WebCore::MediaSourcePrivateAVFObjC::sourceBufferPrivateDidChangeActiveState):
(WebCore::MediaSourcePrivateAVFObjCHasAudio):
(WebCore::MediaSourcePrivateAVFObjC::hasAudio):
(WebCore::MediaSourcePrivateAVFObjCHasVideo):
(WebCore::MediaSourcePrivateAVFObjC::hasVideo):
(WebCore::MediaSourcePrivateAVFObjC::seekToTime):
Add a new SourceBufferPrivate implementation:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h: Added.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: Added.
(-[WebAVStreamDataParserListener initWithParser:parent:WebCore::]):
(-[WebAVStreamDataParserListener dealloc]):
(-[WebAVStreamDataParserListener streamDataParser:didParseStreamDataAsAsset:]):
(-[WebAVStreamDataParserListener streamDataParser:didFailToParseStreamDataWithError:]):
(-[WebAVStreamDataParserListener streamDataParser:didProvideMediaData:forTrackID:mediaType:flags:]):
(-[WebAVStreamDataParserListener streamDataParser:didReachEndOfTrackWithTrackID:mediaType:]):
(WebCore::MediaSampleAVFObjC::create):
(WebCore::MediaSampleAVFObjC::~MediaSampleAVFObjC):
(WebCore::MediaSampleAVFObjC::MediaSampleAVFObjC):
(WebCore::MediaSampleAVFObjC::platformSample):
(WebCore::CMSampleBufferIsRandomAccess):
(WebCore::MediaSampleAVFObjC::flags):
(WebCore::MediaDescriptionAVFObjC::create):
(WebCore::MediaDescriptionAVFObjC::~MediaDescriptionAVFObjC):
(WebCore::MediaDescriptionAVFObjC::MediaDescriptionAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::create):
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):
(WebCore::SourceBufferPrivateAVFObjC::didFailToParseStreamDataWithError):
(WebCore::callProcessCodedFrameForEachSample):
(WebCore::SourceBufferPrivateAVFObjC::didProvideMediaDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::processCodedFrame):
(WebCore::SourceBufferPrivateAVFObjC::didReachEndOfTrackWithTrackID):
(WebCore::SourceBufferPrivateAVFObjC::setClient):
(WebCore::SourceBufferPrivateAVFObjC::append):
(WebCore::SourceBufferPrivateAVFObjC::abort):
(WebCore::SourceBufferPrivateAVFObjC::removedFromMediaSource):
(WebCore::SourceBufferPrivateAVFObjC::readyState):
(WebCore::SourceBufferPrivateAVFObjC::setReadyState):
(WebCore::SourceBufferPrivateAVFObjC::evictCodedFrames):
(WebCore::SourceBufferPrivateAVFObjC::isFull):
(WebCore::SourceBufferPrivateAVFObjC::hasVideo):
(WebCore::SourceBufferPrivateAVFObjC::hasAudio):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::createNonDisplayingCopy):
(WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples):
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
(WebCore::SourceBufferPrivateAVFObjC::setActive):
(WebCore::SourceBufferPrivateAVFObjC::fastSeekTimeForMediaTime):
(WebCore::SourceBufferPrivateAVFObjC::seekToTime):
- platform/mac/PlatformClockCM.h:
Add a SOFT_LINK_CLASS_OPTIONAL macro:
- platform/mac/SoftLinking.h:
- 2:31 PM Changeset in webkit [160250] by
-
- 2 edits in trunk/Source/WebCore
Remove some duplicate checks from SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=125358
Reviewed by Geoffrey Garen.
There is no need to call inherits() before WebCore's toXXX(JSValue) functions.
Also, the result of toArrayBuffer() is a raw pointer, not a RefPtr (it's confusing
because toArrayBufferView returns a RefPtr).
- bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpIfTerminal):
- 2:31 PM Changeset in webkit [160249] by
-
- 2 edits in trunk/LayoutTests
Unreviewed gardening; revert r160237 after r160247 made it unnecessary.
- platform/mac/TestExpectations:
- 2:27 PM Changeset in webkit [160248] by
-
- 2 edits in trunk/Source/WebCore
Remove Image::decodedSize()
https://bugs.webkit.org/show_bug.cgi?id=125327
Reviewed by Simon Fraser.
Missed a comment when removing this code.
- svg/graphics/SVGImage.h:
- 2:22 PM Changeset in webkit [160247] by
-
- 5 edits in trunk/Tools
Strip out extraneous logging from AppleGVA in media tests.
https://bugs.webkit.org/show_bug.cgi?id=125357
Reviewed by Simon Fraser.
Add a mechanism for stripping out abritrary regular expressions from test input and output.
- Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_compare_test): Strip out logging
- Scripts/webkitpy/port/base.py:
(Port.logging_patterns_to_strip): Return an empty list by default.
- Scripts/webkitpy/port/driver.py:
(DriverOutput.strip_patterns): Apply the port specific patterns to the text.
- Scripts/webkitpy/port/mac.py:
(MacPort.logging_patterns_to_strip): Return a complete list.
- 2:05 PM Changeset in webkit [160246] by
-
- 5 edits6 adds in trunk
FTL should support hole/OOB array accesses
https://bugs.webkit.org/show_bug.cgi?id=118077
Reviewed by Oliver Hunt and Mark Hahnenberg.
Source/JavaScriptCore:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLIntrinsicRepository.h:
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::baseIndex):
LayoutTests:
- js/regress/double-get-by-val-out-of-bounds-expected.txt: Added.
- js/regress/double-get-by-val-out-of-bounds.html: Added.
- js/regress/get-by-val-out-of-bounds-expected.txt: Added.
- js/regress/get-by-val-out-of-bounds.html: Added.
- js/regress/script-tests/double-get-by-val-out-of-bounds.js: Added.
(foo):
- js/regress/script-tests/get-by-val-out-of-bounds.js: Added.
(foo):
- 1:40 PM Changeset in webkit [160245] by
-
- 3 edits in trunk/Source/WebKit2
<rdar://problem/15606872> REGRESSION (r160148): Mail throws an exception during launch
https://bugs.webkit.org/show_bug.cgi?id=125362
Reviewed by Sam Weinig.
There were two problems in how WKConnection was made to work with WKObject: first,
API::Object::newObject() was not updated to allocate the correct wrapper class, and second,
WebConnection has subclasses with additional data members, which don’t fit in the object
storage ivar.
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject): Changed to allocate a WKConnection of the required size.
- UIProcess/API/Cocoa/WKConnection.mm:
Removed _connection ivar.
(-[WKConnection dealloc]): Changed to use -_connection accessor instead of ivar.
(-[WKConnection setDelegate:]): Ditto.
(-[WKConnection sendMessageWithName:body:]): Ditto.
(-[WKConnection remoteObjectRegistry]): Ditto.
(-[WKConnection _connection]): Added.
(-[WKConnection _apiObject]): Changed to return the object in the instance extra storage.
- 1:38 PM Changeset in webkit [160244] by
-
- 15 edits in trunk/Source/JavaScriptCore
Split sizing of VarArgs frames from loading arguments for the frame
https://bugs.webkit.org/show_bug.cgi?id=125331
Reviewed by Filip Pizlo.
Split loadVarargs into sizeAndAllocFrameForVarargs() and loadVarargs() in
preparation for moving onto the C stack. sizeAndAllocFrameForVarargs() will
compute the size of the callee frame and allocate it, while loadVarargs()
actually loads the argument values.
As part of moving onto the C stack, sizeAndAllocFrameForVarargs() will be
changed to a function that just computes the size. The caller will use that
size to allocate the new frame on the stack before calling loadVargs() and
actually making the call.
- interpreter/Interpreter.cpp:
(JSC::sizeAndAllocFrameForVarargs):
(JSC::loadVarargs):
- interpreter/Interpreter.h:
- jit/JIT.h:
- jit/JITCall.cpp:
(JSC::JIT::compileLoadVarargs):
- jit/JITCall32_64.cpp:
(JSC::JIT::compileLoadVarargs):
- jit/JITInlines.h:
(JSC::JIT::callOperation):
- jit/JITOperations.cpp:
- jit/JITOperations.h:
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
- llint/LLIntSlowPaths.h:
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- runtime/VM.h:
- 1:02 PM Changeset in webkit [160243] by
-
- 9 edits in trunk
[CSS Shapes] ShapeOutsideInfo needs to use the parent's writing mode when calculating offsets
https://bugs.webkit.org/show_bug.cgi?id=124680
Patch by Rob Buis <rob.buis@samsung.com> on 2013-12-06
Reviewed by Dirk Schulze.
Source/WebCore:
Do not take the writing-mode property on the float into account for shape-outside.
Add a virtual method writingMode() in order to do this for shape-outside but
keep old behavior (element writingMode) for shape-inside.
Change existing test floats/shape-outside-floats-different-writing-modes.html to test the
new behavior.
- rendering/shapes/ShapeInfo.cpp:
(WebCore::::computedShape):
- rendering/shapes/ShapeInfo.h:
(WebCore::ShapeInfo::writingMode):
- rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::writingMode):
- rendering/shapes/ShapeOutsideInfo.h:
LayoutTests:
Make sure the writing-mode property on the float is not taken into account for shape-outside.
Adapt highlight-shape-outside.html so it sets the writing-mode on the container div, not the float.
However because of earlier unreliability in EFL/GTK, skip the test for now.
- TestExpectations:
- fast/shapes/shape-outside-floats/shape-outside-floats-different-writing-modes.html:
- inspector-protocol/model/highlight-shape-outside-expected.txt:
- inspector-protocol/model/highlight-shape-outside.html:
- 12:59 PM Changeset in webkit [160242] by
-
- 4 edits3 adds in trunk
FTL should support all of ValueToInt32
https://bugs.webkit.org/show_bug.cgi?id=125283
Reviewed by Mark Hahnenberg.
Source/JavaScriptCore:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileValueToInt32):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
(JSC::FTL::LowerDFGToLLVM::lowCell):
(JSC::FTL::LowerDFGToLLVM::isCell):
LayoutTests:
- js/regress/put-by-val-machine-int-expected.txt: Added.
- js/regress/put-by-val-machine-int.html: Added.
- js/regress/script-tests/put-by-val-machine-int.js: Added.
(foo):
- 12:57 PM Changeset in webkit [160241] by
-
- 2 edits in trunk/Source/WebCore
Web Inspector: Remove Staging Workaround
https://bugs.webkit.org/show_bug.cgi?id=125354
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-06
Reviewed by Timothy Hatcher.
- inspector/CodeGeneratorInspector.py:
- 12:55 PM Changeset in webkit [160240] by
-
- 3 edits in trunk/Source/WebCore
Simplify ScriptFunctionCall by removing dead code.
https://bugs.webkit.org/show_bug.cgi?id=125274
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-06
Reviewed by Timothy Hatcher.
- bindings/js/ScriptFunctionCall.cpp:
(WebCore::ScriptFunctionCall::call):
- bindings/js/ScriptFunctionCall.h:
- 12:38 PM Changeset in webkit [160239] by
-
- 2 edits in trunk/Tools
Updating ANGLE should point to instructions
https://bugs.webkit.org/show_bug.cgi?id=125361
Reviewed by Eric Carlson.
Point to https://trac.webkit.org/wiki/UpdatingANGLE when
someone wants to patch ANGLE.
- Scripts/webkitpy/common/config/watchlist:
- 12:30 PM Changeset in webkit [160238] by
-
- 2 edits in trunk/Source/JavaScriptCore
FTL shouldn't have a doubleToUInt32 path
https://bugs.webkit.org/show_bug.cgi?id=125360
Reviewed by Mark Hahnenberg.
This code existed because I incorrectly thought it was necessary. It's now basically
dead.
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
- 12:21 PM UpdatingANGLE edited by
- (diff)
- 12:20 PM UpdatingANGLE created by
- 12:17 PM Changeset in webkit [160237] by
-
- 2 edits1 delete in trunk/LayoutTests
Unreviewed gardening, correct previous fix.
- platform/mac-mountainlion/TestExpectations: Removed.
- platform/mac/TestExpectations: Mark plugins/quicktime-plugin-replacement.html as flakey
on Mavericks.
- 12:11 PM WikiStart edited by
- Add link to new ANGLE page (diff)
- 11:59 AM Changeset in webkit [160236] by
-
- 50 edits2 adds in trunk/Source/WebCore
[iOS] Upstream WebCore/rendering changes
https://bugs.webkit.org/show_bug.cgi?id=125239
Reviewed by Simon Fraser.
- WebCore.xcodeproj/project.pbxproj:
- rendering/InlineBox.cpp:
(WebCore::InlineBox::previousOnLineExists): Added.
- rendering/InlineBox.h:
- rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintCompositionBackground): Modified to query RenderStyle
on iOS for the composition fill color. Added FIXME to make this platform-independent.
(WebCore::InlineTextBox::paintDecoration): Added iOS-specific decoration code.
(WebCore::lineStyleForMarkerType):
(WebCore::InlineTextBox::paintDocumentMarkers): Added iOS-specific code. Also, added
FIXME to make this code platform-independent.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint): Ditto.
(WebCore::positionForPointRespectingEditingBoundaries): Added iOS-specific code.
- rendering/RenderBlock.h: Changed access control of logical{Left, Right}SelectionOffset()
from private to protected so that these methods can be used from RenderImage::collectSelectionRects().
- rendering/RenderBox.cpp:
(WebCore::RenderBox::borderRadii): Added.
(WebCore::RenderBox::paintBoxDecorations): Added iOS-specific workaround. See <rdar://problem/6209763>
for more details.
(WebCore::RenderBox::computeRectForRepaint): Added iOS-specific code.
(WebCore::customContainingBlockWidth): Added; guarded by PLATFORM(IOS).
(WebCore::customContainingBlockHeight): Added; guarded by PLATFORM(IOS).
(WebCore::customContainingBlockLogicalWidth): Added; guarded by PLATFORM(IOS).
(WebCore::customContainingBlockLogicalHeight): Added; guarded by PLATFORM(IOS).
(WebCore::customContainingBlockAvailableLogicalHeight): Added; guarded by PLATFORM(IOS).
(WebCore::RenderBox::availableLogicalHeightUsing): Added iOS-specific code; calls customContainingBlockAvailableLogicalHeight().
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned): Added iOS-specific code; calls customContainingBlockLogicalWidth().
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned): Added iOS-specific code; calls customContainingBlockLogicalHeight().
(WebCore::RenderBox::layoutOverflowRectForPropagation): Added iOS-specific code.
- rendering/RenderBox.h:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::stickyPositionOffset): Use FrameView::customFixedPositionLayoutRect()
instead of FrameView::viewportConstrainedVisibleContentRect().
- rendering/RenderButton.cpp:
(WebCore::RenderButton::layout): Added; iOS-specific. Includes FIXME comment.
See <rdar://problem/7675493> for more details.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange): Added iOS-specific code.
(WebCore::RenderElement::styleDidChange): Modified to only call areCursorsEqual() and
EventHandler::scheduleCursorUpdate() on a non-iOS port.
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing): Added iOS-specific code.
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason): This method has an empty implementation for iOS.
(WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): Ditto.
- rendering/RenderFileUploadControl.cpp:
(WebCore::nodeHeight):
(WebCore::RenderFileUploadControl::maxFilenameWidth): Added iOS-specific code.
(WebCore::RenderFileUploadControl::paintObject): Ditto.
(WebCore::RenderFileUploadControl::fileTextValue): Ditto.
- rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::positionFrames): Ditto; Also added FIXME comment as this code may not
be specific to iOS.
- rendering/RenderIFrame.h: Added iOS-specific workaround to RenderObject::renderName(). Added
FIXME comment to determine whether this workaround is still applicable.
- rendering/RenderImage.cpp:
(WebCore::RenderImage::collectSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::RenderImage::paintAreaElementFocusRing): This method has an empty implementation for iOS.
- rendering/RenderImage.h:
- rendering/RenderInline.cpp:
(WebCore::RenderInline::absoluteQuadsForSelection): Added; guarded by PLATFORM(IOS).
- rendering/RenderInline.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer): Added iOS-specific member initialization.
(WebCore::RenderLayer::~RenderLayer): Added iOS-specific code.
(WebCore::RenderLayer::willBeDestroyed): Added; iOS-specific.
(WebCore::RenderLayer::hasAcceleratedTouchScrolling): Ditto.
(WebCore::RenderLayer::handleTouchEvent): Ditto.
(WebCore::RenderLayer::registerAsTouchEventListenerForScrolling): Ditto.
(WebCore::RenderLayer::unregisterAsTouchEventListenerForScrolling): Ditto.
(WebCore::RenderLayer::updateNeedsCompositedScrolling): Added iOS-specific code as we use UIKit
to composite our scroll bars.
(WebCore::RenderLayer::scrollTo): Added iOS-specific code.
(WebCore::RenderLayer::scrollRectToVisible): Ditto.
(WebCore::RenderLayer::styleChanged): Modified to make use of the passed StyleDifference on iOS.
(WebCore::RenderLayer::visibleContentRect): Added; iOS-specific.
(WebCore::RenderLayer::didStartScroll): Ditto.
(WebCore::RenderLayer::didEndScroll): Ditto.
(WebCore::RenderLayer::didUpdateScroll): Ditto.
(WebCore::RenderLayer::invalidateScrollbarRect): Added iOS-specific code.
(WebCore::RenderLayer::invalidateScrollCornerRect): Ditto.
(WebCore::RenderLayer::verticalScrollbarWidth): Ditto.
(WebCore::RenderLayer::horizontalScrollbarHeight): Ditto.
(WebCore::RenderLayer::updateScrollableAreaSet): Ditto.
(WebCore::RenderLayer::updateScrollInfoAfterLayout): Add iOS-specific workaround with FIXME. See
<rdar://problem/15579797> for more details.
(WebCore::RenderLayer::paintOverflowControls): Added iOS-specific code.
(WebCore::RenderLayer::calculateClipRects): Ditto.
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Modified to not apply page scale on iOS
as we apply a page scale at a different time in the code.
(WebCore::RenderLayerBacking::layerWillBeDestroyed): Added; guarded by PLATFORM(IOS).
(WebCore::layerOrAncestorIsTransformedOrScrolling): Added iOS-specific variant with FIXME comment.
(WebCore::RenderLayerBacking::shouldClipCompositedBounds): Added iOS-specific code.
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Ditto.
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Ditto.
(WebCore::RenderLayerBacking::registerScrollingLayers): Ditto.
(WebCore::RenderLayerBacking::updateScrollingLayers): Ditto.
(WebCore::RenderLayerBacking::containsPaintedContent): Call RenderLayer::hasBoxDecorationsOrBackground()
when building on iOS Simulator.
(WebCore::RenderLayerBacking::parentForSublayers): Added iOS-specific code and FIXME comment.
(WebCore::RenderLayerBacking::paintsIntoWindow): Opt-into coordinated graphics code path.
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): Added iOS-specific code.
(WebCore::RenderLayerBacking::paintIntoLayer): Compile-out ASSERT_NOT_REACHED for iOS and added FIXME comment.
- rendering/RenderLayerBacking.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::scheduleLayerFlush): Added iOS-specific code.
(WebCore::RenderLayerCompositor::chromeClient): Added; guarded by PLATFORM(IOS).
(WebCore::RenderLayerCompositor::flushPendingLayerChanges): Added iOS-specific code.
(WebCore::scrollbarHasDisplayNone): Added; iOS-specific.
(WebCore::updateScrollingLayerWithClient): Ditto.
(WebCore::RenderLayerCompositor::updateCustomLayersAfterFlush): Ditto.
(WebCore::RenderLayerCompositor::didFlushChangesForLayer): Added iOS-specific code.
(WebCore::RenderLayerCompositor::didChangeVisibleRect): Ditto.
(WebCore::RenderLayerCompositor::addToOverlapMap): Don't apply page scale factor on iOS. We apply
the page scale factor at a different time in the code. Also, added FIXME comment.
(WebCore::RenderLayerCompositor::computeCompositingRequirements): Added iOS-specific workaround.
See <rdar://problem/8348337> for more details.
(WebCore::RenderLayerCompositor::setIsInWindow): Use non-Mac code path for iOS.
(WebCore::RenderLayerCompositor::allowsIndependentlyCompositedFrames): Added iOS-specific code.
(WebCore::RenderLayerCompositor::requiresCompositingLayer): Ditto.
(WebCore::RenderLayerCompositor::requiresOwnBackingStore): Ditto.
(WebCore::RenderLayerCompositor::reasonsForCompositing): Ditto.
(WebCore::RenderLayerCompositor::requiresCompositingForAnimation): Opt-into calling
AnimationController::isRunningAnimationOnRenderer() on iOS.
(WebCore::RenderLayerCompositor::requiresCompositingForScrolling): Added; guarded by PLATFORM(IOS).
(WebCore::isStickyInAcceleratedScrollingLayerOrViewport): Added iOS-specific code.
(WebCore::isViewportConstrainedFixedOrStickyLayer): Ditto.
(WebCore::RenderLayerCompositor::requiresCompositingForPosition): Use FrameView::customFixedPositionLayoutRect()
instead of FrameView::viewportConstrainedVisibleContentRect().
(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles): Ditto.
(WebCore::RenderLayerCompositor::ensureRootLayer): Ditto.
(WebCore::RenderLayerCompositor::computeFixedViewportConstraints): Use FrameView::customFixedPositionLayoutRect()
instead of FrameView::viewportConstrainedVisibleContentRect().
(WebCore::RenderLayerCompositor::computeStickyViewportConstraints): Ditto.
(WebCore::RenderLayerCompositor::registerOrUpdateViewportConstrainedLayer): This method has an empty implementation for iOS
as we batch update viewport-constrained layers in the iOS-specific method, RenderLayerCompositor::updateCustomLayersAfterFlush().
(WebCore::RenderLayerCompositor::unregisterViewportConstrainedLayer): Ditto.
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).
(WebCore::RenderLayerCompositor::unregisterAllViewportConstrainedLayers): Ditto.
(WebCore::RenderLayerCompositor::registerAllScrollingLayers): Ditto.
(WebCore::RenderLayerCompositor::unregisterAllScrollingLayers): Ditto.
(WebCore::RenderLayerCompositor::scrollingLayerAddedOrUpdated): Ditto.
(WebCore::RenderLayerCompositor::scrollingLayerRemoved): Ditto.
(WebCore::RenderLayerCompositor::startInitialLayerFlushTimerIfNeeded): Ditto.
- rendering/RenderLayerCompositor.h:
- rendering/RenderLayerFilterInfo.h: Added iOS-specific Clang workaround to ignore
an unused private field.
- rendering/RenderMenuList.cpp:
(WebCore::selectedOptionCount): Added; guarded by PLATFORM(IOS).
(WebCore::RenderMenuList::RenderMenuList): On iOS we don't make use of RenderMenuList::m_popupIsVisible.
(WebCore::RenderMenuList::~RenderMenuList): On iOS we don't make use of RenderMenuList::m_popup.
(WebCore::RenderMenuList::adjustInnerStyle): Add iOS-specific code.
(RenderMenuList::updateFromElement): On iOS we don't make use of RenderMenuList::m_popup.
(RenderMenuList::setTextFromOption): Add iOS-specific code.
(RenderMenuList::showPopup): Define RenderMenuList::showPopup() to ASSERT_NOT_REACHED() on iOS as
we don't make use of RenderMenuList::m_popup.
(RenderMenuList::hidePopup): This method has an empty implementation for iOS as we don't make use
of RenderMenuList::m_popup.
(RenderMenuList::popupDidHide): This method has an empty implementation for iOS as we don't make use
of RenderMenuList::m_popupIsVisible.
- rendering/RenderMenuList.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::columnNumberForOffset): Added; guarded by PLATFORM(IOS). Also, added a FIXME comment to
make this function return an unsigned integer instead of a signed integer.
(WebCore::RenderObject::collectSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::RenderObject::destroy): Added iOS-specific code.
(WebCore::RenderObject::innerLineHeight): Added.
(WebCore::RenderObject::willRenderImage): Added iOS-specific code.
- rendering/RenderObject.h: Change the access control of RenderObject::drawLineForBoxSide() from protected to
public so that it can be used from RenderThemeIOS::adjustMenuListButtonStyle().
(WebCore::RenderObject::absoluteQuadsForSelection):
- rendering/RenderScrollbar.h: Change the access control of RenderScrollbar::getScrollbarPseudoStyle() from
private to public so that it can be used from the iOS-specific static function, scrollbarHasDisplayNone,
defined in RenderLayerCompositor.cpp.
- rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::itemText): Added iOS-specific code.
- rendering/RenderText.cpp:
(WebCore::RenderText::collectSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::RenderText::setTextInternal): Added iOS-specific code.
- rendering/RenderText.h:
- rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::adjustInnerTextStyle): Ditto.
(WebCore::RenderTextControl::canScroll): Added; guarded by PLATFORM(IOS).
(WebCore::RenderTextControl::innerLineHeight): Ditto.
- rendering/RenderTextControl.h:
- rendering/RenderTextControlMultiLine.cpp:
(WebCore::RenderTextControlMultiLine::getAvgCharWidth): Compile-out code when building for iOS.
(WebCore::RenderTextControlMultiLine::createInnerTextStyle): Added iOS-specific code.
- rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::layout): Ditto.
(WebCore::RenderTextControlSingleLine::getAvgCharWidth): Compile-out code when building for iOS.
(WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth): Ditto.
- rendering/RenderTextLineBoxes.cpp:
(WebCore::lineDirectionPointFitsInBox): Ditto.
(WebCore::RenderTextLineBoxes::positionForPoint): Added iOS-specific code.
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paintBorderOnly): Ditto.
(WebCore::RenderTheme::paintDecorations): Modified to call the control-specific paint*Decorations().
- rendering/RenderTheme.h:
(WebCore::RenderTheme::paintCheckboxDecorations): Added.
(WebCore::RenderTheme::paintRadioDecorations): Added.
(WebCore::RenderTheme::paintButtonDecorations): Added.
(WebCore::RenderTheme::paintTextFieldDecorations): Added.
(WebCore::RenderTheme::paintTextAreaDecorations): Added.
(WebCore::RenderTheme::paintMenuListDecorations): Added.
(WebCore::RenderTheme::paintPushButtonDecorations): Added.
(WebCore::RenderTheme::paintSquareButtonDecorations): Added.
(WebCore::RenderTheme::paintFileUploadIconDecorations): Added.
(WebCore::RenderTheme::paintSliderThumbDecorations): Added.
(WebCore::RenderTheme::paintSearchFieldDecorations): Added.
- rendering/RenderThemeIOS.h: Added.
- rendering/RenderThemeIOS.mm: Added.
- rendering/RenderThemeMac.h: Don't compile the contents of this file when building for iOS.
- rendering/RenderThemeMac.mm: Ditto.
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::calculateIntrinsicSize): Compile-out code when building for iOS.
- rendering/RenderView.cpp:
(WebCore::RenderView::availableLogicalHeight): Add iOS-specific workaround. See <rdar://problem/7166808>.
(WebCore::fixedPositionOffset): Added; used in iOS-specific code (e.g. RenderView::mapLocalToContainer()).
(WebCore::RenderView::mapLocalToContainer): Use WebCore::fixedPositionOffset() instead of
FrameView::scrollOffsetForFixedPosition().
(WebCore::RenderView::pushMappingToContainer): Ditto.
(WebCore::RenderView::mapAbsoluteToLocalPoint): Ditto.
(WebCore::RenderView::repaintViewRectangle): Ditto.
(WebCore::RenderView::computeRectForRepaint): Ditto.
(WebCore::isFixedPositionInViewport): Added; used in RenderView::hasCustomFixedPosition().
(WebCore::RenderView::hasCustomFixedPosition): Added; guarded by PLATFORM(IOS).
- rendering/RenderView.h:
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::willBeDestroyed): Added iOS-specific code.
- rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::ascentAndDescentForBox): Ditto.
- rendering/break_lines.cpp: Only include header <CoreServices/CoreServices.h> when building for Mac.
- 11:31 AM Changeset in webkit [160235] by
-
- 11 edits in trunk/Source/WebCore
Clean up the includes of RenderBlock.h
https://bugs.webkit.org/show_bug.cgi?id=125351
Reviewed by Darin Adler.
I turned some header includes into forward declarations. I also removed /
moved out some includes, which don't belong to RenderBlock.h anymore.
No new tests, no behavior change.
- editing/VisibleUnits.cpp:
- html/HTMLInputElement.cpp:
- html/HTMLTextAreaElement.cpp:
- html/TextFieldInputType.cpp:
- html/TextInputType.cpp:
- rendering/InlineElementBox.cpp:
- rendering/RenderBlock.h:
- rendering/RenderBlockFlow.cpp:
- rendering/line/LineBreaker.h:
- rendering/line/LineWidth.cpp:
- 11:28 AM Changeset in webkit [160234] by
-
- 1 copy in branches/jsCStack
Create a branch to allow for greater collaboration on the still-incomplete JS-on-C-stack patch(es).
- 11:28 AM Changeset in webkit [160233] by
-
- 1 edit1 add in trunk/LayoutTests
plugins/quicktime-plugin-replacement.html is flakey on OS X Mavericks
https://bugs.webkit.org/show_bug.cgi?id=125356
Reviewed by Jer Noble.
- platform/mac-mountainlion/TestExpectations: Added. Mark test as flakey.
- 11:04 AM Changeset in webkit [160232] by
-
- 3 edits in trunk/LayoutTests
Unreviewed EFL gardening
Add test expectations for failing tests.
- platform/efl-wk2/TestExpectations:
- platform/efl/TestExpectations:
- 11:02 AM Changeset in webkit [160231] by
-
- 2 edits in trunk/Tools
[Mac] Transition MiniBrowser to the Cocoa API: load delegate
https://bugs.webkit.org/show_bug.cgi?id=125334
Reviewed by Darin Adler.
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController dealloc]): Nil out the load delegate and stop observing the
title property.
(-[WK2BrowserWindowController isPaginated]): Changed to use Cocoa SPI.
(-[WK2BrowserWindowController togglePaginationMode:]): Ditto.
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]): Update the
window title with the title property changes.
(-[WK2BrowserWindowController awakeFromNib]): Start observing the title property. Changed to
set the load delegate instead of the load client.
(-[WK2BrowserWindowController updateTextFieldFromURL:]): Changed to use Cocoa types.
(-[WK2BrowserWindowController updateProvisionalURL]): Removed frame parameter.
(-[WK2BrowserWindowController updateCommittedURL]): Ditto.
(-[WK2BrowserWindowController browsingContextControllerDidStartProvisionalLoad:]):
Implemented this load delegate method.
(-[WK2BrowserWindowController browsingContextControllerDidReceiveServerRedirectForProvisionalLoad:]):
Ditto.
(-[WK2BrowserWindowController browsingContextController:didFailProvisionalLoadWithError:]): Ditto.
(-[WK2BrowserWindowController browsingContextControllerDidCommitLoad:]): Ditto.
(-[WK2BrowserWindowController browsingContextControllerDidFinishLoad:]): Ditto.
(-[WK2BrowserWindowController browsingContextController:didFailLoadWithError:]): Ditto.
(-[WK2BrowserWindowController browsingContextControllerDidChangeBackForwardList:addedItem:removedItems:]):
Ditto.
(-[WK2BrowserWindowController browsingContextController:canAuthenticateAgainstProtectionSpace:]):
Ditto.
(-[WK2BrowserWindowController browsingContextController:didReceiveAuthenticationChallenge:]): Ditto.
- 10:56 AM Changeset in webkit [160230] by
-
- 3 edits in trunk/Tools
Remove function from style/checkers/cpp.py.
https://bugs.webkit.org/show_bug.cgi?id=125341
Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-06
Reviewed by Darin Adler.
Corrects a FIXME: by removing a function from cpp.py.
- Scripts/webkitpy/style/checkers/cpp.py:
(CppChecker.init):
(CppChecker.check):
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTestBase.process_file_data):
- 10:54 AM Changeset in webkit [160229] by
-
- 3 edits in trunk/Tools
check-webkit-style: false positive warning for indentation of #ifdef code.
https://bugs.webkit.org/show_bug.cgi?id=125254
Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-06
Reviewed by Darin Adler.
- Scripts/webkitpy/style/checkers/cpp.py:
(check_member_initialization_list):
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_member_initialization_list):
- 10:54 AM Changeset in webkit [160228] by
-
- 7 edits in trunk/Source
Define SHA1 hash size in SHA1.h and use it at various places.
https://bugs.webkit.org/show_bug.cgi?id=125345
Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-06
Reviewed by Darin Adler.
Use SHA1::hashSize instead of local variables.
Source/JavaScriptCore:
- bytecode/CodeBlockHash.cpp:
(JSC::CodeBlockHash::CodeBlockHash): use SHA1::hashSize
Source/WebCore:
- Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::getExpectedWebSocketAccept):
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::HostTLSCertificateSet::computeCertificateHash):
Source/WTF:
- wtf/SHA1.h: define SHA1 hash size
- 10:21 AM Changeset in webkit [160227] by
-
- 6 edits3 adds in trunk/Source
[Cocoa] Add load delegate methods for responding to authentication challenges
https://bugs.webkit.org/show_bug.cgi?id=125333
Reviewed by Darin Adler.
Source/WebCore:
- WebCore.exp.in: Exported core(NSURLCredential *).
Source/WebKit2:
- Shared/Cocoa/APIObject.mm:
(API::Object::newObject): Allocate a WKNSURLAuthenticationChallenge if the object is an
AuthenticationChallengeProxy.
- UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(canAuthenticateAgainstProtectionSpaceInFrame): Implemented this WKPageLoaderClient callback
by calling the load delegate.
(didReceiveAuthenticationChallengeInFrame): Ditto.
(setUpPageLoaderClient): Set the above callbacks in the client structure.
- UIProcess/API/Cocoa/WKBrowsingContextLoadDelegatePrivate.h: Added. Declares two new
delegate methods.
- UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.h: Added.
(WebKit::wrapper): Added. Returns an AuthenticationChallengeProxy’s wrapper as an
NSURLAuthenticationChallenge.
- UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm: Added.
(-[WKNSURLAuthenticationChallenge _web_createTarget]): Override this WKObject method to
return a copy of the challenge with the sender set to a shared instance of
WKNSURLAuthenticationChallengeSender.
(-[WKNSURLAuthenticationChallenge _web_authenticationChallengeProxy]): Added. Returns the
wrapped object.
(-[WKNSURLAuthenticationChallengeSender cancelAuthenticationChallenge:]): Added. Calls
AuthenticationDecisionListener::cancel.
(-[WKNSURLAuthenticationChallengeSender continueWithoutCredentialForAuthenticationChallenge:]):
Added. Calls AuthenticationDecisionListener::useCredential, passing nullptr.
(-[WKNSURLAuthenticationChallengeSender useCredential:forAuthenticationChallenge:]): Added.
Calls AuthenticationDecisionListener::useCredential, passing the credential.
- WebKit2.xcodeproj/project.pbxproj: Added references to new files.
- 10:13 AM Changeset in webkit [160226] by
-
- 15 edits in trunk/Source/WebCore
Rename {adjust, paint}SearchFieldDecoration, {adjust, paint}SearchFieldResultsDecoration
https://bugs.webkit.org/show_bug.cgi?id=125191
Reviewed by Joseph Pecoraro.
Towards upstreaming the iOS concept of render theme decorations, we should rename
RenderTheme::{adjust, paint}SearchFieldDecorationStyle and RenderTheme::{adjust, paint}SearchFieldResultsDecoration
to avoid ambiguity with the iOS concept.
- platform/efl/RenderThemeEfl.cpp:
- platform/efl/RenderThemeEfl.h:
- platform/gtk/RenderThemeGtk.cpp:
- platform/gtk/RenderThemeGtk.h:
- rendering/RenderTheme.cpp:
- rendering/RenderTheme.h:
- rendering/RenderThemeMac.h:
- rendering/RenderThemeMac.mm:
- rendering/RenderThemeSafari.cpp:
- rendering/RenderThemeSafari.h:
- rendering/RenderThemeWin.cpp:
- rendering/RenderThemeWin.h:
- rendering/RenderThemeWinCE.cpp:
- rendering/RenderThemeWinCE.h:
- 9:46 AM Changeset in webkit [160225] by
-
- 3 edits in trunk/LayoutTests
Unreviewed ATK gardening
accessibility/document-attributes.html started failing after r160220.
Patch by Lukasz Gajowy <l.gajowy@samsung.com> on 2013-12-06
- platform/efl/TestExpectations:
- platform/gtk/TestExpectations:
- 9:40 AM Changeset in webkit [160224] by
-
- 14 edits in trunk/Source/WebCore
Make remaining CSSValue constructors return PassRef.
<https://webkit.org/b/125337>
Tweak the remaining CSSValue create() helpers to return PassRef
instead of PassRefPtr in the cases where nullptr is never returned.
Reviewed by Anders Carlsson.
- 9:28 AM Changeset in webkit [160223] by
-
- 7 edits in trunk/Source/WebCore
Hook into some shader symbol logic following the ANGLE update in r159533.
https://bugs.webkit.org/show_bug.cgi?id=125332.
Reviewed by Brent Fulgham.
No new functionality added.
- html/canvas/WebGLRenderingContext.cpp: Add some error checking for errors related to
shader symbols that exist across both vertex and fragment shaders.
(WebCore::WebGLRenderingContext::linkProgram):
- platform/graphics/ANGLEWebKitBridge.cpp: Add logic for handling varyings
and add new fields to the ANGLEShaderSymbol struct.
(WebCore::getSymbolInfo):
- platform/graphics/ANGLEWebKitBridge.h:
- platform/graphics/GraphicsContext3D.h: Add those same fields to the SymbolInfo struct
as well so that we can access them from our shader source map.
Also add a map of varyings along side the uniforms and attributes.
(WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo):
(WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
- platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::areProgramSymbolsValid): Will be filled in later, this method
will use the shader source map to check for issues with unused varyings and precisions
mismatches of shader symbols that exist across both the vertex and fragment shaders.
- 9:18 AM Changeset in webkit [160222] by
-
- 3 edits in trunk/Tools
Fix spelling error in style checker: beggining
https://bugs.webkit.org/show_bug.cgi?id=125347
Reviewed by Anders Carlsson.
- Scripts/webkitpy/style/checkers/cpp.py:
(check_member_initialization_list):
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_member_initialization_list):
- 6:54 AM Changeset in webkit [160221] by
-
- 3 edits in trunk/Source/JavaScriptCore
REGRESSION(r160213): Crash in js/dom/JSON-parse.html
https://bugs.webkit.org/show_bug.cgi?id=125335
Reviewed by Mark Lam.
Changed _llint_op_catch to materialize the VM via the scope chain instead of
the CodeBlock. CallFrames always have a scope chain, but may have a null CodeBlock.
- llint/LowLevelInterpreter32_64.asm:
(_llint_op_catch):
- llint/LowLevelInterpreter64.asm:
(_llint_op_catch):
- 5:58 AM Changeset in webkit [160220] by
-
- 6 edits3 adds in trunk
[ATK] Missing aria roles mappings
https://bugs.webkit.org/show_bug.cgi?id=117729
Patch by Lukasz Gajowy <l.gajowy@samsung.com> on 2013-12-06
Reviewed by Mario Sanchez Prada.
Source/WebCore:
Added a few mappings from ARIA roles to ATK roles.
Test: accessibility/aria-mappings.html
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
Tools:
Added new mappings to AccessibilityUIElementAtk.cpp.
- DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
LayoutTests:
Added new test, checking whether ARIA roles to ATK roles mappings work properly.
- accessibility/aria-mappings-expected.txt: Added.
- accessibility/aria-mappings.html: Added.
- platform/mac/accessibility/aria-mappings-expected.txt: Added.
- 4:41 AM Changeset in webkit [160219] by
-
- 2 edits in trunk/Tools
Typo fix after r160218.
- Scripts/webkitpy/test/main.py:
(main):
- 3:29 AM Changeset in webkit [160218] by
-
- 2 edits in trunk/Tools
Unreviewed fix after r160206.
- Scripts/webkitpy/test/main.py:
(main): sys.platform can be win32 or cygwin too on Windows.
- 3:21 AM Changeset in webkit [160217] by
-
- 2 edits in trunk/Source/WebKit
Build fix after r160207, remove the BitmapImage::decodeSize symbol export
https://bugs.webkit.org/show_bug.cgi?id=125342
Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-06
Reviewed by Csaba Osztrogonác.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
- 3:20 AM Changeset in webkit [160216] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] webkitwebaudiosrc element needs to emit stream-start, caps and segment events
https://bugs.webkit.org/show_bug.cgi?id=123015
Reviewed by Martin Robinson.
When the source element starts emitting buffers send along various
events to notify downstream elements.
No new tests, change covered by existing webaudio tests.
- platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webkit_web_audio_src_init): Initialize segment.
(webKitWebAudioSrcConstructed): Give an explicit name to each
queue added in front of the interleave element.
(webKitWebAudioSrcLoop): Before sending the first buffers push
stream-start, caps and segment events on each queue's sinkpad.
- 3:08 AM Changeset in webkit [160215] by
-
- 2 edits in trunk
[GTK] Enable web audio by default
https://bugs.webkit.org/show_bug.cgi?id=124888
Reviewed by Martin Robinson.
When building with ./configure, enable_web_audio defaults to
"no". However the basic functionality has been working for months
so it's safe to enable it now.
- Source/autotools/ReadCommandLineArguments.m4:
- 1:06 AM Changeset in webkit [160214] by
-
- 4 edits in trunk/Source/WebCore
[GStreamer] Audio/Video sink management is incoherent
https://bugs.webkit.org/show_bug.cgi?id=125304
Reviewed by Gustavo Noronha Silva.
Allow subclasses of MediaPlayerPrivateGStreamerBase to create
custom audio/video sinks in a coherent manner using
create{Audio,Video}Sink methods. Convenience getters are also
available. Also removed some un-needed member variables in the
playbin-based player.
No new tests, existing media tests cover this change.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
(WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
(WebCore::MediaPlayerPrivateGStreamer::audioSink):
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
(WebCore::MediaPlayerPrivateGStreamerBase::createAudioSink):