Timeline



Dec 6, 2013:

10:41 PM Changeset in webkit [160268] by msaboff@apple.com
  • 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 msaboff@apple.com
  • 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 mitz@apple.com
  • 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 timothy_horton@apple.com
  • 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 enrica@apple.com
  • 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 jer.noble@apple.com
  • 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 Antti Koivisto
  • 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 jer.noble@apple.com
  • 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 timothy_horton@apple.com
  • 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 Antti Koivisto
  • 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 jer.noble@apple.com
  • 9 edits
    2 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 fpizlo@apple.com
  • 5 edits
    3 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 commit-queue@webkit.org
  • 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 eric.carlson@apple.com
  • 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 Brent Fulgham
  • 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 msaboff@apple.com
  • 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 fpizlo@apple.com
  • 6 edits
    3 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 jer.noble@apple.com
  • 9 edits
    4 copies
    6 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 ap@apple.com
  • 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 jer.noble@apple.com
  • 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 timothy_horton@apple.com
  • 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 jer.noble@apple.com
  • 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 fpizlo@apple.com
  • 5 edits
    6 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 mitz@apple.com
  • 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 msaboff@apple.com
  • 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 commit-queue@webkit.org
  • 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 fpizlo@apple.com
  • 4 edits
    3 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 commit-queue@webkit.org
  • 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 commit-queue@webkit.org
  • 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 dino@apple.com
  • 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 fpizlo@apple.com
  • 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 dino@apple.com
(diff)
12:20 PM UpdatingANGLE created by dino@apple.com
12:17 PM Changeset in webkit [160237] by eric.carlson@apple.com
  • 2 edits
    1 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 dino@apple.com
Add link to new ANGLE page (diff)
11:59 AM Changeset in webkit [160236] by dbates@webkit.org
  • 50 edits
    2 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 zoltan@webkit.org
  • 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 fpizlo@apple.com
  • 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 eric.carlson@apple.com
  • 1 edit
    1 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 Michał Pakuła vel Rutka
  • 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 mitz@apple.com
  • 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 commit-queue@webkit.org
  • 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 commit-queue@webkit.org
  • 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 commit-queue@webkit.org
  • 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 mitz@apple.com
  • 6 edits
    3 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 dbates@webkit.org
  • 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 commit-queue@webkit.org
  • 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 akling@apple.com
  • 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 roger_fong@apple.com
  • 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 Chris Fleizach
  • 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 msaboff@apple.com
  • 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 commit-queue@webkit.org
  • 6 edits
    3 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 Csaba Osztrogonác
  • 2 edits in trunk/Tools

Typo fix after r160218.

  • Scripts/webkitpy/test/main.py:

(main):

3:29 AM Changeset in webkit [160218] by Csaba Osztrogonác
  • 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 commit-queue@webkit.org
  • 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 Philippe Normand
  • 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 berto@igalia.com
  • 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 Philippe Normand
  • 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):

Dec 5, 2013:

9:32 PM Changeset in webkit [160213] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

JSC: Simplify interface between throw and catch handler
https://bugs.webkit.org/show_bug.cgi?id=125328

Reviewed by Geoffrey Garen.

Simplified the throw - catch interface. The throw side is only responsible for
jumping to the appropriate op_catch handler or returnFromJavaScript for uncaught
exceptions. The handler uses the exception values like VM.callFrameForThrow
as appropriate and no longer relies on the throw side putting anything in
registers.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::jumpToExceptionHandler):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_catch):

  • llint/LowLevelInterpreter32_64.asm:

(_llint_op_catch):
(_llint_throw_from_slow_path_trampoline):

  • llint/LowLevelInterpreter64.asm:

(_llint_op_catch):
(_llint_throw_from_slow_path_trampoline):

9:20 PM Changeset in webkit [160212] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source

Introduce IMAGE_TYPE_CASTS, and use it
https://bugs.webkit.org/show_bug.cgi?id=125330

Reviewed by Ryosuke Niwa.

Source/WebCore:

As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
BitmapImage and SVGImage can use it to generate toFoo() type case helper functions.

No new tests, no behavior changes.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::imageSizeForRenderer):
(WebCore::CachedImage::resumeAnimatingImagesForLoader):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/Image.h:
  • platform/mac/DragImageMac.mm:

(WebCore::createDragImageFromImage):

  • svg/graphics/SVGImage.h:

Source/WebKit2:

As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
BitmapImage, SVGImage can use it to generate toFoo() type case helper functions.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::pluginSnapshotTimerFired):

9:15 PM Changeset in webkit [160211] by mark.lam@apple.com
  • 4 edits in trunk/Source

C Loop LLINT layout test regressions.
https://bugs.webkit.org/show_bug.cgi?id=125314.

Reviewed by Geoffrey Garen.

The regression was due to the ENABLE_LLINT_C_LOOP flag not being included
in the build of the WebKit and WebKit2 components. As a result, some fields
in JSC::VM were ifdef'ed out in WebCore and JSC, but not in WebKit and
WebKit2. This resulted in VM::m_initializingObjectClass having 2 different
offsets depending on whether it is accessed from WebCore and JSC or from
WebKit and WebKit2, and chaos ensued.

This issue will manifest when we pass --cloop to build-webkit.
The fix is simply to add ENABLE_LLINT_C_LOOP to FEATURE_DEFINES for WebKit
and WebKit2.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
7:37 PM Changeset in webkit [160210] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Remove USE(LOCKFREE_THREADSAFEREFCOUNTED) from Atomics.cpp since it is
no longer defined.
https://bugs.webkit.org/show_bug.cgi?id=124502

Patch by Iain Lane <iain.lane@canonical.com> on 2013-12-05
Reviewed by Anders Carlsson.

  • wtf/Atomics.cpp:
7:18 PM Changeset in webkit [160209] by zoltan@webkit.org
  • 3 edits in trunk/Source/WebCore

Clean up the forwarding headers of RenderBlock.h
https://bugs.webkit.org/show_bug.cgi?id=125323

Reviewed by Ryosuke Niwa.

In this patch, I removed the unnecessary forwarding headers from RenderBlock.h, and moved some to RenderBlockFlow.h.

No new tests, no behavior change.

  • rendering/RenderBlock.h: Remove unnecessary forwarding headers.
  • rendering/RenderBlockFlow.h: Moved some forwarding headers from RenderBlock.h
7:03 PM Changeset in webkit [160208] by oliver@apple.com
  • 83 edits in trunk/Source

Refactor static getter function prototype to include thisValue in addition to the base object
https://bugs.webkit.org/show_bug.cgi?id=124461

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add thisValue parameter to static getter prototype, and switch
from JSValue to EncodedJSValue for parameters and return value.

Currently none of the static getters use the thisValue, but
separating out the refactoring will prevent future changes
from getting lost in the noise of refactoring. This means
that this patch does not result in any change in behaviour.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::::asCallbackObject):
(JSC::::staticFunctionGetter):
(JSC::::callbackGetter):

  • jit/JITOperations.cpp:
  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

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

(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSObject.h:

(JSC::PropertySlot::getValue):

  • runtime/NumberConstructor.cpp:

(JSC::numberConstructorNaNValue):
(JSC::numberConstructorNegInfinity):
(JSC::numberConstructorPosInfinity):
(JSC::numberConstructorMaxValue):
(JSC::numberConstructorMinValue):

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

(JSC::asRegExpConstructor):
(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):

  • runtime/RegExpObject.cpp:

(JSC::asRegExpObject):
(JSC::regExpObjectGlobal):
(JSC::regExpObjectIgnoreCase):
(JSC::regExpObjectMultiline):
(JSC::regExpObjectSource):

Source/WebCore:

Change bindings codegen to produce static getter functions
with the correct types. Also update the many custom implementations
to the new type.

No change in behaviour.

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::objectToStringFunctionGetter):

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

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::nameGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::nonCachingStaticFunctionGetter):
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp:

(WebCore::JSHTMLFormControlsCollection::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::nonCachingStaticBackFunctionGetter):
(WebCore::nonCachingStaticForwardFunctionGetter):
(WebCore::nonCachingStaticGoFunctionGetter):

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::scopeType):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::nonCachingStaticReplaceFunctionGetter):
(WebCore::nonCachingStaticReloadFunctionGetter):
(WebCore::nonCachingStaticAssignFunctionGetter):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeList::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSRTCStatsResponseCustom.cpp:

(WebCore::JSRTCStatsResponse::nameGetter):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateParametersCheck):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::indexGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:

Source/WebKit2:

Update the WK2 JSC usage to the new static getter API

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::callMethod):

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::callNPJSObject):
(WebKit::constructWithConstructor):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
(WebKit::NPRuntimeObjectMap::finalize):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::frameForContext):
(WebKit::WebFrame::counterValue):

6:52 PM Changeset in webkit [160207] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebCore

Remove Image::decodedSize()
https://bugs.webkit.org/show_bug.cgi?id=125327

Reviewed by Sam Weinig.

No new tests, just removing dead code.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::resetAnimation):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/GeneratedImage.h:
  • platform/graphics/Image.h:
  • platform/graphics/cg/PDFDocumentImage.cpp:
  • platform/graphics/cg/PDFDocumentImage.h:
  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageForContainer.h:
5:50 PM Changeset in webkit [160206] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Disable WebKit2 webkitpy unittests on Windows
https://bugs.webkit.org/show_bug.cgi?id=125318

Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/test/main.py:

(main):

5:47 PM Changeset in webkit [160205] by fpizlo@apple.com
  • 11 edits
    12 adds in trunk

FTL should use cvttsd2si directly for double-to-int32 conversions
https://bugs.webkit.org/show_bug.cgi?id=125275

Source/JavaScriptCore:

Reviewed by Michael Saboff.

Wow. This was an ordeal. Using cvttsd2si was actually easy, but I learned, and
sometimes even fixed, some interesting things:

  • The llvm.x86.sse2.cvttsd2si intrinsic can actually result in LLVM emitting a vcvttsd2si. I guess the intrinsic doesn't actually imply the instruction.


  • That whole thing about branchTruncateDoubleToUint32? Yeah we don't need that. It's better to use branchTruncateDoubleToInt32 instead. It has the right semantics for all of its callers (err, its one-and-only caller), and it's more likely to take fast path. This patch kills branchTruncateDoubleToUint32.


  • "a[i] = v; v = a[i]". Does this change v? OK, assume that 'a[i]' is a pure-ish operation - like an array access with 'i' being an integer index and we're not having a bad time. Now does this change v? CSE assumes that it doesn't. That's wrong. If 'a' is a typed array - the most sensible and pure kind of array - then this can be a truncating cast. For example 'v' could be a double and 'a' could be an integer array.


  • "v1 = a[i]; v2 = a[i]". Is v1 === v2 assuming that 'a[i]' is pure-ish? The answer is no. You could have a different arrayMode in each access. I know this sounds weird, but with concurrent JIT that might happen.


This patch adds tests for all of this stuff, except for the first issue (it's weird
but probably doesn't matter) and the last issue (it's too much of a freakshow).

  • assembler/MacroAssemblerARM64.h:
  • assembler/MacroAssemblerARMv7.h:
  • assembler/MacroAssemblerX86Common.h:
  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::getByValLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):

  • ftl/FTLAbbreviations.h:

(JSC::FTL::vectorType):
(JSC::FTL::getUndef):
(JSC::FTL::buildInsertElement):

  • ftl/FTLIntrinsicRepository.h:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::doubleToInt32):
(JSC::FTL::LowerDFGToLLVM::doubleToUInt32):
(JSC::FTL::LowerDFGToLLVM::sensibleDoubleToInt32):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::insertElement):
(JSC::FTL::Output::hasSensibleDoubleToInt):
(JSC::FTL::Output::sensibleDoubleToInt):

LayoutTests:

Reviewed by Michael Saboff.

  • js/regress/double-to-int32-typed-array-expected.txt: Added.
  • js/regress/double-to-int32-typed-array-no-inline-expected.txt: Added.
  • js/regress/double-to-int32-typed-array-no-inline.html: Added.
  • js/regress/double-to-int32-typed-array.html: Added.
  • js/regress/double-to-uint32-typed-array-expected.txt: Added.
  • js/regress/double-to-uint32-typed-array-no-inline-expected.txt: Added.
  • js/regress/double-to-uint32-typed-array-no-inline.html: Added.
  • js/regress/double-to-uint32-typed-array.html: Added.
  • js/regress/script-tests/double-to-int32-typed-array-no-inline.js: Added.

(foo):
(test):

  • js/regress/script-tests/double-to-int32-typed-array.js: Added.

(foo):
(test):

  • js/regress/script-tests/double-to-uint32-typed-array-no-inline.js: Added.

(foo):
(test):

  • js/regress/script-tests/double-to-uint32-typed-array.js: Added.

(foo):
(test):

5:19 PM Changeset in webkit [160204] by commit-queue@webkit.org
  • 51 edits in trunk/Source

Unreviewed, rolling out r160133.
http://trac.webkit.org/changeset/160133
https://bugs.webkit.org/show_bug.cgi?id=125325

broke bindings tests on all the bots (Requested by thorton on
#webkit).

Source/JavaScriptCore:

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::::staticFunctionGetter):
(JSC::::callbackGetter):

  • jit/JITOperations.cpp:
  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

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

(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSObject.h:

(JSC::PropertySlot::getValue):

  • runtime/NumberConstructor.cpp:

(JSC::numberConstructorNaNValue):
(JSC::numberConstructorNegInfinity):
(JSC::numberConstructorPosInfinity):
(JSC::numberConstructorMaxValue):
(JSC::numberConstructorMinValue):

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

(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):

  • runtime/RegExpObject.cpp:

(JSC::regExpObjectGlobal):
(JSC::regExpObjectIgnoreCase):
(JSC::regExpObjectMultiline):
(JSC::regExpObjectSource):

Source/WebCore:

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::objectToStringFunctionGetter):

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

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::nameGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::nonCachingStaticFunctionGetter):
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp:

(WebCore::JSHTMLFormControlsCollection::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::nonCachingStaticBackFunctionGetter):
(WebCore::nonCachingStaticForwardFunctionGetter):
(WebCore::nonCachingStaticGoFunctionGetter):

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::scopeType):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::nonCachingStaticReplaceFunctionGetter):
(WebCore::nonCachingStaticReloadFunctionGetter):
(WebCore::nonCachingStaticAssignFunctionGetter):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeList::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSRTCStatsResponseCustom.cpp:

(WebCore::JSRTCStatsResponse::nameGetter):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateParametersCheck):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::indexGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:

Source/WebKit2:

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::callMethod):

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::callNPJSObject):
(WebKit::constructWithConstructor):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
(WebKit::NPRuntimeObjectMap::finalize):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::counterValue):

5:09 PM Changeset in webkit [160203] by Seokju Kwon
  • 7 edits in trunk/Source

Web Inspector: Remove 'cookiesString' output from Page.getCookies
https://bugs.webkit.org/show_bug.cgi?id=125268

Reviewed by Timothy Hatcher.

Remove 'cookiesString' output from Page.getCookies protocol.
It is no longer meaningful because it is an unused parameter.

Source/WebCore:

No new tests, no behavior change.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::getCookies):

  • inspector/InspectorPageAgent.h:
  • inspector/protocol/Page.json:

Source/WebInspectorUI:

  • UserInterface/CookieStorageContentView.js:

(WebInspector.CookieStorageContentView.prototype.update):

  • UserInterface/InspectorBackendCommands.js:
4:57 PM Changeset in webkit [160202] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Web Inspector: expose node and frame snapshot capabilities.
https://bugs.webkit.org/show_bug.cgi?id=124326

Patch by Brian J. Burg <Brian Burg> on 2013-12-05
Reviewed by Joseph Pecoraro.

Source/WebCore:

This adds snapshotRect() and snapshotNode() to the Page domain.
Both methods create snapshots using FrameSnapshotting APIs
and send images to the inspector frontend as a data URL.

Remove the unimplemented Page.captureScreenshot API.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::snapshotNode): Added.
(WebCore::InspectorPageAgent::snapshotRect): Added.

  • inspector/InspectorPageAgent.h:
  • inspector/protocol/Page.json: Added new protocol APIs.

Source/WebInspectorUI:

Add method signatures for snapshotNode() and snapshotRect().
Remove method signature for unimplemented Page.captureScreenshot.

  • UserInterface/InspectorBackendCommands.js:
4:25 PM Changeset in webkit [160201] by bshafiei@apple.com
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

3:48 PM Changeset in webkit [160200] by betravis@adobe.com
  • 7 edits in trunk

Source/WebCore: [CSS Shapes] Enable CSS Shapes on Windows

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

Reviewed by Brent Fulgham.

  • css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated.

WebKitLibraries: [CSS Shapes] Enable CSS Shapes on Windows
https://bugs.webkit.org/show_bug.cgi?id=89957

Reviewed by Brent Fulgham.

Turn on CSS_SHAPES on Windows now that bug 121883 has been fixed.

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:

LayoutTests: [CSS Shapes] Enable CSS Shapes on Windows
https://bugs.webkit.org/show_bug.cgi?id=89957

Reviewed by Brent Fulgham.

Turning shapes tests back on on Windows builds.

  • platform/win/TestExpectations: Enable shapes tests.
3:45 PM Changeset in webkit [160199] by roger_fong@apple.com
  • 7 edits in trunk

[WebGL] Make sure we satisfy uniform and varying packing restrictions.
https://bugs.webkit.org/show_bug.cgi?id=125124.
<rdar://problem/15203291>

Reviewed by Brent Fulgham.

Tests covered by WebGL Khronos conformance tests:
webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html
webgl/1.0.2/conformance/glsl/misc/shader-varying-packing-restrictions.html

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):

  • src/compiler/Compiler.cpp:

Add a check to enforcePackingRestrictions to ensure we make sure packing restrictions for varyings are satisfied as well.
(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
(TCompiler::enforcePackingRestrictions):

  • src/compiler/ShHandle.h: Keep track of maximum varying vectors.
  • platform/mac/TestExpectations: Unskip some 1.0.2 WebGL conformance tests that should now be passing.

Skip conformance/ogles/GL/build/build_009_to_016.html which is a faulty test and has too many varyings in one shader.

3:37 PM Changeset in webkit [160198] by Alexandru Chiculita
  • 12 edits
    6 adds in trunk

Web Inspector: [CSS Regions] Show a list of containing regions when clicking a node that is part of a flow
https://bugs.webkit.org/show_bug.cgi?id=124614

Reviewed by Timothy Hatcher.

Source/WebInspectorUI:

Added a new function in DOMTreeManager called getNodeContentFlowInfo that can be used
to retrieve an object with the following structure:
{

"regionFlow": <Reference to the ContentFlow object referenced by the -webkit-flow-from property of the node>,
"contentFlow": <Reference to the ContentFlow object referenced by the -webkit-flow-into property of

the node or a parent of the node>,

"regions": [ list of DOMNodes representing the regions containers of the node. The node is split across all these regions. ]

}

Also, used this method to display a two new sections in the Computed Styles panel.

  1. Section "Flows": can have up to two Simple Rows: "Region Flow" and "Content Flow".
  2. Section "Container Regions" contains a DOMTreeDataGrid with the list of regions.

The sections are only visible when there's content to display.

Next to the "Region Flow" simple row I've added an arrow that will take the user to the "ContentFlowDOMTreeContentView" of the
ContentFlow. The same happens for the "Content Flow", but in this case the element will also be highlighted.

Part of the patch I've added the DOMTreeDataGridNode. LayerTreeDataGrid has a lot of CSS in common with it, so I
will make another patch to refactor LayerTreeDataGrid to use DOMTreeDataGridNode as a base class.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/ComputedStyleDetailsPanel.css: Added.

(.details-section > .content > .group > .row.simple.content-flow-link > .label):
(.details-section > .content > .group > .row.simple.content-flow-link > .value):
(.details-section > .content > .group > .row.simple.content-flow-link > .value > div):
(.details-section > .content > .group > .row.simple.content-flow-link > .value > div > .icon):
(.details-section > .content > .group > .row.simple.content-flow-link > .value > div > span):
(.details-section > .content > .group > .row.simple.content-flow-link > .value > div > .go-to-arrow):
(.details-section > .content > .group > .row.simple.content-flow-link:hover > .value > div > .go-to-arrow):

  • UserInterface/ComputedStyleDetailsPanel.js:

(WebInspector.ComputedStyleDetailsPanel):
(WebInspector.ComputedStyleDetailsPanel.prototype.get regionFlow):
(WebInspector.ComputedStyleDetailsPanel.prototype.set regionFlow):
(WebInspector.ComputedStyleDetailsPanel.prototype.get contentFlow):
(WebInspector.ComputedStyleDetailsPanel.prototype.set contentFlow):
(WebInspector.ComputedStyleDetailsPanel.prototype.get containerRegions):
(WebInspector.ComputedStyleDetailsPanel.prototype.set containerRegions):
(WebInspector.ComputedStyleDetailsPanel.prototype.refresh):
(WebInspector.ComputedStyleDetailsPanel.prototype._computedStyleShowAllCheckboxValueChanged):
(WebInspector.ComputedStyleDetailsPanel.prototype._resetFlowDetails):
(WebInspector.ComputedStyleDetailsPanel.prototype._refreshFlowDetails.contentFlowInfoReady):
(WebInspector.ComputedStyleDetailsPanel.prototype._refreshFlowDetails):
(WebInspector.ComputedStyleDetailsPanel.prototype._goToRegionFlowArrowWasClicked):
(WebInspector.ComputedStyleDetailsPanel.prototype._goToContentFlowArrowWasClicked):

  • UserInterface/DOMTreeDataGrid.css: Added.

(.dom-tree-data-grid .data-grid):
(.dom-tree-data-grid .data-grid table.data):
(.dom-tree-data-grid .data-container):
(.dom-tree-data-grid .data-container tr):
(.dom-tree-data-grid .data-container td > div):
(.dom-tree-data-grid .data-container .name-column):
(.dom-tree-data-grid .data-container .name-column .icon):
(.dom-tree-data-grid .data-container .name-column .label):
(.dom-tree-data-grid .data-container tr:hover .name-column .label):
(.dom-tree-data-grid .data-container .go-to-arrow):
(.dom-tree-data-grid .data-container tr:hover .go-to-arrow):
(.dom-tree-data-grid .data-container tbody > tr:nth-child(2n)):
(.dom-tree-data-grid .data-container tbody > tr:nth-child(2n+1)):

  • UserInterface/DOMTreeDataGrid.js: Added.

(WebInspector.DOMTreeDataGrid):
(WebInspector.DOMTreeDataGrid.prototype._onmousemove):
(WebInspector.DOMTreeDataGrid.prototype._onmouseout):

  • UserInterface/DOMTreeDataGridNode.js: Added.

(WebInspector.DOMTreeDataGridNode):
(WebInspector.DOMTreeDataGridNode.prototype.get domNode):
(WebInspector.DOMTreeDataGridNode.prototype.createCellContent):
(WebInspector.DOMTreeDataGridNode.prototype._updateNodeName):
(WebInspector.DOMTreeDataGridNode.prototype._makeNameCell):
(WebInspector.DOMTreeDataGridNode.prototype._updateNameCellData):
(WebInspector.DOMTreeDataGridNode.prototype._goToArrowWasClicked):

  • UserInterface/DOMTreeManager.js:

(WebInspector.DOMTreeManager.prototype.unregisteredNamedFlowContentElement):
(WebInspector.DOMTreeManager.prototype.nodeRequested):
(WebInspector.DOMTreeManager.prototype._coerceRemoteArrayOfDOMNodes):
(WebInspector.DOMTreeManager.prototype.domNodeResolved):
(WebInspector.DOMTreeManager.prototype.regionNodesAvailable):
(WebInspector.DOMTreeManager.prototype.get if):
(WebInspector.DOMTreeManager.prototype.get var):
(WebInspector.DOMTreeManager.prototype.backendFunction.getComputedProperty):
(WebInspector.DOMTreeManager.prototype.backendFunction.getContentFlowName):
(WebInspector.DOMTreeManager.prototype.):

  • UserInterface/DataGrid.css:

(.data-grid.no-header > table.header):
(.data-grid.no-header .data-container):

  • UserInterface/DetailsSection.js:

(WebInspector.DetailsSection):

  • UserInterface/InspectorBackend.js:

(InspectorBackendClass.prototype._wrap):

  • UserInterface/Main.html:
  • UserInterface/ResourceSidebarPanel.js:

(WebInspector.ResourceSidebarPanel.prototype.showContentFlowDOMTree):

  • UserInterface/RuntimeManager.js:

(WebInspector.RuntimeManager.prototype.evaluateInInspectedWindow):
(WebInspector.RuntimeManager.prototype.getPropertiesForRemoteObject):

LayoutTests:

Added a new test to check the new WebInspector function called DOMTreeManager.getNodeContentFlowInfo.

  • http/tests/inspector-protocol/resources/InspectorTest.js:

When testing the inspector code, we want to catch and log any uncaught exceptions or console.errors/asserts.
(InspectorTest.importInspectorScripts.console.error.window.onerror):
(InspectorTest.importInspectorScripts.console.assert):
(InspectorTest.importInspectorScripts):

  • inspector-protocol/model/content-node-region-info-expected.txt: Added.
  • inspector-protocol/model/content-node-region-info.html: Added.
3:33 PM Changeset in webkit [160197] by Chris Fleizach
  • 3 edits in trunk/Source/WebKit2

AX: Seed: safari extension installation crashes safari under voice over and freezes voice over
https://bugs.webkit.org/show_bug.cgi?id=125308

Reviewed by Anders Carlsson.

Much like Javascript alerts, we need to allow accessibility clients to continue to interact with the WebProcess thread
when using dispatchDecidePolicyResponses.

  • Platform/CoreIPC/MessageSender.h:

(CoreIPC::MessageSender::sendSync):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):

3:12 PM Changeset in webkit [160196] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

32bit buildfix after r160151
https://bugs.webkit.org/show_bug.cgi?id=125298

Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-05
Reviewed by Csaba Osztrogonác.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient::handleDataReceived):

3:04 PM Changeset in webkit [160195] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.8/Source/ThirdParty/ANGLE

Merge r160194.

2:55 PM Changeset in webkit [160194] by matthew_hanson@apple.com
  • 5 edits in trunk/Source/ThirdParty/ANGLE

Fix ANGLE build failures by re-comitting the changes in http://trac.webkit.org/changeset/154223
on top of the library updates introduced by http://trac.webkit.org/changeset/159533.

Rubber-stamped by Babak Shafiei.

  • src/compiler/glslang.l:
  • src/compiler/glslang_lex.cpp:
  • src/compiler/preprocessor/Tokenizer.cpp:
  • src/compiler/preprocessor/Tokenizer.l:
2:30 PM Changeset in webkit [160193] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

"Use Selection for Find" doesn't work in PDF viewed in Safari
https://bugs.webkit.org/show_bug.cgi?id=125319
<rdar://problem/15486983>

Reviewed by Tim Horton.

  • WebProcess/Plugins/PDF/PDFPlugin.h:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(-[WKPDFLayerControllerDelegate writeItemsToPasteboard:withTypes:]):
Pass NSGeneralPboard to writeItemsToPasteboard.

(WebKit::PDFPlugin::handleEditingCommand):
Handle takeFindStringFromSelection by getting the current selection string and writing it to the find pasteboard.

(WebKit::PDFPlugin::isEditingCommandEnabled):
Handle takeFindStringFromSelection.

(WebKit::PDFPlugin::writeItemsToPasteboard):
Update this to take a pasteboard name.

1:59 PM Changeset in webkit [160192] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.60.11

New tag.

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

WebKit2 API should use weak ownership for delegate properties rather than assign
https://bugs.webkit.org/show_bug.cgi?id=125316
<rdar://problem/15560614>

Reviewed by Dan Bernstein.

Use WeakObjCPtr for the delegates.

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

(didStartProvisionalLoadForFrame):
(didReceiveServerRedirectForProvisionalLoadForFrame):
(didFailProvisionalLoadWithErrorForFrame):
(didCommitLoadForFrame):
(didFinishLoadForFrame):
(didFailLoadWithErrorForFrame):
(didStartProgress):
(didChangeProgress):
(didFinishProgress):
(didChangeBackForwardList):
(setUpPagePolicyClient):
(-[WKBrowsingContextController loadDelegate]):
(-[WKBrowsingContextController setLoadDelegate:]):
(-[WKBrowsingContextController policyDelegate]):
(-[WKBrowsingContextController setPolicyDelegate:]):
(-[WKBrowsingContextController historyDelegate]):
(-[WKBrowsingContextController setHistoryDelegate:]):

  • UIProcess/API/Cocoa/WKBrowsingContextControllerInternal.h:
  • UIProcess/API/Cocoa/WKConnection.mm:

(didReceiveMessage):
(didClose):
(-[WKConnection delegate]):
(-[WKConnection setDelegate:]):

  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(didCreateConnection):
(getInjectedBundleInitializationUserData):
(didNavigateWithNavigationData):
(didPerformClientRedirect):
(didPerformServerRedirect):
(didUpdateHistoryTitle):
(-[WKProcessGroup delegate]):
(-[WKProcessGroup setDelegate:]):

1:15 PM Changeset in webkit [160190] by Brent Fulgham
  • 4 edits in branches/safari-537.60-branch/Source/WebKit

../WebKit: Merge build fix r160188

2013-12-05 Brent Fulgham <Brent Fulgham>

[Win] Avoid copying compiled-in resources to DSTROOT
https://bugs.webkit.org/show_bug.cgi?id=125309

Reviewed by Jer Noble.

  • WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Only copy Info.plist to the final WebKit.resource bundle. The PNG and RC files are compiled into the WebKit.dll library.

../WebKit/win: Merge r160184

2013-12-04 Brent Fulgham <Brent Fulgham>

[Win] Exiting from Media Full Screen mode via 'escape' key does not work properly
https://bugs.webkit.org/show_bug.cgi?id=125272

Reviewed by Jer Noble.

  • WebView.cpp: (WebView::fullScreenClientWillExitFullScreen): Change to webkitCancelFullScreen method call to more closely match Media Control behavior.
12:44 PM Changeset in webkit [160189] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Cropping and drawing ImageBuffers results in uninitialized data being shown
https://bugs.webkit.org/show_bug.cgi?id=125271

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-05
Reviewed by Simon Fraser.

createCroppedImageIfNecessary() crops to the bottom left of the ImageBuffer
backing store instead of the top left. In addition, ImageBuffer::draw()
draws the entire ImageBuffer's backing store instead of just the relevant
portion of it.

No new tests are necessary because the existing tests already test this
functionality

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::createCroppedImageIfNecessary): Crop to the top left of the
backing store
(WebCore::ImageBuffer::draw): Draw only the logical portion of the
backing store

12:42 PM Changeset in webkit [160188] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Avoid copying compiled-in resources to DSTROOT
https://bugs.webkit.org/show_bug.cgi?id=125309

Reviewed by Jer Noble.

  • WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Only copy Info.plist to the final WebKit.resource bundle.

The PNG and RC files are compiled into the WebKit.dll library.

12:40 PM Changeset in webkit [160187] by andersca@apple.com
  • 4 edits in trunk

Tweak WeakObjCPtr
https://bugs.webkit.org/show_bug.cgi?id=125311

Reviewed by Darin Adler.

Source/WebKit2:

Make it possible to use WeakObjCPtr with pointer types such as id. Also,
add a getAutoreleased() member that will load the weak pointer and retain + autorelease it.

  • Shared/mac/WeakObjCPtr.h:

(WebKit::WeakObjCPtr::WeakObjCPtr):
(WebKit::WeakObjCPtr::operator=):
(WebKit::WeakObjCPtr::get):
(WebKit::WeakObjCPtr::getAutoreleased):

Tools:

Split up tests into more logical groups. Add new tests for new functionality.

  • TestWebKitAPI/Tests/WebKit2/mac/WeakObjCPtr.mm:
12:33 PM Changeset in webkit [160186] by mark.lam@apple.com
  • 22 edits in trunk/Source/JavaScriptCore

Make the C Loop LLINT work with callToJavaScript.
https://bugs.webkit.org/show_bug.cgi?id=125294.

Reviewed by Michael Saboff.

  1. Changed the C Loop LLINT to dispatch to an Executable via its JITCode instance which is consistent with how the ASM LLINT works.
  2. Changed CLoop::execute() to take an Opcode instead of an OpcodeID. This makes it play nice with the use of JITCode for dispatching.
  3. Introduce a callToJavaScript and callToNativeFunction for the C Loop LLINT. These will call JSStack::pushFrame() and popFrame() to setup and teardown the CallFrame.
  4. Also introduced a C Loop returnFromJavaScript which is just a replacement for ctiOpThrowNotCaught which had the same function.
  5. Remove a lot of #if ENABLE(LLINT_C_LOOP) code now that the dispatch mechanism is consistent.

This patch has been tested with both configurations of COMPUTED_GOTOs
on and off.

  • interpreter/CachedCall.h:

(JSC::CachedCall::CachedCall):
(JSC::CachedCall::call):
(JSC::CachedCall::setArgument):

  • interpreter/CallFrameClosure.h:

(JSC::CallFrameClosure::setThis):
(JSC::CallFrameClosure::setArgument):
(JSC::CallFrameClosure::resetCallFrame):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall):

  • interpreter/Interpreter.h:
  • interpreter/JSStack.h:
  • interpreter/JSStackInlines.h:

(JSC::JSStack::pushFrame):

  • interpreter/ProtoCallFrame.h:

(JSC::ProtoCallFrame::scope):
(JSC::ProtoCallFrame::callee):
(JSC::ProtoCallFrame::thisValue):
(JSC::ProtoCallFrame::argument):
(JSC::ProtoCallFrame::setArgument):

  • jit/JITCode.cpp:

(JSC::JITCode::execute):

  • jit/JITCode.h:
  • jit/JITExceptions.cpp:

(JSC::genericUnwind):

  • llint/LLIntCLoop.cpp:

(JSC::LLInt::CLoop::initialize):

  • llint/LLIntCLoop.h:
  • llint/LLIntEntrypoint.cpp:

(JSC::LLInt::setFunctionEntrypoint):
(JSC::LLInt::setEvalEntrypoint):
(JSC::LLInt::setProgramEntrypoint):

  • Inverted the check for vm.canUseJIT(). This allows the JIT case to be #if'd out nicely when building the C Loop LLINT.
  • llint/LLIntOpcode.h:
  • llint/LLIntThunks.cpp:

(JSC::doCallToJavaScript):
(JSC::executeJS):
(JSC::callToJavaScript):
(JSC::executeNative):
(JSC::callToNativeFunction):

  • llint/LLIntThunks.h:
  • llint/LowLevelInterpreter.cpp:

(JSC::CLoop::execute):

  • runtime/Executable.h:

(JSC::ExecutableBase::offsetOfNumParametersFor):
(JSC::ExecutableBase::hostCodeEntryFor):
(JSC::ExecutableBase::jsCodeEntryFor):
(JSC::ExecutableBase::jsCodeWithArityCheckEntryFor):
(JSC::NativeExecutable::create):
(JSC::NativeExecutable::finishCreation):
(JSC::ProgramExecutable::generatedJITCode):

  • runtime/JSArray.cpp:

(JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):

  • runtime/StringPrototype.cpp:

(JSC::replaceUsingRegExpSearch):

  • runtime/VM.cpp:

(JSC::VM::getHostFunction):

12:27 PM Changeset in webkit [160185] by zoltan@webkit.org
  • 3 edits in trunk/LayoutTests

[CSS Shapes] Update negative-arguments inset parsing test to test for the argument not for the commas
https://bugs.webkit.org/show_bug.cgi?id=125310

Reviewed by Rob Buis.

Fix typo in the negative-arguments inset tests, remove commas.

  • fast/shapes/parsing/parsing-shape-lengths-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths.html:
12:14 PM Changeset in webkit [160184] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit/win

[Win] Exiting from Media Full Screen mode via 'escape' key does not work properly
https://bugs.webkit.org/show_bug.cgi?id=125272

Reviewed by Jer Noble.

  • WebView.cpp:

(WebView::fullScreenClientWillExitFullScreen): Change to webkitCancelFullScreen method call
to more closely match Media Control behavior.

11:48 AM Changeset in webkit [160183] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove stale ScriptGlobalObject methods
https://bugs.webkit.org/show_bug.cgi?id=125276

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-05
Reviewed by Sam Weinig.

  • bindings/js/ScriptObject.cpp:

(WebCore::ScriptGlobalObject::set):

  • bindings/js/ScriptObject.h:
11:45 AM Changeset in webkit [160182] by rniwa@webkit.org
  • 6 edits
    2 adds in trunk

Change how the form element pointer affects parsing template elements, to reduce weirdness in templates
https://bugs.webkit.org/show_bug.cgi?id=125279

Reviewed by Antti Koivisto.

Source/WebCore:

Faithfully update the HTML5 parser after http://html5.org/tools/web-apps-tracker?from=8330&to=8331.

Test: fast/dom/HTMLTemplateElement/no-form-association-2.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertHTMLFormElement): Don't the form element pointer if the context
element or its ancestor is a template element.
(WebCore::HTMLConstructionSite::insideTemplateElement): Added.
(WebCore::HTMLConstructionSite::createHTMLElement): Renamed openElementsContainTemplateElement to
insideTemplateElement to reflect the true semantics of the boolean.

  • html/parser/HTMLConstructionSite.h:
  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ignore the form element pointer if there
is a template element on the stack of open elements. This faithfully reflects what's being said in the
specification. We should probably make isParsingTemplateContents more efficient by storing a boolean
and then wrap from() in some helper function but that should probbaly happen in a separate patch.
(WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
(WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
(WebCore::HTMLTreeBuilder::processEndTagForInBody): Don't unset or rely on the form element pointer
when there is a template element on the stack of open elements.

  • html/parser/HTMLTreeBuilder.h:

(WebCore::HTMLTreeBuilder::isParsingTemplateContents): Added a trivial implementation for when
TEMPLATE_ELEMENT is disabled.
(WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Merged two implementations.

LayoutTests:

Added a regression test. Someone should port this test into web-platform-tests once the latest spec.
change has been refelcted to a working draft version of the HTML5 specification.

  • fast/dom/HTMLTemplateElement/no-form-association-2-expected.txt: Added.
  • fast/dom/HTMLTemplateElement/no-form-association-2.html: Added.
11:23 AM Changeset in webkit [160181] by commit-queue@webkit.org
  • 11 edits in trunk

[MediaStream] Firing negotiationneeded event upon track add/remove on MediaStream
https://bugs.webkit.org/show_bug.cgi?id=125243

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-05
Reviewed by Eric Carlson.

Spec states that: In particular, if an RTCPeerConnection object is consuming a MediaStream on which a track is
added, by, e.g., the addTrack() method being invoked, the RTCPeerConnection object must fire the
"negotiationneeded" event. Removal of media components must also trigger "negotiationneeded".

Source/WebCore:

Existing tests updated.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::addTrack):
(WebCore::MediaStream::removeTrack):
(WebCore::MediaStream::addObserver):
(WebCore::MediaStream::removeObserver):

  • Modules/mediastream/MediaStream.h:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::~RTCPeerConnection):
(WebCore::RTCPeerConnection::addStream):
(WebCore::RTCPeerConnection::removeStream):
(WebCore::RTCPeerConnection::didAddOrRemoveTrack):

  • Modules/mediastream/RTCPeerConnection.h:
  • platform/mock/RTCPeerConnectionHandlerMock.cpp:

(WebCore::RTCPeerConnectionHandlerMock::addStream):

LayoutTests:

  • fast/mediastream/RTCPeerConnection-AddRemoveStream-expected.txt:
  • fast/mediastream/RTCPeerConnection-AddRemoveStream.html:
  • fast/mediastream/RTCPeerConnection-onnegotiationneeded-expected.txt:
  • fast/mediastream/RTCPeerConnection-onnegotiationneeded.html:
10:32 AM Changeset in webkit [160180] by Hugo Parente Lima
  • 2 edits in trunk/Tools/Scripts

[Unreviewed] Turn on executable bits of Tools/Scripts/run-nix-tests and Tools/Scripts/update-webkitnix-libs

9:57 AM Changeset in webkit [160179] by Beth Dakin
  • 3 edits in trunk/Source/WebCore

Bad repaints on twitter when the tile cache has a margin
https://bugs.webkit.org/show_bug.cgi?id=125263
-and corresponding-
<rdar://problem/15576884>

Reviewed by Tim Horton.

When tiles that used to be margin tiles become real-content tiles, they need to be
invalidated.

Two new helper functions will make it so that we don’t have to manually factor out
the margin from the bounds in more than one place in the code.

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

(WebCore::TileController::boundsWithoutMargin):
(WebCore::TileController::boundsAtLastRevalidateWithoutMargin):

Here is one existing place where we used to factor out the margin, but now we can

call boundsWithoutMargin().
(WebCore::TileController::adjustRectAtTileIndexForMargin):

And here is where we invalidate the formerly-margin tiles.
(WebCore::TileController::revalidateTiles):

9:54 AM Changeset in webkit [160178] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove the forward declaration of BidiContext class from RenderBlock.h
https://bugs.webkit.org/show_bug.cgi?id=125265

Reviewed by Csaba Osztrogonác.

No new tests, no behavior change.

  • rendering/RenderBlock.h: BidiContext is not used in RenderBlock.h
9:18 AM Changeset in webkit [160177] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Cairo] Avoid extra copy when drawing images
https://bugs.webkit.org/show_bug.cgi?id=124209

Patch by Aloisio Almeida Jr <aloisio.almeida@openbossa.org> on 2013-12-05
Reviewed by Carlos Garcia Campos.

This commit applies some changes proposed after the original patch has
been landed. It fixes the logic to create the subsurface (as it was
inverted). It also remove an unnecessary RefPtr variable to hold the
subsurface.

No new tests. It's an enhancement. Already covered by existing tests.

  • platform/graphics/cairo/PlatformContextCairo.cpp:

(WebCore::PlatformContextCairo::drawSurfaceToContext):

8:48 AM Changeset in webkit [160176] by zoltan@webkit.org
  • 4 edits in trunk

[CSS Shapes] Fix inset when only a subset of the arguments are defined
https://bugs.webkit.org/show_bug.cgi?id=125277

Reviewed by David Hyatt.

Source/WebCore:

I thought Length's default value is fixed-0, but actually it's auto-0. For the optional arguments
of inset shape, we need to use fixed-0, so I updated the code and the tests to use that explicitly.

No new tests, I updated the old ones.

  • css/BasicShapeFunctions.cpp:

(WebCore::basicShapeForValue):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-floats-inset.html:
8:27 AM Changeset in webkit [160175] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix JavaScriptCore build if cloop is enabled after r160094
https://bugs.webkit.org/show_bug.cgi?id=125292

Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-05
Reviewed by Michael Saboff.

Move ProtoCallFrame outside the JIT guard.

  • jit/JITCode.h:
6:50 AM Changeset in webkit [160174] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

[GTK] Do not use deprecated gtk-doc 'Rename to' tag
https://bugs.webkit.org/show_bug.cgi?id=125303

Reviewed by Philippe Normand.

GObject introspection rename-to annotation is available in
since version 0.6.3 so we should use that instead.

  • bindings/gobject/WebKitDOMEventTarget.h:
6:32 AM Changeset in webkit [160173] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] Fix gtk-doc warnings when generating DOM bindings API docs
https://bugs.webkit.org/show_bug.cgi?id=125302

Reviewed by Philippe Normand.

  • gtk/generate-webkitdom-doc-files:

(WebKitDOMDocGeneratorSections.write_footer): Add a new section
containing a private subsection for WEBKIT_API, WEBKIT_DEPRECATED
and WEBKIT_DEPRECATED_FOR macros.

5:31 AM Changeset in webkit [160172] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

[GTK] Add missing symbols to WebKitDOMDeprecated.symbols
https://bugs.webkit.org/show_bug.cgi?id=125300

Reviewed by Philippe Normand.

Add webkit_dom_html_element_get_id and
webkit_dom_html_element_set_id to the symbols files.

  • bindings/gobject/WebKitDOMDeprecated.symbols:
  • bindings/gobject/webkitdom.symbols:
5:28 AM Changeset in webkit [160171] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] Fix GObject introspection warnings in webkitspellchecker
https://bugs.webkit.org/show_bug.cgi?id=125299

Reviewed by Philippe Normand.

  • webkit/webkitspellchecker.cpp: Add missing ':' after some

gobject-introspection annotations.

4:38 AM Changeset in webkit [160170] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix cross compilation on x86
https://bugs.webkit.org/show_bug.cgi?id=125295

Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-05
Reviewed by Zoltan Herczeg.

Certain compiler flags should not be added when cross compilation is enabled.

  • Scripts/webkitdirs.pm:

(runAutogenForAutotoolsProjectIfNecessary):
(generateBuildSystemFromCMakeProject):

4:34 AM Changeset in webkit [160169] by Michał Pakuła vel Rutka
  • 3 edits in trunk/LayoutTests

Unreviewed EFL gardening

After bumping GStreamer version to 1.2.1 in r160151 some video related WebGL conformance test started to pass.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
4:14 AM Changeset in webkit [160168] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Update GObject DOM bindings symbols file after r159711.

  • bindings/gobject/webkitdom.symbols:
4:00 AM Changeset in webkit [160167] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove duplicated/dead code from cpp style checker unit tests.
https://bugs.webkit.org/show_bug.cgi?id=125226

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-05
Reviewed by Ryosuke Niwa.

Remove the first definition of OrderOfIncludesTest class as it is
overwritten by the second. Remove a duplicated assert statement
from the second class.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(OrderOfIncludesTest.setUp):
(OrderOfIncludesTest.test_try_drop_common_suffixes):

The last assert was duplicated.

3:07 AM Changeset in webkit [160166] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Tools

Remove Scripts/generate-qt-inspector-resource.
https://bugs.webkit.org/show_bug.cgi?id=125288

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-05
Reviewed by Andreas Kling.

  • Scripts/generate-qt-inspector-resource: Removed. There is no QT anymore.

We don't need this file.

2:32 AM Changeset in webkit [160165] by commit-queue@webkit.org
  • 9 edits in trunk/Tools

Remove certain methods from TestExpectations and use TestExpectationsModel instead of them
https://bugs.webkit.org/show_bug.cgi?id=125218

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-05
Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:

(LayoutTestFinder.skip_tests):

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(LayoutTestRunner.run_tests):
(LayoutTestRunner._update_summary_with_result):

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._test_is_slow):

  • Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:

(JSONLayoutResultsGenerator._insert_failure_summaries):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectations.get_rebaselining_failures):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(assert_exp):
(MiscTests.test_multiple_results):
(MiscTests.test_category_expectations):
(MiscTests.test_get_modifiers):
(MiscTests.test_get_expectations_string):
(MiscTests.test_expectation_to_string):
(MiscTests.test_get_test_set):
(MiscTests.test_more_specific_override_resets_skip):
(SkippedTests.check):

  • Scripts/webkitpy/layout_tests/models/test_run_results.py:

(TestRunResults.init):
(summarize_results):

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineExpectations._tests_to_rebaseline):

12:49 AM Changeset in webkit [160164] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[GTK] Move platform sources free of layering violations under libPlatform
https://bugs.webkit.org/show_bug.cgi?id=117509

Reviewed by Carlos Garcia Campos.

  • GNUmakefile.list.am: Move additional source files located in the platform layer under libPlatform.

All moved sources are free of layering violations and thus ready for the migration.

12:47 AM Changeset in webkit [160163] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebCore

Remove bridge/testqtbindings.cpp.
https://bugs.webkit.org/show_bug.cgi?id=125287

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-05
Reviewed by Alexey Proskuryakov.

  • bridge/testqtbindings.cpp: Removed. There is no QT anymore.

We don't need this file.

12:47 AM Changeset in webkit [160162] by zandobersek@gmail.com
  • 4 edits in trunk/Source/WebKit2

[GTK][WK2] Clean up WorkQueueGtk
https://bugs.webkit.org/show_bug.cgi?id=125177

Reviewed by Carlos Garcia Campos.

Clean up the GTK implementation of the WorkQueue class a bit.

  • registerSocketEventHandler doesn't take a condition argument anymore -- G_IO_IN was the only condition ever passed into

that method so that is now the hard-coded default.

  • Clean up the declarations of GTK-specific bits in the WorkQueue header file. SocketEventSourceIterator typedef is removed

and auto will be used instead.

  • WorkQueue::dispatchOnTermination and WorkQueue::SocketEventSource::performWorkOnTermination methods were unused and now removed.
  • WorkQueue::SocketEventSource doesn't expect a GIO condition anymore, and WorkQueue::SocketEventSource::checkCondition is removed.

G_IO_IN condition was the only one used is now hard-coded into the check in WorkQueue::SocketEventSource::eventCallback.

  • Removed an unnecessary non-null assertion for the heap-allocated SocketEventSource.
  • Removed a technically duplicated assertion that a file descriptor is already present in the event sources map. Moved the

assertion before the HashMap::find() call.

  • Removed two unnecessary assertions that non-null values are being returned by g_idle_source_new() and g_timeout_source_new().

Both functions are guaranteed to return non-null values.

  • Platform/CoreIPC/unix/ConnectionUnix.cpp:

(CoreIPC::Connection::open):

  • Platform/WorkQueue.h:
  • Platform/gtk/WorkQueueGtk.cpp:

(WorkQueue::SocketEventSource::SocketEventSource):
(WorkQueue::SocketEventSource::eventCallback):
(WorkQueue::registerSocketEventHandler):
(WorkQueue::unregisterSocketEventHandler):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):

Dec 4, 2013:

11:41 PM Changeset in webkit [160161] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Report error when #else is used in message receiver generator's input.
https://bugs.webkit.org/show_bug.cgi?id=124147

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-04
Reviewed by Csaba Osztrogonác.

  • Scripts/webkit2/messages_unittest.py:

(UnsupportedPrecompilerDirectiveTest):
(UnsupportedPrecompilerDirectiveTest.test_error_at_else):
(UnsupportedPrecompilerDirectiveTest.test_error_at_elif):

  • Scripts/webkit2/parser.py:

(parse):

10:44 PM Changeset in webkit [160160] by Samuel White
  • 4 edits in trunk/LayoutTests

Layout Test platform/mac/accessibility/search-predicate-element-count.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=125195

Reviewed by Chris Fleizach.

Our test checks for AccessibilityObject::isOnscreen which makes sure an element is currently scrolled to a visible
location onscreen. This test was flaky because sometimes elements we thought would be visible weren't. To resolve
this I've moved the elements that are tested for visibility to the very top of the document so they have a tiny
vertical offset and will ALWAYS be visible.

  • platform/mac/TestExpectations:
  • platform/mac/accessibility/search-predicate-element-count-expected.txt:
  • platform/mac/accessibility/search-predicate-element-count.html:
9:11 PM Changeset in webkit [160159] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

% unit heights don't work if parent block height is set in vh
https://bugs.webkit.org/show_bug.cgi?id=118516

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-12-04
Reviewed by Simon Fraser.

From Blink r156449 by <srinivasa.ragavan.venkateswaran@intel.com>

Source/WebCore:

An element having height as percentage needs to have the
containingblock's height or availableheight to calculate its
own height. The containing block having a height set in vh
unit was not being considered for calculating the child's
height.

Tests: fast/css/viewport-percentage-compute-box-height.html

fast/css/viewport-percentage-compute-box-width.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePercentageLogicalHeight):
Correct child's height(in pecentage) was not being calculated
incase of parent having height set in vh unit. Added condition
to calculate the containing block height in terms of viewport size.

LayoutTests:

  • fast/css/viewport-percentage-compute-box-height-expected.html: Added.
  • fast/css/viewport-percentage-compute-box-height.html: Added.
  • fast/css/viewport-percentage-compute-box-width-expected.html: Added.
  • fast/css/viewport-percentage-compute-box-width.html: Added.

Added new tests for verifying that percentage unit height/width works
if parent block height/width is set in vh/vw units.

8:35 PM Changeset in webkit [160158] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

[Windows] Unreviewed build fix. Copy headers from rendering/line to build directory.

  • WebCore.vcxproj/copyForwardingHeaders.cmd:
7:57 PM Changeset in webkit [160157] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
https://bugs.webkit.org/show_bug.cgi?id=125208

Rubber-stamped by Anders Carlsson.

Address Darin's comment to use fastGetAttribute instead of getAttribute.

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::bgColor):
(WebCore::HTMLDocument::fgColor):
(WebCore::HTMLDocument::alinkColor):
(WebCore::HTMLDocument::linkColor):
(WebCore::HTMLDocument::vlinkColor):

7:42 PM Changeset in webkit [160156] by rniwa@webkit.org
  • 7 edits in trunk

Enable HTMLTemplateElement by default
https://bugs.webkit.org/show_bug.cgi?id=123851

Reviewed by Antti Koivisto.

.:

  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/WebKitFeatures.cmake:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
7:36 PM Changeset in webkit [160155] by matthew_hanson@apple.com
  • 5 edits in trunk/Source

Versioning.

7:23 PM Changeset in webkit [160154] by matthew_hanson@apple.com
  • 5 edits in trunk/Source

Versioning.

7:18 PM Changeset in webkit [160153] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.8

New Tag.

7:08 PM Changeset in webkit [160152] by commit-queue@webkit.org
  • 23 edits
    2 adds
    3 deletes in trunk/Source

Consolidate various frame snapshot capabilities.
https://bugs.webkit.org/show_bug.cgi?id=124325

Patch by Brian J. Burg <Brian Burg> on 2013-12-04
Reviewed by Darin Adler.

Source/WebCore:

Various snapshot creation methods had duplicated code and were split
between Frame, DragImage, and platform-specific implementationss.
This patch puts WebCore snapshot methods into FrameSnapshotting
and removes platform implementations where possible.

DragImage methods reuse snapshot methods where possible. Inspector
will be able to take snapshots without using drag images.

No new tests, this is a refactoring.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/objc/DOM.mm:

(-[DOMNode renderedImage]):
(-[DOMRange renderedImageForcingBlackText:]):

  • dom/Clipboard.cpp:

(WebCore::Clipboard::createDragImage):

  • dom/ClipboardMac.mm:

(WebCore::Clipboard::createDragImage):

  • page/DragController.cpp:

(WebCore::DragController::startDrag):

  • page/Frame.cpp:
  • page/Frame.h:
  • page/FrameSnapshotting.cpp: Added.

(WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
(WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
(WebCore::snapshotFrameRect): Move most buffer logic to here.
(WebCore::snapshotSelection): Moved from Frame.
(WebCore::snapshotNode): Moved from Frame.

  • page/FrameSnapshotting.h: Added.
  • page/mac/FrameMac.mm: Removed.
  • page/mac/FrameSnapshottingMac.h: Removed.
  • page/mac/FrameSnapshottingMac.mm: Removed.
  • page/win/FrameWin.cpp: remove duplicate implementation.
  • page/win/FrameWin.h: Fix an incorrect parameter name.
  • platform/DragImage.cpp:

(WebCore::ScopedNodeDragState::ScopedNodeDragState):
(WebCore::ScopedNodeDragState::~ScopedNodeDragState):
(WebCore::createDragImageFromSnapshot): Boilerplate buffer conversion.
(WebCore::createDragImageForNode):
(WebCore::createDragImageForSelection):
(WebCore::ScopedFrameSelectionState::ScopedFrameSelectionState):
(WebCore::ScopedFrameSelectionState::~ScopedFrameSelectionState):
(WebCore::createDragImageForRange): Moved from Frame.
(WebCore::createDragImageForImage): Moved from FrameSnapshottingMac.
(WebCore::createDragImageForLink): use nullptr.

Source/WebKit/ios:

  • WebCoreSupport/WebFrameIOS.mm: use new header file.

Source/WebKit/mac:

Use new platform-independent methods instead of Mac methods.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView selectionImageForcingBlackText:]):

Source/WebKit/win:

  • DOMCoreClasses.cpp:

(DOMElement::renderedImage): use createDragImageForNode.

7:05 PM Changeset in webkit [160151] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Bumping GStreamer version to 1.2.1
https://bugs.webkit.org/show_bug.cgi?id=125155

Patch by Jozsef Berta <jberta@inf.u-szeged.hu> on 2013-12-04
Reviewed by Gyuyoung Kim.

  • efl/jhbuild.modules: Set the GStreamer version to 1.2.1
6:05 PM Changeset in webkit [160150] by fpizlo@apple.com
  • 17 edits
    8 adds in trunk

Fold constant typed arrays
https://bugs.webkit.org/show_bug.cgi?id=125205

Source/JavaScriptCore:

Reviewed by Oliver Hunt and Mark Hahnenberg.

If by some other mechanism we have a typed array access on a compile-time constant
typed array pointer, then fold:

  • Array bounds checks. Specifically, fold the load of length.


  • Loading the vector.


This needs to install a watchpoint on the array itself because of the possibility of
neutering. Neutering is ridiculous. We do this without bloating the size of
ArrayBuffer or JSArrayBufferView in the common case (i.e. the case where you
allocated an array that didn't end up becoming a compile-time constant). To install
the watchpoint, we slowDownAndWasteMemory and then create an incoming reference to
the ArrayBuffer, where that incoming reference is from a watchpoint object. The
ArrayBuffer already knows about such incoming references and can fire the
watchpoints that way.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGDesiredWatchpoints.cpp:

(JSC::DFG::ArrayBufferViewWatchpointAdaptor::add):
(JSC::DFG::DesiredWatchpoints::addLazily):

  • dfg/DFGDesiredWatchpoints.h:

(JSC::DFG::GenericSetAdaptor::add):
(JSC::DFG::GenericSetAdaptor::hasBeenInvalidated):
(JSC::DFG::ArrayBufferViewWatchpointAdaptor::hasBeenInvalidated):
(JSC::DFG::GenericDesiredWatchpoints::reallyAdd):
(JSC::DFG::GenericDesiredWatchpoints::areStillValid):
(JSC::DFG::GenericDesiredWatchpoints::isStillValid):
(JSC::DFG::GenericDesiredWatchpoints::shouldAssumeMixedState):
(JSC::DFG::DesiredWatchpoints::isStillValid):
(JSC::DFG::DesiredWatchpoints::shouldAssumeMixedState):
(JSC::DFG::DesiredWatchpoints::isValidOrMixed):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::tryGetFoldableView):

  • dfg/DFGGraph.h:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
(JSC::DFG::SpeculativeJIT::emitTypedArrayBoundsCheck):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileConstantIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):
(JSC::DFG::WatchpointCollectionPhase::addLazily):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileGetIndexedPropertyStorage):
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
(JSC::FTL::LowerDFGToLLVM::typedArrayLength):

  • runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::transfer):

  • runtime/ArrayBufferNeuteringWatchpoint.cpp: Added.

(JSC::ArrayBufferNeuteringWatchpoint::ArrayBufferNeuteringWatchpoint):
(JSC::ArrayBufferNeuteringWatchpoint::~ArrayBufferNeuteringWatchpoint):
(JSC::ArrayBufferNeuteringWatchpoint::finishCreation):
(JSC::ArrayBufferNeuteringWatchpoint::destroy):
(JSC::ArrayBufferNeuteringWatchpoint::create):
(JSC::ArrayBufferNeuteringWatchpoint::createStructure):

  • runtime/ArrayBufferNeuteringWatchpoint.h: Added.

(JSC::ArrayBufferNeuteringWatchpoint::set):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

LayoutTests:

Reviewed by Oliver Hunt and Mark Hahnenberg.

  • js/regress/fixed-typed-array-storage-expected.txt: Added.
  • js/regress/fixed-typed-array-storage-var-index-expected.txt: Added.
  • js/regress/fixed-typed-array-storage-var-index.html: Added.
  • js/regress/fixed-typed-array-storage.html: Added.
  • js/regress/script-tests/fixed-typed-array-storage-var-index.js: Added.

(foo):

  • js/regress/script-tests/fixed-typed-array-storage.js: Added.

(foo):

6:03 PM Changeset in webkit [160149] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Update jhbuild revision.
https://bugs.webkit.org/show_bug.cgi?id=124966

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-04
Reviewed by Gyuyoung Kim.

Used version of Jhbuild failed to create directories and caused
update-webkitefl-libs to fail. Latest Jhbuild version has it fixed.

  • jhbuild/jhbuild-wrapper:
5:43 PM Changeset in webkit [160148] by weinig@apple.com
  • 5 edits in trunk/Source/WebKit2

[Cocoa] Make WKConnection work with WKObject wrapping
https://bugs.webkit.org/show_bug.cgi?id=125266

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKConnection.mm:

(-[WKConnection dealloc]):
(didReceiveMessage):
(didClose):
(setUpClient):
(-[WKConnection delegate]):
(-[WKConnection setDelegate:]):
(-[WKConnection sendMessageWithName:body:]):
(-[WKConnection remoteObjectRegistry]):
(-[WKConnection API::]):

  • UIProcess/API/Cocoa/WKConnectionInternal.h:

(WebKit::wrapper):

  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(didCreateConnection):

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

(-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundleRef:]):
(-[WKWebProcessPlugInController connection]):
(-[WKWebProcessPlugInController _bundleRef]):

5:30 PM Changeset in webkit [160147] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove spaces on a blank line to have ResourceHandleCFNet.cpp identical to iOS

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-04

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::platformLoadResourceSynchronously):

5:26 PM Changeset in webkit [160146] by andersca@apple.com
  • 4 edits
    2 adds in trunk

Add a WeakObjCPtr class
https://bugs.webkit.org/show_bug.cgi?id=125267

Reviewed by Geoffrey Garen.

Source/WebKit2:

WeakObjCPtr is a zeroing weak reference class template that will be used for delegates.

  • Shared/mac/WeakObjCPtr.h: Added.

(WebKit::WeakObjCPtr::WeakObjCPtr):
(WebKit::WeakObjCPtr::~WeakObjCPtr):
(WebKit::WeakObjCPtr::operator=):
(WebKit::WeakObjCPtr::get):

  • WebKit2.xcodeproj/project.pbxproj:

Tools:

Add API tests for WeakObjCPtr.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/mac/WeakObjCPtr.mm: Added.

(TEST):

4:52 PM Changeset in webkit [160145] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: ColorWheel uses old Color constructor
https://bugs.webkit.org/show_bug.cgi?id=125260

Reviewed by Joseph Pecoraro.

Update to new WebInspector.Color constructor signature and use a clear color.

  • UserInterface/ColorWheel.js:

(WebInspector.ColorWheel.prototype.get tintedColor):
(WebInspector.ColorWheel.prototype.get rawColor):

4:21 PM Changeset in webkit [160144] by bshafiei@apple.com
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

4:17 PM Changeset in webkit [160143] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: color picker doesn't work with "blue"
https://bugs.webkit.org/show_bug.cgi?id=125262

Reviewed by Joseph Pecoraro.

Under certain circumstances rounding issues would have us compare
two equal numbers that differ by 0.00000001 and sometime trip this
if statement and yield a null color. We now add a little fudge to
the test and also return a clear color rather than null to match what
we do in the getters for "tintedColor" and "rawColor".

  • UserInterface/ColorWheel.js:

(WebInspector.ColorWheel.prototype._colorAtPointWithBrightness):

4:17 PM Changeset in webkit [160142] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: use only two decimals for opacity in rgba/hsla colors
https://bugs.webkit.org/show_bug.cgi?id=125261

Reviewed by Joseph Pecoraro.

  • UserInterface/ColorPicker.js:

(WebInspector.ColorPicker.prototype._updateColor):

4:13 PM Changeset in webkit [160141] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed EFL build fix after r160135

  • CMakeLists.txt: Added rendering/line to include lists.
4:06 PM Changeset in webkit [160140] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r160116.
http://trac.webkit.org/changeset/160116
https://bugs.webkit.org/show_bug.cgi?id=125264

Change doesn't work as intended. See bug comments for details.
(Requested by bfulgham on #webkit).

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreading):

4:06 PM Changeset in webkit [160139] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.60.10

New tag.

4:03 PM Changeset in webkit [160138] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

Move pseudo element construction out from Element
https://bugs.webkit.org/show_bug.cgi?id=125257

Reviewed by Anders Carlsson.

This is logically part of the style resolve/render tree construction. This will make future
refactoring easier.

  • dom/Element.cpp:
  • dom/Element.h:
  • style/StyleResolveTree.cpp:

(WebCore::Style::beforeOrAfterPseudoElement):
(WebCore::Style::setBeforeOrAfterPseudoElement):
(WebCore::Style::clearBeforeOrAfterPseudoElement):
(WebCore::Style::needsPseudeElement):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::resolveTree):

3:43 PM Changeset in webkit [160137] by andersca@apple.com
  • 8 edits in trunk

Make the estimatedProgress property observable using KVO
https://bugs.webkit.org/show_bug.cgi?id=125259

Reviewed by Dan Bernstein.

Source/WebKit2:

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:
  • UIProcess/PageLoadState.cpp:

(WebKit::PageLoadState::PageLoadState):
(WebKit::PageLoadState::reset):
(WebKit::PageLoadState::activeURL):
(WebKit::PageLoadState::estimatedProgress):
(WebKit::PageLoadState::setPendingAPIRequestURL):
(WebKit::PageLoadState::clearPendingAPIRequestURL):
(WebKit::PageLoadState::didStartProgress):
(WebKit::PageLoadState::didChangeProgress):
(WebKit::PageLoadState::didFinishProgress):

  • UIProcess/PageLoadState.h:

Move m_estimatedProgress to the page load state and call the observers when it changes.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::estimatedProgress):
(WebKit::WebPageProxy::didStartProgress):
(WebKit::WebPageProxy::didChangeProgress):
(WebKit::WebPageProxy::didFinishProgress):
(WebKit::WebPageProxy::resetState):
Call through to m_pageLoadState.

  • UIProcess/WebPageProxy.h:

Tools:

Bind the progress indicator value to the "estimatedProgress" property.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController dealloc]):
(-[WK2BrowserWindowController awakeFromNib]):

3:26 PM Changeset in webkit [160136] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Including SecItemShim.h should be guarded by ENABLE(SEC_ITEM_SHIM)
https://bugs.webkit.org/show_bug.cgi?id=125255

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-04
Reviewed by Anders Carlsson.

  • UIProcess/WebProcessProxy.cpp:
  • WebProcess/WebProcess.cpp:
3:21 PM Changeset in webkit [160135] by zoltan@webkit.org
  • 8 edits
    2 adds in trunk/Source/WebCore

Move TrailingObjects class into its own h/cpp
https://bugs.webkit.org/show_bug.cgi?id=124956

Reviewed by David Hyatt.

Since I moved space-ignoring inline functions into MidpointState in r160074,
I can nicely separate TrailingObjects class from BreakingContextInlineHeader.h.
This change improves the readability, and it's part of the RenderBlockLineLayout
refactoring campaign, which is tracked under bug #121261.

No new tests, no behavior change.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.h:
  • rendering/line/BreakingContextInlineHeaders.h:
  • rendering/line/TrailingObjects.cpp: Added.

(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):

  • rendering/line/TrailingObjects.h: Added.

(WebCore::TrailingObjects::TrailingObjects):
(WebCore::TrailingObjects::setTrailingWhitespace):
(WebCore::TrailingObjects::clear):
(WebCore::TrailingObjects::appendBoxIfNeeded):

3:20 PM Changeset in webkit [160134] by Antoine Quint
  • 2 edits
    4 adds in trunk/Source/WebInspectorUI

Web Inspector: "data detectors" menu on hover for actionable tokens
https://bugs.webkit.org/show_bug.cgi?id=124363

Reviewed by Timothy Hatcher.

Add a new WebInspector.HoverMenu class to display an overlay menu that is presented
with respect to a target frame that it draws itself around adding a customizable
action button to its right. The menu uses fade animations as it's presented and
dismissed and a single delegation method is fired when the button is pressed. Finally,
just like a popover, it automatically dismisses itself upon scrolling anywhere
outside of its bounds.

  • UserInterface/HoverMenu.css: Added.
  • UserInterface/HoverMenu.js: Added.

(WebInspector.HoverMenu):
(WebInspector.HoverMenu.prototype.get element):
(WebInspector.HoverMenu.prototype.dismiss):
(WebInspector.HoverMenu.prototype.handleEvent):
(WebInspector.HoverMenu.prototype._handleClickEvent):

  • UserInterface/Images/HoverMenuButton.png: Added.
  • UserInterface/Images/HoverMenuButton@2x.png: Added.
  • UserInterface/Main.html:
3:20 PM Changeset in webkit [160133] by oliver@apple.com
  • 51 edits in trunk/Source

Refactor static getter function prototype to include thisValue in addition to the base object
https://bugs.webkit.org/show_bug.cgi?id=124461

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Add thisValue parameter to static getter prototype, and switch
from JSValue to EncodedJSValue for parameters and return value.

Currently none of the static getters use the thisValue, but
separating out the refactoring will prevent future changes
from getting lost in the noise of refactoring. This means
that this patch does not result in any change in behaviour.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::::asCallbackObject):
(JSC::::staticFunctionGetter):
(JSC::::callbackGetter):

  • jit/JITOperations.cpp:
  • runtime/JSActivation.cpp:

(JSC::JSActivation::argumentsGetter):

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

(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::lengthGetter):
(JSC::JSFunction::nameGetter):

  • runtime/JSFunction.h:
  • runtime/JSObject.h:

(JSC::PropertySlot::getValue):

  • runtime/NumberConstructor.cpp:

(JSC::numberConstructorNaNValue):
(JSC::numberConstructorNegInfinity):
(JSC::numberConstructorPosInfinity):
(JSC::numberConstructorMaxValue):
(JSC::numberConstructorMinValue):

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

(JSC::asRegExpConstructor):
(JSC::regExpConstructorDollar1):
(JSC::regExpConstructorDollar2):
(JSC::regExpConstructorDollar3):
(JSC::regExpConstructorDollar4):
(JSC::regExpConstructorDollar5):
(JSC::regExpConstructorDollar6):
(JSC::regExpConstructorDollar7):
(JSC::regExpConstructorDollar8):
(JSC::regExpConstructorDollar9):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):

  • runtime/RegExpObject.cpp:

(JSC::asRegExpObject):
(JSC::regExpObjectGlobal):
(JSC::regExpObjectIgnoreCase):
(JSC::regExpObjectMultiline):
(JSC::regExpObjectSource):

Source/WebCore:

Change bindings codegen to produce static getter functions
with the correct types. Also update the many custom implementations
to the new type.

No change in behaviour.

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
(WebCore::cssPropertyGetterCallback):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::objectToStringFunctionGetter):

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

(WebCore::JSDOMMimeTypeArray::nameGetter):

  • bindings/js/JSDOMPluginArrayCustom.cpp:

(WebCore::JSDOMPluginArray::nameGetter):

  • bindings/js/JSDOMPluginCustom.cpp:

(WebCore::JSDOMPlugin::nameGetter):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::nameGetter):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::nonCachingStaticFunctionGetter):
(WebCore::childFrameGetter):
(WebCore::indexGetter):
(WebCore::namedItemGetter):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::JSHTMLAllCollection::nameGetter):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::nameGetter):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp:

(WebCore::JSHTMLFormControlsCollection::nameGetter):

  • bindings/js/JSHTMLFormElementCustom.cpp:

(WebCore::JSHTMLFormElement::nameGetter):

  • bindings/js/JSHTMLFrameSetElementCustom.cpp:

(WebCore::JSHTMLFrameSetElement::nameGetter):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::nonCachingStaticBackFunctionGetter):
(WebCore::nonCachingStaticForwardFunctionGetter):
(WebCore::nonCachingStaticGoFunctionGetter):

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::scopeType):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::nonCachingStaticReplaceFunctionGetter):
(WebCore::nonCachingStaticReloadFunctionGetter):
(WebCore::nonCachingStaticAssignFunctionGetter):

  • bindings/js/JSNamedNodeMapCustom.cpp:

(WebCore::JSNamedNodeMap::nameGetter):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeList::nameGetter):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementPropertyGetter):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSRTCStatsResponseCustom.cpp:

(WebCore::JSRTCStatsResponse::nameGetter):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::nameGetter):

  • bindings/js/JSStyleSheetListCustom.cpp:

(WebCore::JSStyleSheetList::nameGetter):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateParametersCheck):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::indexGetter):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):

  • bridge/runtime_object.h:

Source/WebKit2:

Update the WK2 JSC usage to the new static getter API

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::callMethod):

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::callNPJSObject):
(WebKit::constructWithConstructor):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
(WebKit::NPRuntimeObjectMap::finalize):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::frameForContext):
(WebKit::WebFrame::counterValue):

3:16 PM Changeset in webkit [160132] by Antoine Quint
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: edited color should serialize back to original format when possible
https://bugs.webkit.org/show_bug.cgi?id=125244

Reviewed by Joseph Pecoraro.

Profoundly reworked WebInspector.Color to be more efficient and more flexible when
serializing the color to the various supported formats.

  • UserInterface/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
Use new WebInspector.Color.fromString() factory and check for a null return value
rather than an exception to identify invalid color tokens.

  • UserInterface/Color.js:

(WebInspector.Color):
Rewrote WebInspector.Color such that it would have, at all times, a canonical
representation in terms of either RGBA or HSLA depending on the format used to
create the color. The new constructor parameters lets the user pass a format
and the RGBA or HSLA components, allowing to bypass the string-only creation
system which was sub-optimal for the new color picker. Additionally, the toString()
method now can provide the most accurate serialization of the color based on the
provided format with a fallback mechanism to RGB/RGBA in cases where the desired
format would incur a loss of fidelity. Finally, simplified the API to only feature
essential features.

(WebInspector.Color.fromString):
New factory method used to create a color from a string.

  • UserInterface/ColorPicker.js:

(WebInspector.ColorPicker.prototype.set color):
Keep track of the original color format so that we can use it as the preferred format
when serializing the updated color in _updateColor().

(WebInspector.ColorPicker.prototype._updateColor):
Use the original color format as the prefered formation for color serialization. Also,
use the new WebInspector.Color constructor in lieu of the removed .fromRGBA factory.

(WebInspector.ColorPicker.prototype._updateSliders):
Use the new WebInspector.Color constructor in lieu of the removed .fromRGBA factory.

  • UserInterface/ColorWheel.js:

(WebInspector.ColorWheel.prototype._colorAtPointWithBrightness):
Use the new WebInspector.Color constructor in lieu of the removed .fromRGB factory.

3:07 PM Changeset in webkit [160131] by dbates@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[iOS] Enable Objective-C ARC when building JSC tools for iOS simulator
https://bugs.webkit.org/show_bug.cgi?id=125170

Reviewed by Geoffrey Garen.

  • API/tests/testapi.mm:
  • Configurations/ToolExecutable.xcconfig:
2:53 PM Changeset in webkit [160130] by zoltan@webkit.org
  • 5 edits
    10 adds in trunk

[CSS Shapes] Support inset for shape-outside
<https://webkit.org/b/125112>

Reviewed by David Hyatt.

Source/WebCore:

This patch adds inset support for shape-outside. Parsing has previously landed in r159968.
Specification: http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html

fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html
fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html
fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html
fast/shapes/shape-outside-floats/shape-outside-floats-inset.html

  • platform/LengthSize.h:

(WebCore::LengthSize::floatSize): Add conversion to FloatSize.

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): Handle inset case.

LayoutTests:

  • fast/shapes/resources/rounded-rectangle.js: Add support to generate partially rounded rectangles.

(scanConvertRoundedRectangleOutside):
(genLeftRoundedRectFloatShapeOutsideRefTest):
(genRightRoundedRectFloatShapeOutsideRefTest):

  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-inset.html: Added.
2:51 PM Changeset in webkit [160129] by andersca@apple.com
  • 7 edits in trunk

Add a loading property to WKBrowsingContextController
https://bugs.webkit.org/show_bug.cgi?id=125256

Reviewed by Dan Bernstein.

Source/WebKit2:

  • UIProcess/API/Cocoa/WKBrowsingContextController.h:

Add loading property.

  • UIProcess/API/Cocoa/WKBrowsingContextConteroller.mm:

Implement willChangeIsLoading and didChangeIsLoading and call the relevant KVO methods.

(-[WKBrowsingContextController isLoading]):
Call through to the PageLoadState.

  • UIProcess/PageLoadState.cpp:

(WebKit::PageLoadState::reset):
Use setState.

(WebKit::PageLoadState::isLoading):
Call isLoadingState.

(WebKit::PageLoadState::didStartProvisionalLoad):
Use setState.

(WebKit::PageLoadState::didFailProvisionalLoad):
Use setState.

(WebKit::PageLoadState::didCommitLoad):
Use setState.

(WebKit::PageLoadState::didFinishLoad):
Use setState.

(WebKit::PageLoadState::didFailLoad):
Use setState.

(WebKit::PageLoadState::isLoadingState):
Helper function for determining whether a state is a loading state or not.

(WebKit::PageLoadState::setState):
If setting the state will cause "isLoading" to change, call out to the observers.

  • UIProcess/PageLoadState.h:

Tools:

Bind the progress indicator visibility to the "loading" property.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController dealloc]):
(-[WK2BrowserWindowController awakeFromNib]):
(-[WK2BrowserWindowController didStartProgress]):
(-[WK2BrowserWindowController didFinishProgress]):

2:42 PM Changeset in webkit [160128] by commit-queue@webkit.org
  • 14 edits in trunk

Source/WebKit2: [EFL][GTK][WK2] Remove unnecessary reinterpret_casts when setting API clients
https://bugs.webkit.org/show_bug.cgi?id=125231

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-04
Reviewed by Anders Carlsson.

After r159988, WKClients have to be instantiated with a specific
version of that client and its Base field has to used when setting it.
Eg:

WKFullScreenClientV0 wkClient = {

{

0, version
this,
clientInfo

},

willEnterFullScreen,
willExitFullScreen

};
WKViewSetFullScreenClientGtk(this, &wkClient.base);

So we don't need the reinterpret_casts introduced in r160075.

  • UIProcess/API/gtk/WebKitFullscreenClient.cpp:

(attachFullScreenClientToView): reinterpret_cast<WKFooClientBase*>(&client) -> &client.base

  • UIProcess/API/gtk/WebKitRequestManagerClient.cpp:

(attachRequestManagerClientToContext): Ditto.

  • UIProcess/API/gtk/WebKitTextChecker.cpp:

(WebKitTextChecker::WebKitTextChecker): Ditto.

  • UIProcess/API/gtk/WebKitWebInspector.cpp:

(webkitWebInspectorCreate): Ditto.

  • UIProcess/efl/BatteryProvider.cpp:

(BatteryProvider::BatteryProvider): Ditto.

  • UIProcess/efl/NetworkInfoProvider.cpp:

(NetworkInfoProvider::NetworkInfoProvider): Ditto.

  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::PageUIClientEfl): Ditto.

  • UIProcess/efl/RequestManagerClientEfl.cpp:

(WebKit::RequestManagerClientEfl::RequestManagerClientEfl): Ditto.

  • UIProcess/efl/TextCheckerClientEfl.cpp:

(TextCheckerClientEfl::TextCheckerClientEfl): Ditto.

  • UIProcess/efl/VibrationClientEfl.cpp:

(VibrationClientEfl::VibrationClientEfl): Ditto.

  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::ViewClientEfl): Ditto.

Tools: [EFL][WK2] Buildfix after r160104
https://bugs.webkit.org/show_bug.cgi?id=125231

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-04
Reviewed by Anders Carlsson.

  • TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp:

(TestWebKitAPI::TEST): reinterpret_cast<WKFooClientBase*>(&client) -> &client.base

  • TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp:

(TestWebKitAPI::setViewClient): Ditto.

2:24 PM Changeset in webkit [160127] by betravis@adobe.com
  • 6 edits in trunk

Web Inspector: [CSS Shapes] Support raster shape visualizations
https://bugs.webkit.org/show_bug.cgi?id=124080

Reviewed by Joseph Pecoraro.

Source/WebCore:

Create an inspector visualization for a shape created from an image.
The visualization takes each line of the image, combining where possible.

Test added to inspector-protocol/model/highlight-shape-outside.html

  • rendering/shapes/RasterShape.cpp:

(WebCore::RasterShapeIntervals::buildBoundsPath): Create a path representing the
RasterShapeIntervals.

  • rendering/shapes/RasterShape.h:

LayoutTests:

Add a test for data sent to the inspector for a raster shape.

  • inspector-protocol/model/highlight-shape-outside-expected.txt:
  • inspector-protocol/model/highlight-shape-outside.html:
2:18 PM Changeset in webkit [160126] by zoltan@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Shapes] Remove explicit numbering from BasicShape::Type and CSSBasicShape::Type enums
https://bugs.webkit.org/show_bug.cgi?id=125163

Reviewed by Rob Buis.

I don't see any reason to have explicit numbering for the Type enum in our [CSS]BasicShape classes.
I removed numbering, which will decrease for instance the merge conflicts on Type changes.

No new tests, no behavior change.

  • css/CSSBasicShapes.h:
  • rendering/style/BasicShapes.h:
2:18 PM Changeset in webkit [160125] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebKit2

[GTK][WK2] Fix build after r160104
https://bugs.webkit.org/show_bug.cgi?id=125240

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-04
Reviewed by Anders Carlsson.

Using specific version of API client when instantiating them.
Applied that same change to the following files:

  • UIProcess/API/gtk/WebKitContextMenuClient.cpp:
  • UIProcess/API/gtk/WebKitCookieManager.cpp:
  • UIProcess/API/gtk/WebKitDownloadClient.cpp:
  • UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
  • UIProcess/API/gtk/WebKitFindController.cpp:
  • UIProcess/API/gtk/WebKitFormClient.cpp:
  • UIProcess/API/gtk/WebKitGeolocationProvider.cpp:
  • UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
  • UIProcess/API/gtk/WebKitLoaderClient.cpp:
  • UIProcess/API/gtk/WebKitPolicyClient.cpp:
  • UIProcess/API/gtk/WebKitUIClient.cpp:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
2:16 PM Changeset in webkit [160124] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style detected some ternary statements as initialization lists
https://bugs.webkit.org/show_bug.cgi?id=125246

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-04
Reviewed by Dean Jackson.

The regular expression that check-webkit-tests uses to detect initialization
lists was too broad, resulting in false positives. This patch makes the
regex more specific

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_member_initialization_list):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(WebKitStyleTest.test_member_initialization_list):

2:13 PM Changeset in webkit [160123] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed the 32-bit Mac build.

  • Shared/mac/WebCoreArgumentCodersMac.mm:

(CoreIPC::::encodePlatformData):

2:00 PM Changeset in webkit [160122] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] When NSError user info is missing NSErrorPeerCertificateChainKey, ArgumentCoder should extract it from NSURLErrorFailingURLPeerTrustErrorKey
https://bugs.webkit.org/show_bug.cgi?id=125251

Reviewed by Anders Carlsson.

  • Shared/mac/WebCoreArgumentCodersMac.mm:

(CoreIPC::::encodePlatformData): If the user info doesn’t include
NSURLErrorFailingURLPeerTrustErrorKey, copy the peer certificate chain from the peer trust
under NSURLErrorFailingURLPeerTrustErrorKey. On the decoding side, it will appear under the
NSURLErrorFailingURLPeerTrustErrorKey, because a trust object can’t be fully serialized.

1:35 PM Changeset in webkit [160121] by commit-queue@webkit.org
  • 10 edits in trunk

Allow ImageBuffer to use an IOSurface that is larger than necessary
https://bugs.webkit.org/show_bug.cgi?id=124626

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-04
Reviewed by Simon Fraser.

Source/WebCore:

Because creating ImageBuffer's backing store can be so expensive, it
would be beneficial to have a pool of pre-created backing stores
available. However, this means that ImageBuffer might have to use a
backing store that is larger than the exact dimensions that it needs.
This patch adds a field, m_backingStoreSize, to CG's ImageBufferData
class, and uses this new field when performing ImageBuffer operations
to allow for larger-than-necessary backing stores. Content is always
drawn in the top left corner of the backing store.

No new tests are necessary because there is no behavior change.

  • platform/graphics/ImageBuffer.h:

(WebCore::ImageBuffer::baseTransform): The base transform has to put
content at the top left corner instead of bottom left

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::createCroppedImageIfNecessary): Convenience function to figure out
the dimensions of the backing texture in user space
(WebCore::ImageBuffer::ImageBuffer): Set up new m_backingStoreSize member
(WebCore::maybeCropToBounds): Some ImageBuffer API functions require
outputting an image with logical size. This function performs the cropping
(WebCore::ImageBuffer::copyImage): Updated for larger-than-necessary
backing stores
(WebCore::ImageBuffer::copyNativeImage): Ditto
(WebCore::ImageBuffer::draw): Ditto
(WebCore::ImageBuffer::clip): Ditto
(WebCore::ImageBuffer::putByteArray): Ditto
(WebCore::ImageBuffer::toDataURL): Ditto

  • platform/graphics/cg/ImageBufferDataCG.cpp:

(WebCore::ImageBufferData::getData): Ditto
(WebCore::ImageBufferData::putData): Ditto

  • platform/graphics/cg/ImageBufferDataCG.h: New m_backingStoreSize field

LayoutTests:

Update tests to be more robust with respect to accelerated vs
non-accelerated ImageBuffers.

  • fast/canvas/script-tests/canvas-fillPath-shadow.js: Don't sample a canvas at exactly

the corner of a drawn shape (because the corner might be antialiased). Instead, sample
a single pixel inside the shape

  • fast/canvas/script-tests/canvas-scale-shadowBlur.js: Don't sample a canvas at exactly

the edge of the blur radius. Instead, sample a single pixel past the blur radius.

  • fast/canvas/script-tests/canvas-scale-strokePath-shadow.js:

(shouldBeAround): Allow this test to be less strict when sampling inside a blurred region

  • platform/mac/fast/canvas/canvas-scale-shadowBlur-expected.txt: Matching update w/r/t

canvas-scale-shadowBlur.js

1:29 PM Changeset in webkit [160120] by Brent Fulgham
  • 2 edits in branches/safari-537.60-branch/Source/WebKit

Merge r160118.

2013-12-04 Brent Fulgham <Brent Fulgham>

[Win] Correct WebKit.make copy command to land resources in proper directory.
https://bugs.webkit.org/show_bug.cgi?id=125249

Reviewed by Tim Horton.

  • WebKit.vcxproj/WebKit.make: Correct the copy command.
1:25 PM Changeset in webkit [160119] by dino@apple.com
  • 9 edits
    6 adds
    2 deletes in trunk

Source/WebCore: [WebGL] Support for texImage2D of type HALF_FLOAT_OES
https://bugs.webkit.org/show_bug.cgi?id=110936

Reviewed by Brent Fulgham.

Add support for the HALF_FLOAT_OES texture format from texImage2D
and texSubImage2D.

A lot of this patch comes from the original patch on the bug
by Nayan Kumar, and the Blink commit:
https://codereview.chromium.org/13842017

Tests: fast/canvas/webgl/oes-texture-half-float-with-canvas.html

fast/canvas/webgl/oes-texture-half-float-with-image.html
fast/canvas/webgl/oes-texture-half-float-with-video.html

  • html/canvas/OESTextureHalfFloat.idl: New HALF_FLOAT_OES constant value.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::validateTexFunc): Remove the code that
would bail if half-float values were used.

  • platform/graphics/GraphicsContext3D.cpp:
  • Return appropriate DataFormats for half floating point types.
  • Copy the float -> half-float code from Blink
  • New pack functions for half floats
  • platform/graphics/GraphicsContext3D.h: New format types.
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::texSubImage2D): Use GL_HALF_FLOAT_ARB if we're passed
a HALF_FLOAT_OES.

LayoutTests: [WebGL] Support for texImage2D/texSubImage2D of type HALF_FLOAT_OES
https://bugs.webkit.org/show_bug.cgi?id=110936

Reviewed by Brent Fulgham.

New tests for half-float textures.

  • fast/canvas/webgl/oes-texture-half-float-expected.txt:
  • fast/canvas/webgl/oes-texture-half-float-not-supported-expected.txt: Removed.
  • fast/canvas/webgl/oes-texture-half-float-not-supported.html: Removed.
  • fast/canvas/webgl/oes-texture-half-float-with-canvas-expected.txt: Added.
  • fast/canvas/webgl/oes-texture-half-float-with-canvas.html: Added.
  • fast/canvas/webgl/oes-texture-half-float-with-image-expected.txt: Added.
  • fast/canvas/webgl/oes-texture-half-float-with-image.html: Added.
  • fast/canvas/webgl/oes-texture-half-float-with-video-expected.txt: Added.
  • fast/canvas/webgl/oes-texture-half-float-with-video.html: Added.
  • fast/canvas/webgl/oes-texture-half-float.html:
1:21 PM Changeset in webkit [160118] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Correct WebKit.make copy command to land resources in proper directory.
https://bugs.webkit.org/show_bug.cgi?id=125249

Reviewed by Tim Horton.

  • WebKit.vcxproj/WebKit.make: Correct the copy command.
1:04 PM Changeset in webkit [160117] by mitz@apple.com
  • 22 edits in trunk/Source

Replace USE(SECURITY_FRAMEWORK) with finer-grained defines
https://bugs.webkit.org/show_bug.cgi?id=125242

Reviewed by Sam Weinig.

Source/WebKit2:

  • Configurations/WebKit2.xcconfig: Removed “-framework Security” from the linker flags, now

that it’s included in the target’s Link Binary with Libraries build phase.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeConnection): Changed to use ENABLE(SEC_ITEM_SHIM).

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcess): Ditto.

  • Shared/Authentication/AuthenticationManager.cpp: Changed to use HAVE(SEC_IDENTITY).
  • Shared/Authentication/mac/AuthenticationManager.mac.mm: Ditto.
  • Shared/cf/ArgumentCodersCF.cpp:

(CoreIPC::typeFromCFTypeRef): Removed use of USE(SECURITY_FRAMEWORK) since all CF platforms
use it. Added HAVE(SEC_KEYCHAIN) where needed.
(CoreIPC::encode): Ditto.
(CoreIPC::decode): Ditto.

  • Shared/cf/ArgumentCodersCF.h: Ditto.
  • Shared/mac/SecItemShim.cpp: Chanegd to use ENABLE(SEC_ITEM_SHIM).
  • Shared/mac/SecItemShim.h: Ditto.
  • Shared/mac/SecItemShim.messages.in: Ditto.
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::connectionWillOpen): Ditto.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::connectionWillOpen): Ditto.

  • UIProcess/mac/SecItemShimProxy.cpp: Ditto.
  • UIProcess/mac/SecItemShimProxy.h: Ditto,
  • UIProcess/mac/SecItemShimProxy.messages.in: Ditto.
  • WebKit2.xcodeproj/project.pbxproj: Link Security.framework unconditionally.
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeConnection): Changed to use ENABLE(SEC_ITEM_SHIM).

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeProcess): Ditto.

  • config.h: Defined ENABLE_SEC_ITEM_SHIM.

Source/WTF:

  • wtf/Platform.h: Removed definitions of WTF_USE_SECURITY_FRAMEWORK, and defined

HAVE_SEC_IDENTITY and HAVE_SEC_KEYCHAIN.

12:43 PM Changeset in webkit [160116] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Use ThreadingOnce class to encapsulate pthread_once functionality.
https://bugs.webkit.org/show_bug.cgi?id=125228

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-04
Reviewed by Brent Fulgham.

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreading):

12:40 PM Changeset in webkit [160115] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove unneeded semicolons.
https://bugs.webkit.org/show_bug.cgi?id=125083.

Rubber-stamped by Filip Pizlo.

  • debugger/Debugger.h:

(JSC::Debugger::detach):
(JSC::Debugger::sourceParsed):
(JSC::Debugger::exception):
(JSC::Debugger::atStatement):
(JSC::Debugger::callEvent):
(JSC::Debugger::returnEvent):
(JSC::Debugger::willExecuteProgram):
(JSC::Debugger::didExecuteProgram):
(JSC::Debugger::didReachBreakpoint):

12:34 PM Changeset in webkit [160114] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix the Apple Windows build after <http://trac.webkit.org/changeset/160113>
(https://bugs.webkit.org/show_bug.cgi?id=125193)

  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::paintMenuList): Substitute paintInfo for i.

12:17 PM Changeset in webkit [160113] by dbates@webkit.org
  • 18 edits in trunk/Source/WebCore

Rename RenderTheme::paintMenuListButton()
https://bugs.webkit.org/show_bug.cgi?id=125193

Reviewed by Simon Fraser.

Towards upstreaming the iOS concept of render theme decorations we should rename
RenderTheme::paintMenuListButton() to RenderTheme::paintMenuListButtonDecorations()
to better describe its purpose.

Also, fix code style issues.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::paintMenuListButtonDecorations):

  • platform/blackberry/RenderThemeBlackBerry.h:
  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::paintMenuListButtonDecorations):

  • platform/efl/RenderThemeEfl.h:
  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::paintMenuListButtonDecorations):

  • platform/gtk/RenderThemeGtk.h:
  • platform/nix/RenderThemeNix.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paintDecorations): Rename argument o, r to renderer and rect, respectively.

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::paintMenuListButtonDecorations):

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintMenuListButtonDecorations): Rename argument o, r to renderer and rect,
respectively; also remove extraneous white space and substitute 1 for 1.0f.

  • rendering/RenderThemeSafari.cpp:

(WebCore::RenderThemeSafari::paintMenuListButtonDecorations): Ditto.

  • rendering/RenderThemeSafari.h:
  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::paintMenuList): Rename argument o, i, r to renderer, paintInfo, and rect,
respectively.
(WebCore::RenderThemeWin::paintMenuListButtonDecorations): Ditto.

  • rendering/RenderThemeWin.h:
  • rendering/RenderThemeWinCE.cpp:

(WebCore::RenderThemeWinCE::paintMenuList): Ditto.
(WebCore::RenderThemeWinCE::paintMenuListButtonDecorations): Ditto.

  • rendering/RenderThemeWinCE.h:
11:56 AM Changeset in webkit [160112] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[Win][64-bit] Link error.
https://bugs.webkit.org/show_bug.cgi?id=125234

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-04
Reviewed by Brent Fulgham.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Changed 64-bit version of symbol.
11:33 AM Changeset in webkit [160111] by aestes@apple.com
  • 6 edits in trunk/Source

[iOS] Build projects with $(ARCHS_STANDARD_32_64_BIT)
https://bugs.webkit.org/show_bug.cgi?id=125236

Reviewed by Sam Weinig.

$(ARCHS_STANDARD_32_64_BIT) is what we want for both device and simulator builds.

Source/JavaScriptCore:

  • Configurations/DebugRelease.xcconfig:

Source/WebCore:

  • Configurations/DebugRelease.xcconfig:

Source/WebKit/mac:

  • Configurations/DebugRelease.xcconfig:
11:31 AM Changeset in webkit [160110] by mihnea@adobe.com
  • 1 edit
    2 adds in trunk/LayoutTests

[CSSRegions] Test dynamic change of position for out-of-flow transformed element
https://bugs.webkit.org/show_bug.cgi?id=124978

Reviewed by Alexandru Chiculita.

Test that a 3D transformed absolutely positioned element inside a named flow
whose position is dynamic changed is displayed in the right position in the associated region.

  • compositing/regions/abs-transformed-dynamic-update-expected.html: Added.
  • compositing/regions/abs-transformed-dynamic-update.html: Added.
11:29 AM Changeset in webkit [160109] by fpizlo@apple.com
  • 27 edits
    19 adds in trunk

Infer constant closure variables
https://bugs.webkit.org/show_bug.cgi?id=124630

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Captured variables that are assigned once (not counting op_enter's Undefined
initialization) and that are contained within a function that has thus far only been
entered once are now constant folded. It's pretty awesome.

This involves a watchpoint on the assignment to variables and a watchpoint on entry
into the function. The former is reused from global variable constant inference and the
latter is reused from one-time closure inference.

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/Instruction.h:

(JSC::Instruction::Instruction):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedInstruction::UnlinkedInstruction):

  • bytecode/VariableWatchpointSet.h:

(JSC::VariableWatchpointSet::invalidate):

  • bytecode/Watchpoint.h:

(JSC::WatchpointSet::invalidate):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::addVar):
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitInitLazyRegister):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitNewFunctionInternal):
(JSC::BytecodeGenerator::createArgumentsIfNecessary):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::addVar):
(JSC::BytecodeGenerator::watchableVariable):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::inferredConstant):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::tryGetActivation):
(JSC::DFG::Graph::tryGetRegisters):

  • dfg/DFGGraph.h:
  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_mov):
(JSC::JIT::emit_op_captured_mov):
(JSC::JIT::emit_op_new_captured_func):
(JSC::JIT::emitSlow_op_captured_mov):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_mov):
(JSC::JIT::emit_op_captured_mov):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/ConstantMode.h: Added.
  • runtime/JSGlobalObject.h:
  • runtime/JSScope.cpp:

(JSC::abstractAccess):

  • runtime/SymbolTable.cpp:

(JSC::SymbolTableEntry::prepareToWatch):

LayoutTests:

Reviewed by Geoffrey Garen.

This adds both correctness and performance tests for constant closure variable
inference.

  • js/regress/infer-closure-const-then-mov-expected.txt: Added.
  • js/regress/infer-closure-const-then-mov-no-inline-expected.txt: Added.
  • js/regress/infer-closure-const-then-mov-no-inline.html: Added.
  • js/regress/infer-closure-const-then-mov.html: Added.
  • js/regress/infer-closure-const-then-put-to-scope-expected.txt: Added.
  • js/regress/infer-closure-const-then-put-to-scope-no-inline-expected.txt: Added.
  • js/regress/infer-closure-const-then-put-to-scope-no-inline.html: Added.
  • js/regress/infer-closure-const-then-put-to-scope.html: Added.
  • js/regress/infer-closure-const-then-reenter-expected.txt: Added.
  • js/regress/infer-closure-const-then-reenter-no-inline-expected.txt: Added.
  • js/regress/infer-closure-const-then-reenter-no-inline.html: Added.
  • js/regress/infer-closure-const-then-reenter.html: Added.
  • js/regress/script-tests/infer-closure-const-then-mov-no-inline.js: Added.
  • js/regress/script-tests/infer-closure-const-then-mov.js: Added.
  • js/regress/script-tests/infer-closure-const-then-put-to-scope-no-inline.js: Added.

(thingy.):
(thingy):

  • js/regress/script-tests/infer-closure-const-then-put-to-scope.js: Added.

(thingy.):
(thingy):

  • js/regress/script-tests/infer-closure-const-then-reenter-no-inline.js: Added.

(.return.foo):
(foo):

  • js/regress/script-tests/infer-closure-const-then-reenter.js: Added.

(.return.foo):
(foo):

11:17 AM Changeset in webkit [160108] by mhahnenberg@apple.com
  • 4 edits in trunk/Tools

run-jsc-stress-tests can only run locally
https://bugs.webkit.org/show_bug.cgi?id=124551

Reviewed by Filip Pizlo.

  • Scripts/jsc-stress-test-helpers/shell-runner.sh: Fixed a couple issues. One was if the script was

killed before the lock directory was removed, future executions wouldn't make any progress. Also
added a couple more signals to handle gracefully at shutdown.

  • Scripts/run-javascriptcore-tests: Pass through the --remote argument to run-jsc-stress-tests.
  • Scripts/run-jsc-stress-tests: Added support for the --remote flag. It accepts a hostname, user, and port.

The script then generates the test bundle, tars it up, and copies it to the remote host via ssh where
it then untars the bundle and executes the shell-based test runner. Also refactored some of the logic
toward the end of the script to make it easier to tell which of the various modes do what.

11:15 AM Changeset in webkit [160107] by Csaba Osztrogonác
  • 14 edits in trunk

[EFL][WK2] Buildfix after r160104
https://bugs.webkit.org/show_bug.cgi?id=125233

Reviewed by Anders Carlsson.

Source/WebKit2:

  • UIProcess/API/efl/ewk_cookie_manager.cpp:

(EwkCookieManager::EwkCookieManager):

  • UIProcess/API/efl/ewk_favicon_database.cpp:

(EwkFaviconDatabase::EwkFaviconDatabase):

  • UIProcess/efl/ContextHistoryClientEfl.cpp:

(WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):

  • UIProcess/efl/ContextMenuClientEfl.cpp:

(ContextMenuClientEfl::ContextMenuClientEfl):

  • UIProcess/efl/DownloadManagerEfl.cpp:

(WebKit::DownloadManagerEfl::DownloadManagerEfl):

  • UIProcess/efl/FindClientEfl.cpp:

(WebKit::FindClientEfl::FindClientEfl):

  • UIProcess/efl/FormClientEfl.cpp:

(WebKit::FormClientEfl::FormClientEfl):

  • UIProcess/efl/PageLoadClientEfl.cpp:

(WebKit::PageLoadClientEfl::PageLoadClientEfl):

  • UIProcess/efl/PagePolicyClientEfl.cpp:

(WebKit::PagePolicyClientEfl::PagePolicyClientEfl):

  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::PageUIClientEfl):

Tools:

  • TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp:

(TestWebKitAPI::setPageLoaderClient):

11:02 AM Changeset in webkit [160106] by aestes@apple.com
  • 12 edits in trunk/Source/WebKit/ios

[iOS] Upstream build fixes in Source/WebKit/ios/
https://bugs.webkit.org/show_bug.cgi?id=125230

Reviewed by Sam Weinig.

  • DefaultDelegates/WebDefaultUIKitDelegate.m:

(-[WebDefaultUIKitDelegate webViewDidReceiveMobileDocType:]):

  • Misc/WebNSStringDrawing.mm:

(needsBidiLayout):
(-[NSString web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:drawUnderline:]):
(-[NSString
web_drawInRect:withFont:ellipsis:alignment:letterSpacing:lineSpacing:includeEmoji:truncationRect:measureOnly:renderedStringOut:drawUnderline:]):

  • Misc/WebUIKitSupport.mm:

(WebKitInitialize):

  • WebCoreSupport/WebChromeClientIOS.h:
  • WebCoreSupport/WebChromeClientIOS.mm:

(WebChromeClientIOS::didReceiveMobileDocType):
(WebChromeClientIOS::focusedElementChanged):

  • WebCoreSupport/WebFrameIOS.mm:

(-[WebFrame clearSelection]):
(-[WebFrame selectionState]):
(-[WebFrame collapseSelection]):
(-[WebFrame extendSelection:]):
(-[WebFrame selectionRects]):
(-[WebFrame setRangedSelectionWithExtentPoint:]):
(-[WebFrame setRangedSelectionExtentPoint:baseIsStart:allowFlipping:]):
(-[WebFrame setSelectionWithBasePoint:extentPoint:baseIsStart:allowFlipping:]):
(-[WebFrame setSelectionWithFirstPoint:secondPoint:]):
(-[WebFrame ensureRangedSelectionContainsInitialStartPoint:initialEndPoint:]):
(-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):
(-[WebFrame expandSelectionToSentence]):
(-[WebFrame setBaseWritingDirection:]):
(-[WebFrame moveSelectionToStart]):
(-[WebFrame moveSelectionToEnd]):
(-[WebFrame moveSelectionToPoint:]):
(-[WebFrame setSelectionGranularity:]):
(-[WebFrame smartExtendRangedSelection:]):
(-[WebFrame previousUnperturbedDictationResultBoundaryFromPosition:]):
(-[WebFrame nextUnperturbedDictationResultBoundaryFromPosition:]):

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::didSetSearchingForNode):
(WebInspectorClient::setupRemoteConnection):
(WebInspectorClient::teardownRemoteConnection):

  • WebCoreSupport/WebVisiblePosition.mm:

(-[WebVisiblePosition enclosingRangeWithDictationPhraseAlternatives:]):
(-[WebVisiblePosition enclosingRangeWithCorrectionIndicator]):
(-[DOMHTMLInputElement startPosition]):
(-[DOMHTMLInputElement endPosition]):
(-[DOMHTMLTextAreaElement startPosition]):
(-[DOMHTMLTextAreaElement endPosition]):

  • WebView/WebPDFViewIOS.mm:

(+[WebPDFView shadowColor]):
(+[WebPDFView backgroundColor]):
(-[WebPDFView _checkPDFTitle]):

  • WebView/WebPDFViewPlaceholder.mm:

(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):

  • WebView/WebUIKitDelegate.h:
11:02 AM Changeset in webkit [160105] by Brent Fulgham
  • 3 edits in trunk/Source/JavaScriptCore

[Win] Unreviewed project file gardening.

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Remove deleted files from project.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Put files in proper directory

folders to match the directory structure of the source code.

10:49 AM Changeset in webkit [160104] by andersca@apple.com
  • 133 edits in trunk

Deprecate all unversioned client structs in favor of having explicit versioned structs
https://bugs.webkit.org/show_bug.cgi?id=125203

Reviewed by Dan Bernstein.

Source/WebKit2:

Deprecate all the "current version" enums and unversioned client structs.

  • Shared/API/c/WKConnectionRef.cpp:

(WKConnectionSetConnectionClient):

  • Shared/API/c/WKConnectionRef.h:
  • UIProcess/API/C/WKContext.cpp:

(WKContextSetClient):
(WKContextSetInjectedBundleClient):
(WKContextSetHistoryClient):
(WKContextSetDownloadClient):
(WKContextSetConnectionClient):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKContextConnectionClient.h:
  • UIProcess/API/C/WKContextDownloadClient.h:
  • UIProcess/API/C/WKContextHistoryClient.h:
  • UIProcess/API/C/WKContextInjectedBundleClient.h:
  • UIProcess/API/C/WKCookieManager.cpp:

(WKCookieManagerSetClient):

  • UIProcess/API/C/WKCookieManager.h:
  • UIProcess/API/C/WKDatabaseManager.cpp:

(WKDatabaseManagerSetClient):

  • UIProcess/API/C/WKDatabaseManager.h:
  • UIProcess/API/C/WKGeolocationManager.cpp:

(WKGeolocationManagerSetProvider):

  • UIProcess/API/C/WKGeolocationManager.h:
  • UIProcess/API/C/WKIconDatabase.cpp:

(WKIconDatabaseSetIconDatabaseClient):

  • UIProcess/API/C/WKIconDatabase.h:
  • UIProcess/API/C/WKOriginDataManager.cpp:

(WKOriginDataManagerSetChangeClient):

  • UIProcess/API/C/WKOriginDataManager.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageContextMenuClient):
(WKPageSetPageFindClient):
(WKPageSetPageFindMatchesClient):
(WKPageSetPageFormClient):
(WKPageSetPageLoaderClient):
(WKPageSetPagePolicyClient):
(WKPageSetPageUIClient):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/C/WKPageContextMenuClient.h:
  • UIProcess/API/C/WKPageFindClient.h:
  • UIProcess/API/C/WKPageFindMatchesClient.h:
  • UIProcess/API/C/WKPageFormClient.h:
  • UIProcess/API/C/WKPageLoaderClient.h:
  • UIProcess/API/C/WKPagePolicyClient.h:
  • UIProcess/API/C/WKPageUIClient.h:
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(setUpPagePolicyClient):

  • UIProcess/API/Cocoa/WKConnection.mm:

(setUpClient):

  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(setUpConnectionClient):
(setUpInectedBundleClient):
(setUpHistoryClient):

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::createInspectorPage):

  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::createNewPage):
(WebKit::WebUIClient::mouseDidMoveOverElement):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetClient):

  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetContextMenuClient):
(WKBundlePageSetEditorClient):
(WKBundlePageSetFormClient):
(WKBundlePageSetPageLoaderClient):
(WKBundlePageSetResourceLoadClient):
(WKBundlePageSetPolicyClient):
(WKBundlePageSetUIClient):
(WKBundlePageSetFullScreenClient):
(WKBundlePageSetDiagnosticLoggingClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

(WKBundlePageOverlayCreate):
(WKBundlePageOverlaySetAccessibilityClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
  • WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.h:
  • WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:

(WKBundlePageBannerCreateBannerWithCALayer):

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

(setUpBundleClient):

Tools:

Update for WebKit2 API changes.

  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate init]):

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • TestWebKitAPI/InjectedBundleController.cpp:

(TestWebKitAPI::InjectedBundleController::initialize):

  • TestWebKitAPI/Tests/WebKit2/AboutBlankLoad.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/CanHandleRequest.cpp:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/CloseThenTerminate.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/CookieManager.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp:

(TestWebKitAPI::DOMWindowExtensionBasic::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp:

(TestWebKitAPI::DOMWindowExtensionNoCache::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls.cpp:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp:

(TestWebKitAPI::DidAssociateFormControlsTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/DidNotHandleKeyDown.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp:

(TestWebKitAPI::setContextDownloadClient):
(TestWebKitAPI::setPagePolicyClient):

  • TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/Find.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/FindMatches.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ForceRepaint.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:

(TestWebKitAPI::setupGeolocationProvider):
(TestWebKitAPI::setupView):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/GetInjectedBundleInitializationUserDataCallback.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle.cpp:

(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp:

(TestWebKitAPI::HitTestResultNodeHandleTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest.cpp:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest_Bundle.cpp:

(TestWebKitAPI::InjectedBundleFrameHitTestTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/InjectedBundleInitializationUserDataCallbackWins.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/LayoutMilestonesWithAllContentInFrame.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp:

(TestWebKitAPI::LoadCanceledNoServerRedirectCallbackTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/LoadPageOnCrash.cpp:

(TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):

  • TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayout.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFails.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutForImages.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ParentFrame.cpp:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/ParentFrame_Bundle.cpp:

(TestWebKitAPI::ParentFrameTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/PasteboardNotifications.mm:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/PasteboardNotifications_Bundle.cpp:

(TestWebKitAPI::PasteboardNotificationsTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ReloadPageAfterCrash.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ResizeWindowAfterCrash.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly.cpp:

(TestWebKitAPI::setInjectedBundleClient):
(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/RestoreSessionStateContainingFormData.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/ScrollPinningBehaviors.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/ShouldGoToBackForwardListItem_Bundle.cpp:

(TestWebKitAPI::ShouldGoToBackForwardListItemTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/TerminateTwice.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/UserMessage.cpp:

(TestWebKitAPI::WebKit2UserMessageRoundTripTest::setInjectedBundleClient):
(TestWebKitAPI::WebKit2UserMessageRoundTripTest::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/WKConnection.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WKConnection_Bundle.cpp:

(TestWebKitAPI::WKConnectionTest::initialize):

  • TestWebKitAPI/Tests/WebKit2/WKPageGetScaleFactorNotZero.cpp:

(TestWebKitAPI::setPageLoaderClient):

  • TestWebKitAPI/Tests/WebKit2/WebArchive.cpp:

(TestWebKitAPI::setInjectedBundleClient):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WillLoad.cpp:

(TestWebKitAPI::WebKit2WillLoadTest::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp:
  • TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent.cpp:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/WillSendSubmitEvent_Bundle.cpp:

(TestWebKitAPI::WillSendSubmitEventTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2/mac/EditorCommands.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/mac/GetBackingScaleFactor.mm:

(TestWebKitAPI::setInjectedBundleClient):

  • TestWebKitAPI/Tests/WebKit2/mac/GetPIDAfterAbortedProcessLaunch.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsInvalidScheme_Bundle.cpp:
  • TestWebKitAPI/Tests/WebKit2ObjC/PreventImageLoadWithAutoResizing_Bundle.cpp:

(TestWebKitAPI::DenyWillSendRequestTest::didCreatePage):

  • TestWebKitAPI/Tests/WebKit2ObjC/WKRemoteObjectRegistry.mm:

(TestWebKitAPI::didCreateConnection):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:

(TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):

  • TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Bundle.mm:
  • TestWebKitAPI/mac/WebKitAgnosticTest.mm:

(TestWebKitAPI::setPageLoaderClient):

  • WebKitTestRunner/GeolocationProviderMock.cpp:

(WTR::GeolocationProviderMock::GeolocationProviderMock):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::initialize):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::InjectedBundlePage):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createOtherPage):
(WTR::TestController::initialize):
(WTR::TestController::createWebViewWithOptions):

10:48 AM Changeset in webkit [160103] by Joseph Pecoraro
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed Windows build fix attempt 2 after r160099.

10:41 AM Changeset in webkit [160102] by Joseph Pecoraro
  • 3 edits in trunk/Source/WebCore

Unreviewed Windows build fix attempt after r160099.

  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.vcxproj/copyForwardingHeaders.cmd:
10:35 AM Changeset in webkit [160101] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix build warnings in DownloadAuthenticationClient.cpp
https://bugs.webkit.org/show_bug.cgi?id=124920

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-04
Reviewed by Alexey Proskuryakov.

Fix unused parameter warnings in DownloadAuthenticationClient.cpp

  • Shared/Downloads/DownloadAuthenticationClient.cpp:

(WebKit::DownloadAuthenticationClient::receivedCredential):
(WebKit::DownloadAuthenticationClient::receivedRequestToContinueWithoutCredential):
(WebKit::DownloadAuthenticationClient::receivedCancellation):

10:30 AM Changeset in webkit [160100] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

REGRESSION (r160094): Fix lots of crashes for sh4 architecture.
https://bugs.webkit.org/show_bug.cgi?id=125227

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-12-04
Reviewed by Michael Saboff.

  • llint/LowLevelInterpreter32_64.asm: Do not use t4 and t5 as they match a0 and a1.
  • offlineasm/registers.rb: Add t7, t8 and t9 in register list for sh4 port.
  • offlineasm/sh4.rb: Rearrange RegisterID list and add the missing ones.
10:20 AM Changeset in webkit [160099] by Joseph Pecoraro
  • 66 edits
    7 copies
    1 move
    11 adds
    1 delete in trunk/Source

Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=124613

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Move the ENABLE(REMOTE_INSPECTOR) remote debugger connection management
into JavaScriptCore (originally from WebKit/mac). Include enhancements:

  • allow for different types of remote debuggable targets, eventually at least a JSContext, WebView, WKView.
  • allow debuggables to be registered and debugged on any thread. Unlike WebViews, JSContexts may be run entirely off of the main thread.
  • move the remote connection (XPC connection) itself off of the main thread, it doesn't need to be on the main thread.

Make JSContext @class and JavaScriptCore::JSContextRef
"JavaScript" Remote Debuggables.

  • inspector/remote/RemoteInspectorDebuggable.h: Added.
  • inspector/remote/RemoteInspectorDebuggable.cpp: Added.

(Inspector::RemoteInspectorDebuggable::RemoteInspectorDebuggable):
(Inspector::RemoteInspectorDebuggable::~RemoteInspectorDebuggable):
(Inspector::RemoteInspectorDebuggable::init):
(Inspector::RemoteInspectorDebuggable::update):
(Inspector::RemoteInspectorDebuggable::setRemoteDebuggingAllowed):
(Inspector::RemoteInspectorDebuggable::info):
RemoteInspectorDebuggable defines a debuggable target. As long as
something creates a debuggable and is set to allow remote inspection
it will be listed in remote debuggers. For the different types of
debuggables (JavaScript and Web) there is different basic information
that may be listed.

  • inspector/InspectorFrontendChannel.h: Added.

(Inspector::InspectorFrontendChannel::~InspectorFrontendChannel):
The only thing a debuggable needs for remote debugging is an
InspectorFrontendChannel a way to send messages to a remote frontend.
This class provides that method, and is vended to the
RemoteInspectorDebuggable when a remote connection is setup.

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

Singleton, created at least when the first Debuggable is created.
This class manages the list of debuggables, any connection to a
remote debugger proxy (XPC service "com.apple.webinspector").

(Inspector::dispatchAsyncOnQueueSafeForAnyDebuggable):
(Inspector::RemoteInspector::shared):
(Inspector::RemoteInspector::RemoteInspector):
(Inspector::RemoteInspector::nextAvailableIdentifier):
(Inspector::RemoteInspector::registerDebuggable):
(Inspector::RemoteInspector::unregisterDebuggable):
(Inspector::RemoteInspector::updateDebuggable):
Debuggable management. When debuggables are added, removed, or updated
we stash a copy of the debuggable information and push an update to
debuggers. Stashing a copy of the information in the RemoteInspector
is a thread safe way to avoid walking over all debuggables to gather
the information when it is needed.

(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::stop):
Runtime API to enable / disable the feature.

(Inspector::RemoteInspector::listingForDebuggable):
(Inspector::RemoteInspector::pushListingNow):
(Inspector::RemoteInspector::pushListingSoon):
Pushing a listing to remote debuggers.

(Inspector::RemoteInspector::sendMessageToRemoteFrontend):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::xpcConnectionFailed):
(Inspector::RemoteInspector::xpcConnectionUnhandledMessage):
XPC setup, send, and receive handling.

(Inspector::RemoteInspector::updateHasActiveDebugSession):
Applications being debugged may want to know when a debug
session is active. This provides that notification.

(Inspector::RemoteInspector::receivedSetupMessage):
(Inspector::RemoteInspector::receivedDataMessage):
(Inspector::RemoteInspector::receivedDidCloseMessage):
(Inspector::RemoteInspector::receivedGetListingMessage):
(Inspector::RemoteInspector::receivedIndicateMessage):
(Inspector::RemoteInspector::receivedConnectionDiedMessage):
Dispatching incoming remote debugging protocol messages.
These are wrapping above the inspector protocol messages.

  • inspector/remote/RemoteInspectorConstants.h: Added.

Protocol messages and dictionary keys inside the messages.

(Inspector::RemoteInspectorDebuggableInfo::RemoteInspectorDebuggableInfo):

  • inspector/remote/RemoteInspectorDebuggableConnection.h: Added.
  • inspector/remote/RemoteInspectorDebuggableConnection.mm: Added.

This is a connection between the RemoteInspector singleton and a RemoteInspectorDebuggable.

(Inspector::RemoteInspectorDebuggableConnection::RemoteInspectorDebuggableConnection):
(Inspector::RemoteInspectorDebuggableConnection::~RemoteInspectorDebuggableConnection):
Allow for dispatching messages on JavaScript debuggables on a dispatch_queue
instead of the main queue.

(Inspector::RemoteInspectorDebuggableConnection::destination):
(Inspector::RemoteInspectorDebuggableConnection::connectionIdentifier):
Needed in the remote debugging protocol to identify the remote debugger.

(Inspector::RemoteInspectorDebuggableConnection::dispatchSyncOnDebuggable):
(Inspector::RemoteInspectorDebuggableConnection::dispatchAsyncOnDebuggable):
(Inspector::RemoteInspectorDebuggableConnection::setup):
(Inspector::RemoteInspectorDebuggableConnection::closeFromDebuggable):
(Inspector::RemoteInspectorDebuggableConnection::close):
(Inspector::RemoteInspectorDebuggableConnection::sendMessageToBackend):
(Inspector::RemoteInspectorDebuggableConnection::sendMessageToFrontend):
The connection is a thin channel between the two sides that can be closed
from either side, so there is some logic around multi-threaded access.

  • inspector/remote/RemoteInspectorXPCConnection.h: Added.

(Inspector::RemoteInspectorXPCConnection::Client::~Client):

  • inspector/remote/RemoteInspectorXPCConnection.mm: Added.

(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
(Inspector::RemoteInspectorXPCConnection::~RemoteInspectorXPCConnection):
(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::deserializeMessage):
(Inspector::RemoteInspectorXPCConnection::handleEvent):
(Inspector::RemoteInspectorXPCConnection::sendMessage):
This is a connection between the RemoteInspector singleton and an XPC service
named "com.apple.webinspector". This handles serialization of the dictionary
messages to and from the service. The receiving is done on a non-main queue.

  • API/JSContext.h:
  • API/JSContext.mm:

(-[JSContext name]):
(-[JSContext setName:]):
ObjC API to enable/disable JSContext remote inspection and give a name.

  • API/JSContextRef.h:
  • API/JSContextRef.cpp:

(JSGlobalContextGetName):
(JSGlobalContextSetName):
C API to give a JSContext a name.

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::setName):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::name):
Shared handling of the APIs above.

  • runtime/JSGlobalObjectDebuggable.cpp: Added.

(JSC::JSGlobalObjectDebuggable::JSGlobalObjectDebuggable):
(JSC::JSGlobalObjectDebuggable::name):
(JSC::JSGlobalObjectDebuggable::connect):
(JSC::JSGlobalObjectDebuggable::disconnect):
(JSC::JSGlobalObjectDebuggable::dispatchMessageFromRemoteFrontend):

  • runtime/JSGlobalObjectDebuggable.h: Added.

Stub for the actual remote debugging implementation. We will push
down the appropriate WebCore/inspector peices suitable for debugging
just a JavaScript context.

Update build files.

Source/WebCore:

Make a WebCore::Page a "Web" Remote Debuggable.

  • bindings/js/JSDOMGlobalObject.cpp:

Disable JavaScript context inspection on JSGlobalObjects inside WebCore::Page's.

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::remoteInspectionAllowed):
(WebCore::Page::setRemoteInspectionAllowed):
(WebCore::Page::remoteInspectorInformationDidChange):

  • page/Page.h:
  • page/PageDebuggable.h:
  • page/PageDebuggable.cpp: Added.

(WebCore::PageDebuggable::PageDebuggable):
(WebCore::PageDebuggable::name):
(WebCore::PageDebuggable::url):
(WebCore::PageDebuggable::hasLocalDebugger):
(WebCore::PageDebuggable::connect):
(WebCore::PageDebuggable::disconnect):
(WebCore::PageDebuggable::dispatchMessageFromRemoteFrontend):
(WebCore::PageDebuggable::setIndicating):
Make a page a "Web" debuggable.

  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Misc.

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::indicate):
(WebCore::InspectorClient::hideIndicate):
Forward indicate methods to WebKit clients.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::didChangeTitle):
(WebCore::FrameLoader::dispatchDidCommitLoad):
Push updates when remote debuggable information like the Page's
URL or title change.

  • ForwardingHeaders/inspector/InspectorFrontendChannel.h:
  • inspector/InspectorForwarding.h:

Re-export Inspector::InspectorFrontendChannel as WebCore::InspectorFrontendChannel
to avoid needlessly updating code all over the place.

  • inspector/CodeGeneratorInspectorStrings.py:
  • inspector/InspectorWorkerAgent.cpp:
  • inspector/WorkerInspectorController.cpp:
  • testing/Internals.cpp:

Update include names.

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::populate):
Make the "Inspect Element" context menu work correctly when there is a
remote inspector instead of a local inspector.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/blackberry:

  • WebCoreSupport/InspectorClientBlackBerry.h:

Source/WebKit/cf:

  • WebCoreSupport/WebInspectorClientCF.cpp:

(WebInspectorClient::sendMessageToFrontend):

Source/WebKit/efl:

  • WebCoreSupport/InspectorClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/InspectorClientGtk.h:

Source/WebKit/ios:

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::inspectorDestroyed):

Source/WebKit/mac:

Remove the old ENABLE(REMOTE_INSPECTOR) connection management implementation.

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorClient::indicate):
(WebInspectorClient::hideIndicate):
Hook up WebView indication through this new path.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidReceiveTitle):

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::inspectorDestroyed):

  • WebInspector/remote/WebInspectorClientRegistry.h: Removed.
  • WebInspector/remote/WebInspectorClientRegistry.mm: Removed.
  • WebInspector/remote/WebInspectorRelayDefinitions.h: Removed.
  • WebInspector/remote/WebInspectorRemoteChannel.h: Removed.
  • WebInspector/remote/WebInspectorRemoteChannel.mm: Removed.
  • WebInspector/remote/WebInspectorServer.h: Removed.
  • WebInspector/remote/WebInspectorServer.mm: Removed.
  • WebInspector/remote/WebInspectorServerWebViewConnection.h: Removed.
  • WebInspector/remote/WebInspectorServerWebViewConnection.mm: Removed.
  • WebInspector/remote/WebInspectorServerWebViewConnectionController.h: Removed.
  • WebInspector/remote/WebInspectorServerWebViewConnectionController.mm: Removed.
  • WebInspector/remote/WebInspectorXPCWrapper.h: Removed.
  • WebInspector/remote/WebInspectorXPCWrapper.m: Removed.
  • WebKit.exp:
  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(+[WebView _enableRemoteInspector]):
(+[WebView _disableRemoteInspector]):
(+[WebView _disableAutoStartRemoteInspector]):
(+[WebView _isRemoteInspectorEnabled]):
(+[WebView _hasRemoteInspectorSession]):
(-[WebView allowsRemoteInspection]):
(-[WebView setAllowsRemoteInspection:]):
(-[WebView setIndicatingForRemoteInspector:]):
(-[WebView setHostApplicationBundleId:name:]):
(-[WebView _didCommitLoadForFrame:]):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(-[WebViewPrivate init]):
(-[WebViewPrivate dealloc]):

  • WebView/WebViewInternal.h:
  • WebView/WebViewPrivate.h:

Remove old REMOTE_INSPECTOR.

Source/WebKit/win:

  • WebCoreSupport/WebInspectorClient.h:

Source/WebKit/wince:

  • WebCoreSupport/InspectorClientWinCE.h:

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/com.apple.WebProcess.sb.in:

Allow the WebProcess to access the "com.apple.webinspector" named
XPC service to expose its WebCore::Page's to remote debuggers.

Source/WTF:

  • wtf/ios/WebCoreThread.cpp:
  • wtf/ios/WebCoreThread.h:

Expose WebThreadRun/WebThreadRunSync iOS methods defined in WebCore through
WTF so that JavaScriptCore can use it. Another such method already existed.

10:20 AM Changeset in webkit [160098] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebCore

Web Inspector: Add missing folders and files to Xcode project
https://bugs.webkit.org/show_bug.cgi?id=124802

Reviewed by Timothy Hatcher.

  • WebCore.xcodeproj/project.pbxproj:
10:00 AM Changeset in webkit [160097] by dfarler@apple.com
  • 2 edits in trunk/Source/WebKit2

Use All-iOS target when building WK2 on iOS
<rdar://problem/15574494>

Reviewed by David Kilzer.

  • Makefile:

Add -target All-iOS to OTHER_OPTIONS if iphoneos or iphonesimulator
is in the SDKROOT make option.

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

[texmap] Borders on rotating images are hidden/wrongly rendered with edge distance antialiasing
https://bugs.webkit.org/show_bug.cgi?id=124653

Patch by José Dapena Paz <jdapena@igalia.com> on 2013-12-04
Reviewed by Noam Rosenthal.

Texture mapper edge distance antialiasing texture sampling was causing
borders to be shaded (and made them almost disappear in some cases).
This was because calculation of sampling happened on vertex shader, so
the border of the texture would go to the border of the inflation area.

What algorithm should do is sampling the border pixel for all the
inflation area (it is the closest pixel to all the samples in
inflation area), and then use the standard sampling for the other
parts of the texture.

No new test because this is already covered by test
transforms/3d/point-mapping/3d-point-mapping.html

  • platform/graphics/texmap/TextureMapperShaderProgram.cpp: fix edge

distance antialiasing texture sampling.

9:40 AM Changeset in webkit [160095] by mario.prada@samsung.com
  • 1 edit
    1 move
    1 delete in trunk/LayoutTests

Unreviewed GTK gardening. Updated expectations for GTK and share them with EFL.

  • accessibility/multiselect-list-reports-active-option-expected.txt: Renamed from LayoutTests/platform/efl/multiselect-list-reports-active-option-expected.txt.
  • platform/gtk/accessibility/multiselect-list-reports-active-option-expected.txt: Removed.
8:40 AM Changeset in webkit [160094] by msaboff@apple.com
  • 26 edits
    2 adds in trunk/Source/JavaScriptCore

Move the setting up of callee's callFrame from pushFrame to callToJavaScript thunk
https://bugs.webkit.org/show_bug.cgi?id=123999

Reviewed by Filip Pizlo.

Changed LLInt and/or JIT enabled ports to allocate the stack frame in the
callToJavaScript stub. Added an additional stub, callToNativeFunction that
allocates a stack frame in a similar way for calling native entry points
that take a single ExecState* argument. These stubs are implemented
using common macros in LowLevelInterpreter{32_64,64}.asm. There are also
Windows X86 and X86-64 versions in the corresponding JitStubsXX.h.
The stubs allocate and create a sentinel frame, then create the callee's
frame, populating the header and arguments from the passed in ProtoCallFrame*.
It is assumed that the caller of either stub does a check for enough stack space
via JSStack::entryCheck().

For ports using the C-Loop interpreter, the prior method for allocating stack
frame and invoking functions is used, namely with JSStack::pushFrame() and
::popFrame().

Made spelling changes "sentinal" -> "sentinel".

(JSC::CachedCall::CachedCall):
(JSC::CachedCall::setThis):
(JSC::CachedCall::setArgument):

  • interpreter/CallFrameClosure.h:

(JSC::CallFrameClosure::resetCallFrame):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall):

  • interpreter/Interpreter.h:
  • interpreter/JSStack.h:
  • interpreter/JSStackInlines.h:

(JSC::JSStack::entryCheck):
(JSC::JSStack::pushFrame):
(JSC::JSStack::popFrame):

  • interpreter/ProtoCallFrame.cpp: Added.

(JSC::ProtoCallFrame::init):

  • interpreter/ProtoCallFrame.h: Added.

(JSC::ProtoCallFrame::codeBlock):
(JSC::ProtoCallFrame::setCodeBlock):
(JSC::ProtoCallFrame::setScope):
(JSC::ProtoCallFrame::setCallee):
(JSC::ProtoCallFrame::argumentCountIncludingThis):
(JSC::ProtoCallFrame::argumentCount):
(JSC::ProtoCallFrame::setArgumentCountIncludingThis):
(JSC::ProtoCallFrame::setPaddedArgsCount):
(JSC::ProtoCallFrame::clearCurrentVPC):
(JSC::ProtoCallFrame::setThisValue):
(JSC::ProtoCallFrame::setArgument):

  • jit/JITCode.cpp:

(JSC::JITCode::execute):

  • jit/JITCode.h:
  • jit/JITOperations.cpp:
  • jit/JITStubs.h:
  • jit/JITStubsMSVC64.asm:
  • jit/JITStubsX86.h:
  • llint/LLIntOffsetsExtractor.cpp:
  • llint/LLIntThunks.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/ArgList.h:

(JSC::ArgList::data):

  • runtime/JSArray.cpp:

(JSC::AVLTreeAbstractorForArrayCompare::compare_key_key):

  • runtime/StringPrototype.cpp:

(JSC::replaceUsingRegExpSearch):

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

Style checker for .messages.in files (WTF:: prefix)
https://bugs.webkit.org/show_bug.cgi?id=125142

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-04
Reviewed by Anders Carlsson.

A new style checker for .messages.in files, that checks for the use of WTF::
prefix in these files. (Also checks for tabs as these files were previously
handled as text files.)

  • Scripts/webkitpy/style/checker.py:

(CheckerDispatcher._create_checker):

New checker is returned for .messages.in files.

  • Scripts/webkitpy/style/checkers/messagesin.py: Added. The new style checker class.

(MessagesInChecker):
(MessagesInChecker.init):
(MessagesInChecker.check):
(MessagesInChecker.check_WTF_prefix):

  • Scripts/webkitpy/style/checkers/messagesin_unittest.py: Added. Unit test for the new style checker class.

(MessagesInCheckerStyleTestCase):
(test_checker):
(test_checker.error_handler_for_test):
(MessagesInCheckerTestCase):
(MessagesInCheckerTestCase.test_init):
(MessagesInCheckerTestCase.test_init.error_handler_for_test):

6:43 AM Changeset in webkit [160092] by commit-queue@webkit.org
  • 14 edits in trunk/Source/JavaScriptCore

Remove stdio.h from JSC files.
https://bugs.webkit.org/show_bug.cgi?id=125220

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Michael Saboff.

  • interpreter/VMInspector.cpp:
  • jit/JITArithmetic.cpp:
  • jit/JITArithmetic32_64.cpp:
  • jit/JITCall.cpp:
  • jit/JITCall32_64.cpp:
  • jit/JITPropertyAccess.cpp:
  • jit/JITPropertyAccess32_64.cpp:
  • runtime/Completion.cpp:
  • runtime/IndexingType.cpp:
  • runtime/Lookup.h:
  • runtime/Operations.cpp:
  • runtime/Options.cpp:
  • runtime/RegExp.cpp:
6:42 AM Changeset in webkit [160091] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Avoid to add zero offset in BaseIndex.
https://bugs.webkit.org/show_bug.cgi?id=125215

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Michael Saboff.

When using cloop do not generate offsets additions for BaseIndex if the offset is zero.

  • offlineasm/cloop.rb:
5:49 AM Changeset in webkit [160090] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Style checker requires alphabetical ordering in cmake lists even it contains variable.
https://bugs.webkit.org/show_bug.cgi?id=124918

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-04
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/style/checkers/cmake_unittest.py:

(CMakeCheckerTest.test_check):

  • Scripts/webkitpy/style/checkers/cmake.py:

(CMakeChecker._check_list_order):
This will ignore lines with variable substitution.

4:30 AM Changeset in webkit [160089] by commit-queue@webkit.org
  • 4 edits in trunk

Allow --cloop option to work correctly in case of EFL.
https://bugs.webkit.org/show_bug.cgi?id=125217

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Zoltan Herczeg.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:
4:20 AM Changeset in webkit [160088] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.2.3

Tagging the WebKitGTK+ 2.2.3 release

3:54 AM Changeset in webkit [160087] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.2

Unreviewed. Update NEWS and Versions.m4 for 2.2.3 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Add release notes.
3:20 AM Changeset in webkit [160086] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style is wrong about expected format parameter pack rvalue reference arguments
https://bugs.webkit.org/show_bug.cgi?id=124731

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Zoltan Herczeg.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_spacing):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(Cpp11StyleTest.test_rvaule_reference_in_parameter_pack):

3:19 AM Changeset in webkit [160085] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove codecs and os dependencies from filereader.py in webkitpy/style.
https://bugs.webkit.org/show_bug.cgi?id=124719

Although TextFileReader requires a FileSystem it circumvents it in two places!
We should use the FileSystem only and remove codecs and os imports.

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Zoltan Herczeg.

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

(FileSystem.open_stdin): Moved from TextFileReader

  • Scripts/webkitpy/style/filereader.py:

(TextFileReader._read_lines): use FileSystem instead of calling codecs.open directly
(TextFileReader._process_directory): use FileSystem instead of calling os.walk directly

3:11 AM Changeset in webkit [160084] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style should check member initialization indentation.
https://bugs.webkit.org/show_bug.cgi?id=124820

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Zoltan Herczeg.

check-webkit-style should check member initialization indentation
belongs to webkit coding style:
http://www.webkit.org/coding/coding-style.html#punctuation-member-init

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_member_initialization_list): Add new method to check member
initialization list.
(check_style): Add the call of the new method.
(check_language): Move self initialization checking into the new method.
(CppChecker): Add a new category for initialization list.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_runtime_selfinit):
(CppStyleTest.test_deprecated_cast):
(WebKitStyleTest.test_member_initialization_list): Add new testcases for
the new feature.

3:08 AM Changeset in webkit [160083] by commit-queue@webkit.org
  • 8 edits in trunk/Tools

style-bot should reject Committer additions to committers.py
https://bugs.webkit.org/show_bug.cgi?id=107574

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-12-04
Reviewed by Zoltan Herczeg.

The style check when executed in non-interactive mode (probably by a
bot) will raise an additional error if the contributors.json file is
modified. Non-interactive mode information is propagated to the
Dispatcher, which creates a special JSON checker for the
contributors.json file.

  • Scripts/webkitpy/style/checker.py:

(check_webkit_style_configuration):
(CheckerDispatcher._create_checker):
(CheckerDispatcher.dispatch):
(StyleProcessorConfiguration.init):
(StyleProcessor.process):

  • Scripts/webkitpy/style/checker_unittest.py:

(CheckerDispatcherSkipTest._assert_should_skip_without_warning):
(CheckerDispatcherDispatchTest.dispatch):
(StyleProcessorConfigurationTest._style_checker_configuration):
(StyleProcessor_EndToEndTest.test_init):
(StyleProcessor_EndToEndTest.test_process):
(StyleProcessor_CodeCoverageTest.MockDispatcher.dispatch):
(StyleProcessor_CodeCoverageTest.setUp):

  • Scripts/webkitpy/style/checkers/jsonchecker.py:

(JSONChecker.line_number_from_json_exception):
(JSONContributorsChecker):
(JSONContributorsChecker.check):

  • Scripts/webkitpy/style/error_handlers_unittest.py:

(DefaultStyleErrorHandlerTest._style_checker_configuration):

  • Scripts/webkitpy/style/optparser.py:

(CommandOptionValues.init):
(ArgumentParser._create_option_parser):
(ArgumentParser.parse):

  • Scripts/webkitpy/tool/commands/upload_unittest.py:

(test_post):
(test_upload):

  • Scripts/webkitpy/tool/steps/checkstyle.py:

(CheckStyle.run):

1:57 AM Changeset in webkit [160082] by commit-queue@webkit.org
  • 8 edits in trunk/Source/JavaScriptCore

Fix !ENABLE(JAVASCRIPT_DEBUGGER) build.
https://bugs.webkit.org/show_bug.cgi?id=125083

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-12-04
Reviewed by Mark Lam.

  • debugger/Debugger.cpp:
  • debugger/Debugger.h:

(JSC::Debugger::Debugger):
(JSC::Debugger::needsOpDebugCallbacks):
(JSC::Debugger::needsExceptionCallbacks):
(JSC::Debugger::detach):
(JSC::Debugger::sourceParsed):
(JSC::Debugger::exception):
(JSC::Debugger::atStatement):
(JSC::Debugger::callEvent):
(JSC::Debugger::returnEvent):
(JSC::Debugger::willExecuteProgram):
(JSC::Debugger::didExecuteProgram):
(JSC::Debugger::didReachBreakpoint):

  • debugger/DebuggerPrimitives.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_debug):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_debug):

  • llint/LLIntOfflineAsmConfig.h:
  • llint/LowLevelInterpreter.asm:
1:56 AM Changeset in webkit [160081] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r159314 - [Cairo] Avoid extra copy when drawing images
https://bugs.webkit.org/show_bug.cgi?id=124209

Patch by Aloisio Almeida Jr <aloisio.almeida@openbossa.org> on 2013-11-14
Reviewed by Martin Robinson.

To solve the bug #58309 a cairo subsurface is being used to limit the
source image boundaries.
In many cases, when a cairo subsurface is used for drawing an image,
it occurs an image copy, causing performance penalty. In the case of
the function PlatformContextCairo::drawSurfaceToContext, the image
copy always happens.
So, we should use the subsurface only when it's really necessary.
In cases where we're drawing the whole image, the subsurface is
unnecessary.

The proposed patch avoid the use of subsurfaces when sampling the whole
image.

No new tests. It's an enhancement. Already covered by existing tests.

  • platform/graphics/cairo/PlatformContextCairo.cpp:

(WebCore::PlatformContextCairo::drawSurfaceToContext):

1:52 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:47 AM Changeset in webkit [160080] by Carlos Garcia Campos
  • 12 edits in releases/WebKitGTK/webkit-2.2/Source

Merge r154819 - [cairo] canvas drawing on itself doesn't work with accelerated canvas
https://bugs.webkit.org/show_bug.cgi?id=118808

Reviewed by Martin Robinson.

Source/WebCore:

When copying an accelerated image, we try to get its dimensions with
cairo_image_surface_get_width/cairo_image_surface_get_height. As
surface is not an image, this returns width and height of 0.

Many other places use cairo_image_surface_get although the surface may
be a gl surface.

This patch fixes those issues by implementing a cairoSurfaceSize
helper that returns the surface size whatever type it is.

It use cairo_surface_create_similar instead of
cairo_image_surface_create in copyCairoImageSurface. It also calls
cairo_paint in encodeImage when a drawing over a black background is
needed.

It copies the surface to an image surface if needed in extractImage.

No new tests. Covered by existing tests.

  • platform/graphics/cairo/BitmapImageCairo.cpp:

(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::draw):
(WebCore::BitmapImage::checkForSolidColor):

  • platform/graphics/cairo/CairoUtilities.cpp:

(WebCore::copyCairoImageSurface):
(WebCore::cairoSurfaceSize):

  • platform/graphics/cairo/CairoUtilities.h:
  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::extractImage):

  • platform/graphics/gtk/GdkCairoUtilities.cpp:

(cairoSurfaceToGdkPixbuf):

  • platform/graphics/gtk/GdkCairoUtilities.h:
  • platform/graphics/gtk/ImageBufferGtk.cpp:

(WebCore::encodeImage):

  • platform/graphics/gtk/ImageGtk.cpp:

(WebCore::BitmapImage::getGdkPixbuf):

  • platform/gtk/DragIcon.cpp:

(WebCore::DragIcon::setImage):

Source/WebKit/gtk:

Change cairoImageSurfaceToGdkPixbuf to cairoSurfaceToGdkPixbuf.

  • webkit/webkitfavicondatabase.cpp:

(getIconPixbufSynchronously):

1:30 AM Changeset in webkit [160079] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/JavaScriptCore

Merge r154892 - Cleaning errorDescriptionForValue after r154839
https://bugs.webkit.org/show_bug.cgi?id=120531

Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-30
Reviewed by Darin Adler.

Changed the assert to ASSERT_NOT_REACHED, now that r154839 has landed. errorDescriptionForValue
can assert again that the parameterized JSValue is !isEmpty().

  • runtime/ExceptionHelpers.cpp:

(JSC::errorDescriptionForValue):

1:27 AM Changeset in webkit [160078] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/JavaScriptCore

Merge r154839 - REGRESSION(r153222, 32-bit): NULL JSValue() seen when running peacekeeper benchmark.
https://bugs.webkit.org/show_bug.cgi?id=120080

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-08-29
Reviewed by Michael Saboff.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_get_argument_by_val): Revert changes introduced by r153222 in this function.

1:26 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:21 AM Changeset in webkit [160077] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r159939 - [GTK] Fails to build with freetype 2.5.1
https://bugs.webkit.org/show_bug.cgi?id=125074

Patch by Andres Gomez <Andres Gomez> on 2013-12-02
Reviewed by Carlos Garcia Campos.

FreeType specifies a canonical way of including their own
headers. Now, we are following this recommendation so the
compilation won't be broken again due to an upgrade in FeeType's
including paths.

  • platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
1:18 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:14 AM Changeset in webkit [160076] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Typo fix after r160074 to fix debug builds.

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-04
Reviewed by Csaba Osztrogonác.

  • platform/text/BidiResolver.h:

(WebCore::MidpointState::stopIgnoringSpaces):

12:56 AM Changeset in webkit [160075] by Csaba Osztrogonác
  • 72 edits in trunk

[EFL][WK2] Fix build after API::Client changes
https://bugs.webkit.org/show_bug.cgi?id=125206

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-04
Reviewed by Csaba Osztrogonác.

Source/WebKit2:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Shared/API/c/WKDeclarationSpecifiers.h:
  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp:

(WKViewSetViewClient):

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/API/C/WKBatteryManager.cpp:

(WKBatteryManagerSetProvider):

  • UIProcess/API/C/WKBatteryManager.h:
  • UIProcess/API/C/WKNetworkInfoManager.cpp:

(WKNetworkInfoManagerSetProvider):

  • UIProcess/API/C/WKNetworkInfoManager.h:
  • UIProcess/API/C/WKTextChecker.cpp:

(WKTextCheckerSetClient):

  • UIProcess/API/C/WKTextChecker.h:
  • UIProcess/API/C/WKVibration.cpp:

(WKVibrationSetProvider):

  • UIProcess/API/C/WKVibration.h:
  • UIProcess/API/C/efl/WKPageEfl.cpp:

(WKPageSetUIPopupMenuClient):

  • UIProcess/API/C/efl/WKPageEfl.h:
  • UIProcess/API/C/gtk/WKFullScreenClientGtk.cpp:

(WKViewSetFullScreenClientGtk):

  • UIProcess/API/C/gtk/WKFullScreenClientGtk.h:
  • UIProcess/API/C/gtk/WKInspectorClientGtk.cpp:

(WKInspectorSetInspectorClientGtk):

  • UIProcess/API/C/gtk/WKInspectorClientGtk.h:
  • UIProcess/API/C/soup/WKSoupRequestManager.cpp:

(WKSoupRequestManagerSetClient):

  • UIProcess/API/C/soup/WKSoupRequestManager.h:
  • UIProcess/API/gtk/WebKitFullscreenClient.cpp:

(attachFullScreenClientToView):

  • UIProcess/API/gtk/WebKitRequestManagerClient.cpp:

(attachRequestManagerClientToContext):

  • UIProcess/API/gtk/WebKitTextChecker.cpp:

(WebKitTextChecker::WebKitTextChecker):

  • UIProcess/API/gtk/WebKitWebInspector.cpp:

(webkitWebInspectorCreate):

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseInitializeFullScreenClient):

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::initializeClient):

  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/CoordinatedGraphics/WebViewClient.cpp:

(WebKit::WebViewClient::viewNeedsDisplay):
(WebKit::WebViewClient::didChangeContentsSize):
(WebKit::WebViewClient::webProcessCrashed):
(WebKit::WebViewClient::webProcessDidRelaunch):
(WebKit::WebViewClient::didChangeContentsPosition):
(WebKit::WebViewClient::didRenderFrame):
(WebKit::WebViewClient::didCompletePageTransition):
(WebKit::WebViewClient::didChangeViewportAttributes):
(WebKit::WebViewClient::didChangeTooltip):
(WebKit::WebViewClient::didFindZoomableArea):
(WebKit::WebViewClient::doneWithTouchEvent):

  • UIProcess/CoordinatedGraphics/WebViewClient.h:
  • UIProcess/WebBatteryManagerProxy.cpp:

(WebKit::WebBatteryManagerProxy::initializeProvider):

  • UIProcess/WebBatteryManagerProxy.h:
  • UIProcess/WebBatteryProvider.cpp:

(WebKit::WebBatteryProvider::startUpdating):
(WebKit::WebBatteryProvider::stopUpdating):

  • UIProcess/WebBatteryProvider.h:
  • UIProcess/WebInspectorProxy.h:
  • UIProcess/WebNetworkInfoManagerProxy.cpp:

(WebKit::WebNetworkInfoManagerProxy::initializeProvider):

  • UIProcess/WebNetworkInfoManagerProxy.h:
  • UIProcess/WebNetworkInfoProvider.cpp:

(WebKit::WebNetworkInfoProvider::startUpdating):
(WebKit::WebNetworkInfoProvider::stopUpdating):
(WebKit::WebNetworkInfoProvider::bandwidth):
(WebKit::WebNetworkInfoProvider::isMetered):

  • UIProcess/WebNetworkInfoProvider.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebTextChecker.cpp:

(WebKit::WebTextChecker::setClient):

  • UIProcess/WebTextChecker.h:
  • UIProcess/WebTextCheckerClient.cpp:

(WebKit::WebTextCheckerClient::continuousSpellCheckingAllowed):
(WebKit::WebTextCheckerClient::continuousSpellCheckingEnabled):
(WebKit::WebTextCheckerClient::setContinuousSpellCheckingEnabled):
(WebKit::WebTextCheckerClient::grammarCheckingEnabled):
(WebKit::WebTextCheckerClient::setGrammarCheckingEnabled):
(WebKit::WebTextCheckerClient::uniqueSpellDocumentTag):
(WebKit::WebTextCheckerClient::closeSpellDocumentWithTag):
(WebKit::WebTextCheckerClient::checkSpellingOfString):
(WebKit::WebTextCheckerClient::checkGrammarOfString):
(WebKit::WebTextCheckerClient::spellingUIIsShowing):
(WebKit::WebTextCheckerClient::toggleSpellingUIIsShowing):
(WebKit::WebTextCheckerClient::updateSpellingUIWithMisspelledWord):
(WebKit::WebTextCheckerClient::updateSpellingUIWithGrammarString):
(WebKit::WebTextCheckerClient::guessesForWord):
(WebKit::WebTextCheckerClient::learnWord):
(WebKit::WebTextCheckerClient::ignoreWord):

  • UIProcess/WebTextCheckerClient.h:
  • UIProcess/WebVibrationProvider.cpp:

(WebKit::WebVibrationProvider::vibrate):
(WebKit::WebVibrationProvider::cancelVibration):

  • UIProcess/WebVibrationProvider.h:
  • UIProcess/WebVibrationProxy.cpp:

(WebKit::WebVibrationProxy::initializeProvider):

  • UIProcess/WebVibrationProxy.h:
  • UIProcess/efl/BatteryProvider.cpp:

(BatteryProvider::BatteryProvider):

  • UIProcess/efl/NetworkInfoProvider.cpp:

(NetworkInfoProvider::NetworkInfoProvider):

  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::PageUIClientEfl):

  • UIProcess/efl/RequestManagerClientEfl.cpp:

(WebKit::RequestManagerClientEfl::RequestManagerClientEfl):

  • UIProcess/efl/TextCheckerClientEfl.cpp:

(TextCheckerClientEfl::TextCheckerClientEfl):

  • UIProcess/efl/VibrationClientEfl.cpp:

(VibrationClientEfl::VibrationClientEfl):

  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::ViewClientEfl):

  • UIProcess/efl/WebPageProxyEfl.cpp:

(WebKit::WebPageProxy::initializeUIPopupMenuClient):

  • UIProcess/efl/WebUIPopupMenuClient.cpp:

(WebUIPopupMenuClient::showPopupMenu):
(WebUIPopupMenuClient::hidePopupMenu):

  • UIProcess/efl/WebUIPopupMenuClient.h:
  • UIProcess/gtk/WebFullScreenClientGtk.cpp:

(WebKit::WebFullScreenClientGtk::willEnterFullScreen):
(WebKit::WebFullScreenClientGtk::willExitFullScreen):

  • UIProcess/gtk/WebFullScreenClientGtk.h:
  • UIProcess/gtk/WebInspectorClientGtk.cpp:

(WebKit::WebInspectorClientGtk::openWindow):
(WebKit::WebInspectorClientGtk::didClose):
(WebKit::WebInspectorClientGtk::bringToFront):
(WebKit::WebInspectorClientGtk::inspectedURLChanged):
(WebKit::WebInspectorClientGtk::attach):
(WebKit::WebInspectorClientGtk::detach):
(WebKit::WebInspectorClientGtk::didChangeAttachedHeight):

  • UIProcess/gtk/WebInspectorClientGtk.h:
  • UIProcess/gtk/WebInspectorProxyGtk.cpp:

(WebKit::WebInspectorProxy::initializeInspectorClientGtk):

  • UIProcess/soup/WebSoupRequestManagerClient.cpp:

(WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
(WebKit::WebSoupRequestManagerClient::didFailToLoadURIRequest):

  • UIProcess/soup/WebSoupRequestManagerClient.h:
  • UIProcess/soup/WebSoupRequestManagerProxy.cpp:

(WebKit::WebSoupRequestManagerProxy::initializeClient):

  • UIProcess/soup/WebSoupRequestManagerProxy.h:

Tools:

  • TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp:

(TestWebKitAPI::setViewClient):

12:29 AM Changeset in webkit [160074] by zoltan@webkit.org
  • 4 edits in trunk/Source/WebCore

Move space-ignoring inline functions into MidpointState
<https://webkit.org/b/124957>

Reviewed by David Hyatt.

Since:

  • The following inline functions were used only with a mandatory LineMidpointState argument: startIgnoringSpaces, stopIgnoringSpaces, ensureLineBoxInsideIgnoredSpaces, deprecatedAddMidpoint.
  • TrailingObjects class uses these functions. Since they're inline in BreakingContextInlineHeaders.h, it's hard to separate TrailingObjects into it's own file. (blocks bug #124956) I made these functions as a member of LineMidpointState, and I also updated the call sites.

No new tests, no behavior change.

  • platform/text/BidiResolver.h:

(WebCore::MidpointState::startIgnoringSpaces):
(WebCore::MidpointState::stopIgnoringSpaces):
(WebCore::MidpointState::ensureLineBoxInsideIgnoredSpaces):
(WebCore::MidpointState::deprecatedAddMidpoint):

  • rendering/RenderBlock.h:
  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleOutOfFlowPositioned):
(WebCore::shouldSkipWhitespaceAfterStartObject):
(WebCore::BreakingContext::handleEmptyInline):
(WebCore::BreakingContext::handleReplaced):
(WebCore::ensureCharacterGetsLineBox):
(WebCore::BreakingContext::handleText):

Dec 3, 2013:

11:56 PM Changeset in webkit [160073] by zoltan@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove BreakingContext's friendship from RenderBlockFlow
<https://webkit.org/b/124958>

Reviewed by David Hyatt.

BreakingContext uses only 2 functions from RenderBlockFlow: insertFloatingObject/positionNewFloatOnLine. I added helper
functions to LineBreaker, what is already a friend of RenderBlockFlow, so BreakingContext doesn't need to be anymore.

No new tests, no behavior change.

  • rendering/RenderBlockFlow.h:
  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleFloat):

  • rendering/line/LineBreaker.h:

(WebCore::LineBreaker::insertFloatingObject):
(WebCore::LineBreaker::positionNewFloatOnLine):

11:44 PM Changeset in webkit [160072] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
https://bugs.webkit.org/show_bug.cgi?id=125208

Reviewed by Antti Koivisto.

Merge https://chromium.googlesource.com/chromium/blink/+/49b1eeabbbf573d5271288c66d2b566cf33a09cf

These member functions of HTMLBodyElement were only used by corresponding functions in HTMLDocument
since they had the Reflect option specified in HTMLBodyElement.idl.

Removed the functions and directly called getAttribute and setAttribute in relevant functions in
HTMLDocument. The optimization to avoid assignment is no longer needed here since we've added that
optimization to setAttributeInternal a while ago.

  • html/HTMLBodyElement.cpp:
  • html/HTMLBodyElement.h:
  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::bgColor):
(WebCore::HTMLDocument::setBgColor):
(WebCore::HTMLDocument::fgColor):
(WebCore::HTMLDocument::setFgColor):
(WebCore::HTMLDocument::alinkColor):
(WebCore::HTMLDocument::setAlinkColor):
(WebCore::HTMLDocument::linkColor):
(WebCore::HTMLDocument::setLinkColor):
(WebCore::HTMLDocument::vlinkColor):
(WebCore::HTMLDocument::setVlinkColor):

  • html/HTMLDocument.h:
10:50 PM Changeset in webkit [160071] by mitz@apple.com
  • 2 edits in trunk/Tools

Fixed a test timing out after r160040.

  • TestWebKitAPI/Tests/WebKit2ObjC/WKBrowsingContextLoadDelegateTest.mm:

(-[SimpleLoadFailDelegate browsingContextController:didFailProvisionalLoadWithError:]):
Updated for the delegate method rename.

9:33 PM Changeset in webkit [160070] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Add a CSSProperty::isDirectionAwareProperty() helper.
<https://webkit.org/b/125202>

Move the block of case labels for checking whether a CSS property ID
is a directional property into a separate function. Also removed an
outdated comment about CSS variables.

Reviewed by Antti Koivisto.

9:25 PM Changeset in webkit [160069] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

WKContentView should just use InitializeWebKit2()
https://bugs.webkit.org/show_bug.cgi?id=125209

Reviewed by Benjamin Poulain.

Rather than calling an motley selection of init fuctions,
WKContentView should use the one true init function, InitializeWebKit2().

  • Shared/WebKit2Initialize.cpp: On iOS, we need to call InitWebCoreThreadSystemInterface().

(WebKit::InitializeWebKit2):

  • UIProcess/API/ios/WKContentView.mm: Remove various unused #imports.

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

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

Revert the inadvertently committed change.

  • html/HTMLElement.idl:
9:20 PM Changeset in webkit [160067] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

Remove nodeIsDetachedFromDocument and visualWordMovementEnabled in FrameSelection
https://bugs.webkit.org/show_bug.cgi?id=125210

Reviewed by Antti Koivisto.

Inspired by https://chromium.googlesource.com/chromium/blink/+/92409870f0ff8fafe31217830db0838a9e1ffb98

Removed some unused code.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::textWasReplaced):

  • editing/FrameSelection.h:
  • page/Settings.in:
9:05 PM Changeset in webkit [160066] by Seokju Kwon
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Remove '_attachedWindowHeight' property in InspectorFrontendHostStub.js
https://bugs.webkit.org/show_bug.cgi?id=125204

Reviewed by Timothy Hatcher.

'_attachedWindowHeight' property is not used anywhere, so remove it.

  • UserInterface/InspectorFrontendHostStub.js:

(.WebInspector.InspectorFrontendHostStub):

8:21 PM Changeset in webkit [160065] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Potential crash in RenderView::selectionBounds and RenderView::repaintSelection
https://bugs.webkit.org/show_bug.cgi?id=125207

Reviewed by Simon Fraser.

Merge https://chromium.googlesource.com/chromium/blink/+/f9e6e288a5aa959f05c374806121aaf0fc52d440

Update style in FrameSelection instead of RenderView's member functions. These are the last two
member functions of RenderView that updates the style.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::focusedOrActiveStateChanged):
(WebCore::FrameSelection::bounds):

  • rendering/RenderView.cpp:

(WebCore::RenderView::selectionBounds):
(WebCore::RenderView::repaintSelection):

7:23 PM Changeset in webkit [160064] by mrowe@apple.com
  • 11 edits in trunk/Source/WebCore

<https://webkit.org/b/125143> Improve the formatting in the generated Objective-C headers.

Add a space between @property and any parenthesized attributes.
Prefer strong over retain when specifying memory management semantics.

Reviewed by Darin Adler.

  • bindings/objc/PublicDOMInterfaces.h:
  • bindings/scripts/CodeGeneratorObjC.pm:

(GetPropertyAttributes): Generate strong instead of retain. Include a
space before the parenthesis.

  • bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
  • bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
  • bindings/scripts/test/ObjC/DOMTestException.h:
  • bindings/scripts/test/ObjC/DOMTestInterface.h:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/ObjC/DOMTestTypedefs.h:
  • bindings/scripts/test/ObjC/DOMattribute.h:
6:19 PM Changeset in webkit [160063] by mark.lam@apple.com
  • 4 edits in trunk/Source

testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size().
https://bugs.webkit.org/show_bug.cgi?id=121972.

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

  • interpreter/JSStack.cpp:

(JSC::JSStack::~JSStack):

  • Reverting the change from r160004 since it's better to fix OSAllocatorWin to be consistent with OSAllocatorPosix.

Source/WTF:

  • wtf/OSAllocatorWin.cpp:

(WTF::OSAllocator::decommit):
(WTF::OSAllocator::releaseDecommitted):

  • Added a check to ensure that the bytes to decommit / release is not 0. On Windows, a 0 length passed to VirtualFree() has a special meaning, and it's not "decommit / release nothing" as one would expect. Adding this check makes OSAllocatorWin consistent with OSAllocatorPosix for these 2 functions.
5:18 PM Changeset in webkit [160062] by mark.lam@apple.com
  • 5 edits
    1 add in trunk/Source/JavaScriptCore

Fix LLINT_C_LOOP build for Win64.
https://bugs.webkit.org/show_bug.cgi?id=125186.

Reviewed by Michael Saboff.

(JSC::getHostCallReturnValueWithExecState):

  • Win64 will build JITStubMSVC64.asm even when !ENABLE(JIT). This results in a linkage error due to a missing getHostCallReturnValueWithExecState(). So, we add a stub getHostCallReturnValueWithExecState() here to satisfy that linkage. This function will never be called. The alternative to providing such a stub is to make the MSVC project recognize if the JIT is enabled or not, and exclude JITStubMSVC64.asm if it's not enabled. We don't currently set ENABLE(JIT) via the MSVC project and the work to do that is too much trouble for what we're trying to achieve here. So, we're opting for this simpler workaround instead.
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:

(JSC::CLoop::execute):

  • Don't build callToJavaScript if we're building the C loop. Otherwise, the C loop won't build if !ENABLE(COMPUTE_GOTO_OPCODES).
4:51 PM Changeset in webkit [160061] by ap@apple.com
  • 20 edits
    4 adds in trunk

Update WebCrypto JWK mapping to newer proposal
https://bugs.webkit.org/show_bug.cgi?id=124218

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: crypto/subtle/jwk-export-use-values.html

crypto/subtle/jwk-import-use-values.html

  1. "extractable" renamed to "ext" in JWK.
  2. New values for "use" mapping, which can now be combined into comma separated lists,

and cover all possible WebCrypto usages.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
(WebCore::JSCryptoKeySerializationJWK::reconcileExtractable):
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
(WebCore::processUseValue):
(WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON):
(WebCore::JSCryptoKeySerializationJWK::serialize):

LayoutTests:

  • crypto/subtle/jwk-export-use-values-expected.txt: Added.
  • crypto/subtle/jwk-export-use-values.html: Added.
  • crypto/subtle/jwk-import-use-values-expected.txt: Added.
  • crypto/subtle/jwk-import-use-values.html: Added.

New tests for "use" mapping.

  • crypto/subtle/aes-cbc-import-jwk.html:
  • crypto/subtle/aes-cbc-unwrap-rsa.html:
  • crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html:
  • crypto/subtle/aes-cbc-wrap-rsa.html:
  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/hmac-export-key-expected.txt:
  • crypto/subtle/hmac-export-key.html:
  • crypto/subtle/hmac-import-jwk.html:
  • crypto/subtle/import-jwk-expected.txt:
  • crypto/subtle/import-jwk.html:
  • crypto/subtle/rsa-export-key-expected.txt:
  • crypto/subtle/rsa-export-key.html:
  • crypto/subtle/rsa-export-private-key-expected.txt:
  • crypto/subtle/rsa-export-private-key.html:
  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
  • crypto/subtle/rsa-oaep-key-manipulation.html:
4:51 PM Changeset in webkit [160060] by matthew_hanson@apple.com
  • 3 edits in tags/Safari-538.7.1/Source/JavaScriptCore

Merge of 159593.

4:36 PM Changeset in webkit [160059] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

PageOverlayClientImpl should be a proper API::Client
https://bugs.webkit.org/show_bug.cgi?id=125199

Reviewed by Tim Horton.

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

(PageOverlayClientImpl::PageOverlayClientImpl):
(PageOverlayClientImpl::setAccessibilityClient):
(PageOverlayClientImpl::willMoveToWebPage):
(PageOverlayClientImpl::didMoveToWebPage):
(PageOverlayClientImpl::drawRect):
(PageOverlayClientImpl::mouseEvent):
(PageOverlayClientImpl::copyAccessibilityAttributeValue):
(PageOverlayClientImpl::copyAccessibilityAttributeNames):
(WKBundlePageOverlayCreate):
(WKBundlePageOverlaySetAccessibilityClient):

4:19 PM Changeset in webkit [160058] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.7.1/Source

Versioning.

4:13 PM Changeset in webkit [160057] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Initialize the PageBannerClientImpl API::Client
https://bugs.webkit.org/show_bug.cgi?id=125198

Reviewed by Tim Horton.

  • WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:

(PageBannerClientImpl::PageBannerClientImpl):

3:56 PM Changeset in webkit [160056] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ARM64: Crash in JIT code due to improper reuse of cached memory temp register
https://bugs.webkit.org/show_bug.cgi?id=125181

Reviewed by Geoffrey Garen.

Changed load8() and load() to invalidate the memory temp CachedTempRegister when the
destination of an absolute load is the memory temp register since the source address
is also the memory temp register. Change branch{8,32,64} of an AbsoluteAddress with
a register to use the dataTempRegister as the destinate of the absolute load to
reduce the chance that we need to invalidate the memory temp register cache.
In the process, found and fixed an outright bug in branch8() where we'd load into
the data temp register and then compare and branch on the memory temp register.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::load8):
(JSC::MacroAssemblerARM64::branch32):
(JSC::MacroAssemblerARM64::branch64):
(JSC::MacroAssemblerARM64::branch8):
(JSC::MacroAssemblerARM64::load):

3:54 PM Changeset in webkit [160055] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.7.1

New tag.

3:44 PM Changeset in webkit [160054] by bshafiei@apple.com
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

3:41 PM Changeset in webkit [160053] by ryuan.choi@samsung.com
  • 2 edits in trunk

[EFL] Disable RTTI for release build
https://bugs.webkit.org/show_bug.cgi?id=125138

Reviewed by Gyuyoung Kim.

Binary size will be reduced about 1M bytes without RTTI.
ewebkit.so : 43,449,275 -> 42,510,224
ewebkit2.so: 46,715,870 -> 45,653,989

  • Source/cmake/OptionsEfl.cmake: Added -fno-rtti option to CMAKE_CXX_FLAGS_RELEASE.
3:28 PM Changeset in webkit [160052] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

Remote Layer Tree: Force repaint
https://bugs.webkit.org/show_bug.cgi?id=125189
<rdar://problem/15541789>

Reviewed by Anders Carlsson.

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

(WebKit::RemoteLayerTreeContext::forceRepaint):

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

(WebKit::RemoteLayerTreeDrawingArea::forceRepaint):
Implement WebProcess-synchronous force repaint.
We don't need the async variant because it is only needed
to synchronize with the WebProcess-side threaded scrolling
tree, which is not a component of the remote layer tree model.
The UI process will not handle the callback until after
RemoteLayerTreeHost::commit is complete, ensuring that the commit
is actually done.

3:26 PM Changeset in webkit [160051] by fpizlo@apple.com
  • 2 edits in trunk/Tools

REGRESSION: repro scripts disappear when you rerun tests
https://bugs.webkit.org/show_bug.cgi?id=125184

Reviewed by Mark Hahnenberg.

This bug made it difficult to quickly see if a test that recently failed is still
failing while also running a new batch of tests.

Repro scripts are supposed to stay around until you delete them explicitly. This
patch accomplishes that.

  • Scripts/run-jsc-stress-tests:
3:25 PM Changeset in webkit [160050] by Simon Fraser
  • 7 edits in trunk/Source

Remove some iOS-related documentScale code
https://bugs.webkit.org/show_bug.cgi?id=125194

Source/WebCore:

Reviewed by Enrica Casucci.

Remove exports of nonexistent documentScale-related functions on Frame.

  • WebCore.exp.in:

Source/WebKit2:

Reviewed by Enrica Casucci.

Upstream bits of removal of Frame::documentScale on iOS.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Whitespace.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::didFinishZooming): Don't call setDocumentScale().

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Remove minimumDocumentScale().
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: Ditto.

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): We delegate page scaling on iOS.
(WebKit::RemoteLayerTreeDrawingArea::setDeviceScaleFactor):

3:21 PM Changeset in webkit [160049] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test platform/mac/accessibility/search-predicate-element-count.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=125195

  • platform/mac/TestExpectations: Marking as such.
3:20 PM Changeset in webkit [160048] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[Win] run-jsc-stress-tests has a great number of failures (2026/7606) on Windows
https://bugs.webkit.org/show_bug.cgi?id=125111

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-03
Reviewed by Filip Pizlo.

Almost all errors seem to be caused by differences in line ending when diffing test output with expected output.

  • Scripts/run-javascriptcore-tests: Enable api test and stress test for WinCairo.
  • Scripts/run-jsc-stress-tests: Ignore carriage return when diffing test output with expected output.
3:19 PM Changeset in webkit [160047] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

PageBannerClientImpl should be an API::Client
https://bugs.webkit.org/show_bug.cgi?id=125190

Reviewed by Tim Horton.

  • WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:

(PageBannerClientImpl::PageBannerClientImpl):
(PageBannerClientImpl::~PageBannerClientImpl):
(WKBundlePageBannerCreateBannerWithCALayer):

3:03 PM Changeset in webkit [160046] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Fix regression caused by r158599
https://bugs.webkit.org/show_bug.cgi?id=125188

Reviewed by Jer Noble.

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::clearMediaPlayer): Do not clear m_player when PLUGIN_PROXY_FOR_VIDEO

is enabled.

2:50 PM Changeset in webkit [160045] by commit-queue@webkit.org
  • 15 edits in trunk/Source/WebCore

Nix Upstream: Updating WebCore files
https://bugs.webkit.org/show_bug.cgi?id=124981

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-03
Reviewed by Benjamin Poulain.

Just to sync our github repo files and the trunk, as part of the upstream process

No new tests needed.

  • PlatformNix.cmake:
  • css/mediaControlsNix.css:

(audio):
(video::-webkit-media-controls):
(audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
(video::-webkit-media-controls-enclosure):
(audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
(video:-webkit-full-page-media):
(audio:-webkit-full-page-media, video:-webkit-full-page-media):
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
(audio::-webkit-media-controls-overlay-play-button, video::-webkit-media-controls-overlay-play-button):
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
(audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
(input[type="range"]::-webkit-media-slider-container):
(input[type="range"]::-webkit-media-slider-container > div):
(input[type="range"]::-webkit-media-slider-thumb):
(audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
(audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
(audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
(audio::-webkit-media-controls-fullscreen-volume-slider, video::-webkit-media-controls-fullscreen-volume-slider):
(audio::-webkit-media-controls-fullscreen-volume-min-button, video::-webkit-media-controls-fullscreen-volume-min-button):
(audio::-webkit-media-controls-fullscreen-volume-max-button, video::-webkit-media-controls-fullscreen-volume-max-button):
(video::-webkit-media-text-track-container):
(video::cue):
(video::-webkit-media-text-track-region):
(video::-webkit-media-text-track-region-container):
(video::-webkit-media-text-track-region-container.scrolling):
(video::-webkit-media-text-track-display):
(video::cue(:future)):
(video::-webkit-media-text-track-container b):
(video::-webkit-media-text-track-container u):
(video::-webkit-media-text-track-container i):

  • editing/Editor.cpp:

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

  • editing/Editor.h:
  • html/HTMLCanvasElement.h:
  • platform/Cursor.h:
  • platform/audio/FFTFrame.h:
  • platform/audio/nix/AudioBusNix.cpp:

(WebCore::AudioBus::loadPlatformResource):

  • platform/graphics/GLContext.h:
  • platform/nix/CursorNix.cpp:

(WebCore::Cursor::ensurePlatformCursor):

  • platform/nix/GamepadsNix.cpp:

(WebCore::sampleGamepads):

  • platform/nix/RenderThemeNix.cpp:

(WebCore::toIntSize):
(WebCore::toNixRect):
(WebCore::RenderThemeNix::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeNix::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeNix::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeNix::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeNix::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeNix::platformActiveTextSearchHighlightColor):
(WebCore::RenderThemeNix::platformInactiveTextSearchHighlightColor):
(WebCore::RenderThemeNix::platformFocusRingColor):
(WebCore::RenderThemeNix::platformTapHighlightColor):
(WebCore::RenderThemeNix::paintButton):
(WebCore::RenderThemeNix::paintTextField):
(WebCore::RenderThemeNix::paintCheckbox):
(WebCore::RenderThemeNix::setCheckboxSize):
(WebCore::RenderThemeNix::paintRadio):
(WebCore::RenderThemeNix::setRadioSize):
(WebCore::RenderThemeNix::paintMenuList):
(WebCore::RenderThemeNix::paintProgressBar):
(WebCore::RenderThemeNix::paintSliderTrack):
(WebCore::RenderThemeNix::paintSliderThumb):
(WebCore::RenderThemeNix::paintInnerSpinButton):
(WebCore::RenderThemeNix::paintMeter):
(WebCore::RenderThemeNix::extraMediaControlsStyleSheet):
(WebCore::RenderThemeNix::paintMediaPlayButton):
(WebCore::RenderThemeNix::paintMediaMuteButton):
(WebCore::RenderThemeNix::paintMediaSeekBackButton):
(WebCore::RenderThemeNix::paintMediaSeekForwardButton):
(WebCore::RenderThemeNix::paintMediaSliderTrack):
(WebCore::RenderThemeNix::paintMediaVolumeSliderContainer):
(WebCore::RenderThemeNix::paintMediaVolumeSliderTrack):
(WebCore::RenderThemeNix::paintMediaRewindButton):

  • platform/nix/RenderThemeNix.h:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

2:43 PM Changeset in webkit [160044] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Typo: FixedPositionConstaint -> FixedPositionConstraint
https://bugs.webkit.org/show_bug.cgi?id=125171

Patch by Ralph Thomas <ralpht@gmail.com> on 2013-12-03
Reviewed by Simon Fraser.

Source/WebCore:

No new tests, no change in behavior.

  • page/scrolling/ScrollingConstraints.h:
  • page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:

(WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):

Source/WebKit/ios:

  • WebCoreSupport/WebFixedPositionContent.mm:

(-[WebFixedPositionContent scrollOrZoomChanged:]):

2:38 PM Changeset in webkit [160043] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Add a script to automatically configure a git clone
https://bugs.webkit.org/show_bug.cgi?id=110073

Revert the change to use https for now since git.webkit.org is setup with http.

  • Scripts/webkitpy/tool/commands/setupgitclone.py:

(SetupGitClone.execute):

2:38 PM Changeset in webkit [160042] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

jit/JITArithmetic.cpp doesn't build for non-X86 ports
https://bugs.webkit.org/show_bug.cgi?id=125185

Rubber stamped by Mark Hahnenberg.

Removed unused declarations and related UNUSED_PARAM().

  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_mod):

2:35 PM Changeset in webkit [160041] by Manuel Rego Casasnovas
  • 2 edits in trunk/PerformanceTests

[CSS Regions] Fix Layout/RegionsSelection.html in Mac platform
https://bugs.webkit.org/show_bug.cgi?id=124963

Reviewed by Ryosuke Niwa.

Layout/RegionsSelection.html introduced in r159488 was not working in
Mac platform because of it was trying to use mouse events out of the
window dimensions. Use collapse() and extend() methods from Selection
object to solve the issue.

  • Layout/resources/regions.js: Use collapse() and extend() instead of

mouse events.

2:32 PM Changeset in webkit [160040] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Give two load delegate methods more conventional names
https://bugs.webkit.org/show_bug.cgi?id=125183

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(didFailProvisionalLoadWithErrorForFrame): Updated for rename.
(didFailLoadWithErrorForFrame): Ditto.

  • UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Renamed

-browsingContextControllerDidFailProvisionalLoad:withError: to
-browsingContextController:didFailProvisionalLoadWithError: and
-browsingContextControllerDidFailLoad:withError: to
-browsingContextController:didFailLoadWithError:.

2:29 PM Changeset in webkit [160039] by rniwa@webkit.org
  • 2 edits
    1 add in trunk/Tools

Add a script to automatically configure a git clone
https://bugs.webkit.org/show_bug.cgi?id=110073

Reviewed by Benjamin Poulain.

Added "webkit-patch setup-git-clone" to setup a brand new Git clone.

This command runs various commands listed on http://trac.webkit.org/wiki/UsingGitWithWebKit

  • Scripts/webkitpy/tool/commands/init.py:
  • Scripts/webkitpy/tool/commands/setupgitclone.py: Added.

(SetupGitClone):
(SetupGitClone.execute):

2:24 PM Changeset in webkit [160038] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

ObjectAllocationProfile is racy and the DFG should be cool with that
https://bugs.webkit.org/show_bug.cgi?id=125172
<rdar://problem/15233487>

Reviewed by Mark Hahnenberg.

We would previously sometimes get a null Structure because checking if the profile is non-null and loading
the structure from it were two separate operations.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::setFuturePossibleStructure):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • runtime/JSFunction.h:

(JSC::JSFunction::allocationProfile):
(JSC::JSFunction::allocationStructure):

2:19 PM Changeset in webkit [160037] by rniwa@webkit.org
  • 3 edits
    8 adds in trunk/LayoutTests/imported/w3c

Import the XHTML parsing and serialization tests for template elements
https://bugs.webkit.org/show_bug.cgi?id=125131

Reviewed by Antti Koivisto.

Import the tests for parsing XHTML documents and fragments at f744661dbd0c29bb6a54c1530f9843838eec1300
after self-closing link elements in template-child-nodes-div.xhtml and template-child-nodes-nested.xhtml
as these two files would encounter parser errors otherwise (I'll be merging these changes back into
the web-platform-tests repository later).

This completes the importation of W3C tests for the HTML template element.

  • html-templates/additions-to-parsing-xhtml-documents: Added.
  • html-templates/additions-to-parsing-xhtml-documents/node-document-expected.txt: Added.
  • html-templates/additions-to-parsing-xhtml-documents/node-document.html: Added.
  • html-templates/additions-to-parsing-xhtml-documents/template-child-nodes-expected.txt: Added.
  • html-templates/additions-to-parsing-xhtml-documents/template-child-nodes.html: Added.
  • html-templates/additions-to-serializing-xhtml-documents: Added.
  • html-templates/additions-to-serializing-xhtml-documents/outerhtml-expected.txt: Added.
  • html-templates/additions-to-serializing-xhtml-documents/outerhtml.html: Added.
  • html-templates/resources/template-child-nodes-div.xhtml:
  • html-templates/resources/template-child-nodes-nested.xhtml:
1:53 PM Changeset in webkit [160036] by andersca@apple.com
  • 9 edits in trunk

Deprecate WKNotificationProvider
https://bugs.webkit.org/show_bug.cgi?id=125178

Reviewed by Sam Weinig.

Source/WebKit2:

  • Shared/API/c/WKDeclarationSpecifiers.h:

Add WK_DEPRECATED and WK_ENUM_DEPRECATED macros so we can things as deprecated.

  • UIProcess/API/C/WKNotificationManager.cpp:

(WKNotificationManagerSetProvider):

  • UIProcess/API/C/WKNotificationManager.h:

WKNotificationManagerSetProvider now takes a WKNotificationProviderBase.

  • UIProcess/API/C/WKNotificationProvider.h:

Deprecate WKNotificationProvider and kWKNotificationProviderCurrentVersion.

Tools:

Update for WebKit2 changes.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

  • WebKitTestRunner/WebNotificationProvider.cpp:

(WTR::WebNotificationProvider::provider):

  • WebKitTestRunner/WebNotificationProvider.h:
1:50 PM Changeset in webkit [160035] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Support 64-bit Application Support Libraries Location
https://bugs.webkit.org/show_bug.cgi?id=125179

Reviewed by Tim Horton.

Enable the user to specify a location for 64-bit support libraries (such as libxml2, ICU, etc.)
on Windows until an official distribution is available that properly creates registry settings
to specify these locations.

  • Scripts/webkitdirs.pm:

(setupAppleWinEnv): Notify user to set WEBKIT_64_SUPPORT environment variable if needed.
(setupCygwinEnv): Report WEWBKIT_64_SUPPORT path when running 64-bit builds.
(appleApplicationSupportPath): Add WEBKIT_64_SUPPORT location to runtime environment when
running 64-bit builds.

1:49 PM Changeset in webkit [160034] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.60.9

New tag.

1:21 PM Changeset in webkit [160033] by beidson@apple.com
  • 9 edits in trunk/Source/WebKit2

Indexed Database work should be done on a non-main queue
https://bugs.webkit.org/show_bug.cgi?id=125127

Reviewed by Darin Adler.

Add a non-main WorkQueue to the DatabaseProcess:

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::DatabaseProcess):
(WebKit::DatabaseProcess::queue):

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

(WebKit::UniqueIDBDatabase::UniqueIDBDatabase):
(WebKit::UniqueIDBDatabase::enqueueDatabaseQueueRequest): Add an AsyncRequest to the deque then schedule performing

the requests on the background WorkQueue.

(WebKit::UniqueIDBDatabase::processDatabaseRequestQueue): Processes all enqueued database requests.
(WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): Renamed from getIDBDatabaseMetadata().
(WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadataInternal): For doing i/o on a background queue/thread.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Add a creator that takes the abort handler as an argument, and rename requestedCompleted()
to completeRequest(). This makes more sense in more situations:

  • Shared/AsyncRequest.cpp:

(WebKit::AsyncRequest::AsyncRequest):
(WebKit::AsyncRequest::setAbortHandler):

  • Shared/AsyncRequest.h:

(WebKit::AsyncRequest::completeRequest):

Update for the AsyncRequest rename:

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata):

12:58 PM Changeset in webkit [160032] by Samuel White
  • 7 edits
    2 adds in trunk

AXPress event coordinates are always sent as (0, 0)
https://bugs.webkit.org/show_bug.cgi?id=76677

Reviewed by Simon Fraser.

Make sure a press targets an element's center point.

  • accessibility/press-targets-center-point-expected.txt: Added.
  • accessibility/press-targets-center-point.html: Added.

Set the coordinates of a simulated press equal to the center of the target
element when the simulated press does not have a related mouse event.

Test: accessibility/press-targets-center-point.html

  • dom/Element.cpp: (WebCore::Element::clientRect): (WebCore::Element::screenRect):
  • dom/Element.h:
  • dom/EventDispatcher.cpp: (WebCore::EventDispatcher::dispatchSimulatedClick):
  • dom/MouseEvent.cpp: (WebCore::SimulatedMouseEvent::create): (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
  • dom/MouseEvent.h:
12:37 PM Changeset in webkit [160031] by timothy_horton@apple.com
  • 4 edits
    4 deletes in trunk/Source/WebKit2

Remove TiledCoreAnimationDrawingArea(Proxy)IOS
https://bugs.webkit.org/show_bug.cgi?id=125176

Reviewed by Simon Fraser.

Remove unused code.

  • UIProcess/API/ios/WKContentView.mm:
  • UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.h: Removed.
  • UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm: Removed.
  • Shared/DrawingAreaInfo.h:
  • WebProcess/WebPage/DrawingArea.cpp:

(WebKit::DrawingArea::create):

  • WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.h: Removed.
  • WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.mm: Removed.
12:21 PM Changeset in webkit [160030] by dino@apple.com
  • 17 edits
    6 adds in trunk

[WebGL] Implement OES texture float linear
https://bugs.webkit.org/show_bug.cgi?id=124871

Reviewed by Brent Fulgham.

Source/WebCore:

Implement the OES_texture_float_linear extension. Generally
we'd also enable OES_texture_half_float_linear at the same
time, but that's blocked on webkit.org/b/110936.

Test: fast/canvas/webgl/oes-texture-float-linear.html

  • CMakeLists.txt: Add new files.
  • DerivedSources.cpp: Ditto.
  • DerivedSources.make: Generate new file from IDL.
  • GNUmakefile.list.am: Add new files.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear.
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS): Map the new name into the appropriate type.

  • html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class

that's mostly empty.
(WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
(WebCore::OESTextureFloatLinear::~OESTextureFloatLinear):
(WebCore::OESTextureFloatLinear::getName):
(WebCore::OESTextureFloatLinear::create):

  • html/canvas/OESTextureFloatLinear.h: Added.
  • html/canvas/OESTextureFloatLinear.idl: Added.
  • html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::drawArrays): Call new name.
(WebCore::WebGLRenderingContext::drawElements): Call new name.
(WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked.
(WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now
checks for the type of the texture too.

  • html/canvas/WebGLRenderingContext.h: Member variable for new extension.
  • html/canvas/WebGLTexture.cpp:

(WebCore::WebGLTexture::WebGLTexture):
(WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates
if it has an extension enabled.
(WebCore::WebGLTexture::update): Note it is a float type when updating.

  • html/canvas/WebGLTexture.h: New flag to indicate float type.
  • platform/graphics/Extensions3D.h: New flag type.
  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension.

LayoutTests:

Add the Khronos test files for this extension.

Add the JS test file for OES_texture_float_linear and OES_texture_half_float_linear
even though it's only used for the former at the moment.

  • fast/canvas/webgl/oes-texture-float-linear.html: Added.
  • fast/canvas/webgl/resources/oes-texture-float-and-half-float-linear.js: Added.
12:18 PM Changeset in webkit [160029] by ap@apple.com
  • 5 edits
    2 adds in trunk

Support exporting private WebCrypto RSA keys
https://bugs.webkit.org/show_bug.cgi?id=124483

Reviewed by Anders Carlsson.

Source/WebCore:

Test: crypto/subtle/rsa-export-private-key.html

It might be better to have our own bignum implementation in WTF, but we currently
don't, and the need for this computation is Common Crypto specific anyway.

  • crypto/CommonCryptoUtilities.h:
  • crypto/CommonCryptoUtilities.cpp:

(WebCore::CCBigNum::CCBigNum):
(WebCore::CCBigNum::~CCBigNum):
(WebCore::CCBigNum::operator=):
(WebCore::CCBigNum::data):
(WebCore::CCBigNum::operator-):
(WebCore::CCBigNum::operator%):
(WebCore::CCBigNum::inverse):
Added a minimal wrapper around CommonCrypto BigNum.

  • crypto/mac/CryptoKeyRSAMac.cpp:

(WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum.
(WebCore::CryptoKeyRSA::exportData): Implemented private key case.

LayoutTests:

  • crypto/subtle/rsa-export-private-key-expected.txt: Added.
  • crypto/subtle/rsa-export-private-key.html: Added.
12:12 PM Changeset in webkit [160028] by andersca@apple.com
  • 4 edits
    2 deletes in trunk/Source/WebKit2

Remove old WebKit::APIClient cruft
https://bugs.webkit.org/show_bug.cgi?id=125173

Reviewed by Antti Koivisto.

  • Shared/APIClient.h:
  • Shared/APIClientTraits.cpp: Removed.
  • Shared/APIClientTraits.h: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:
12:05 PM Changeset in webkit [160027] by ap@apple.com
  • 2 edits in trunk/LayoutTests

WebCrypto HMAC doesn't check key algorithm's hash
https://bugs.webkit.org/show_bug.cgi?id=125114

Update layout test result for a last minute change in test content.

  • crypto/subtle/hmac-check-algorithm-expected.txt:
12:01 PM Changeset in webkit [160026] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for iOS.

Reviewed by Tim Horton.

  • Shared/WebCoreArgumentCoders.cpp: Added missing header.
11:51 AM Changeset in webkit [160025] by commit-queue@webkit.org
  • 21 edits in trunk/Source/WebInspectorUI

Web Inspector: restore navigation panel state across reloads and reopens
https://bugs.webkit.org/show_bug.cgi?id=122125

Patch by Brian J. Burg <Brian Burg> on 2013-12-03
Reviewed by Timothy Hatcher.

The previous strategy for restoring content views after inspector
re-open did not consider the active sidebar and its selection, and
tried to recreate the appropriate selection from the saved content
view. However, doesn't work for tree elements in the sidebar panel
that don't change views when selected, such as script breakpoints,
special breakpoints, call stack, timeline sections, etc.

This patch implements a new strategy that saves the navigation
sidebar panel's view state by serializing the identity of the
selected element's represented object. Relevant represented
object classes implement the saveIdentityToCookie() method. Each
represented object class also adds a TypeIdentifier property to
its constructor, to aid inexact matching based on represented
object type, rather than its complete identity.

When restoring, the navigation sidebar attempts to match added
tree elements against the pending cookie, and selects the element
if it matches. A represented object matches if its serialized
identity matches the previously saved serialized identity.

The inspector view state is now only saved on the page hide event
(for saving across reopen) and when the main frame commits its
provisional load (for saving across same-page reloads). It
consolidates similar view state settings into a single setting.

  • UserInterface/ApplicationCacheFrame.js:

(WebInspector.ApplicationCacheFrame): Add cookie keys and type identifier.
(WebInspector.ApplicationCacheFrame.prototype.saveIdentityToCookie): Added.

  • UserInterface/ApplicationCacheManager.js: remove objectForCookie().
  • UserInterface/Breakpoint.js:

(WebInspector.Breakpoint): Add cookie keys and type identifier.
(WebInspector.Breakpoint.prototype.saveIdentityToCookie):

  • UserInterface/CookieStorageObject.js:

(WebInspector.CookieStorageObject.prototype.saveIdentityToCookie): Added.

  • UserInterface/DOMStorageObject.js:

(WebInspector.DOMStorageObject): Add cookie keys and type identifier.
(WebInspector.DOMStorageObject.prototype.saveIdentityToCookie): Added.

  • UserInterface/DatabaseObject.js:

(WebInspector.DatabaseObject): Add cookie keys and type identifier.
(WebInspector.DatabaseObject.prototype.saveIdentityToCookie): Added.

  • UserInterface/DatabaseTableObject.js:

(WebInspector.DatabaseTableObject): Add cookie keys and type identifier.
(WebInspector.DatabaseTableObject.prototype.saveIdentityToCookie): Added.

  • UserInterface/DebuggerSidebarPanel.js:

(WebInspector.DebuggerSidebarPanel.prototype.saveStateToCookie): Added.
(WebInspector.DebuggerSidebarPanel.prototype.restoreStateFromCookie): Added.

  • UserInterface/Frame.js:

(WebInspector.Frame): Add cookie keys and type identifier.
(WebInspector.Frame.prototype.saveIdentityToCookie): Added.

  • UserInterface/FrameResourceManager.js: remove objectForCookie().
  • UserInterface/InstrumentSidebarPanel.js:

(WebInspector.InstrumentSidebarPanel.prototype.showTimelineForRecordType):
Return the shown timeline, if any.

(WebInspector.InstrumentSidebarPanel.prototype.saveStateToCookie): Added.
(WebInspector.InstrumentSidebarPanel.prototype.restoreStateFromCookie): Added.
(WebInspector.InstrumentSidebarPanel.prototype.showProfile):
Return the shown profile, if any.

  • UserInterface/Main.js:

(WebInspector): Added cookie keys for the selected sidebar and
typeidentifier of the sidebar's selected tree element.

(WebInspector.contentLoaded): Remove callbacks for
resolveAndShowPendingContentViewCookie(). Consolidate all saved
inspector view state into one Setting. Move special-cased
restoring of the console to the restoration method. Move saving
of last opened navigation panel to the saving method.

(WebInspector._mainResourceDidChange): Try to restore saved view
state when the main resource changes.

(WebInspector._provisionalLoadCommitted): Update the saved view
state when the navigation commits. This is the last chance to save
it before the main resource changes and the navigation panel view
state is discarded and rebuilt.

(WebInspector._pageHidden): Update the saved view state when the
inspector page is hidden, but before state is discarded.

(WebInspector._navigationSidebarPanelSelected): Don't save last
navigation sidebar panel.
(WebInspector._updateCookieForInspectorViewState): Renamed from
_updateCurrentContentViewCookie. It delegates view state
serialization to the currently open navigation sidebar, rather
than the current content view.

(WebInspector._contentBrowserRepresentedObjectsDidChange): Don't
spuriously serialize the current view state cookie on every
ContentView change.

(WebInspector._restoreInspectorViewStateFromCookie): Renamed from
_showContentViewForCookie. It now restores a specific navigation
panel and delegates remaining view state restoration to the panel
itself. Last-resort selection of any tree element with the same
type identifier was moved to the navigation panel's restore method.

  • UserInterface/NavigationSidebarPanel.js:

(WebInspector.NavigationSidebarPanel):
(WebInspector.NavigationSidebarPanel.prototype.set contentTreeOutline):
(WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline):
Save references to all created TreeOutlines in a Set, so we can
restore any tree's selection.

(WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie):
Added. Find the selected tree element from all tree outlines and
ask it to serialize its identity.

(WebInspector.NavigationSidebarPanel.prototype.restoreStateFromCookie):
Added. Eagerly search existing tree elements for a matching
representedObject. If none exists, save the pending cookie and
schedule last-resort matching using the provided timeout interval.

(WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged):
Check if the added tree element matches a pending view state
cookie, if one exists.

(WebInspector.NavigationSidebarPanel.prototype.treeElementMatchesCookie):
Added. Check if the tree element's representedObject matches the
pending view state cookie.

(WebInspector.NavigationSidebarPanel.prototype._checkElementsForPendingViewStateCookie):
Added. For each provided tree element, check if the tree
element's represented object produces the same serialized identity
as the pending view state cookie that we are trying to resolve.
If a match is found (possibly by relaxing to matching anything
with the same type), select the tree element and clear both the
pending view state cookie and last-resort selection timer.

  • UserInterface/Resource.js:

(WebInspector.Resource): Add cookie keys and type identifier.
(WebInspector.Resource.prototype.saveIdentityToCookie): Added.

  • UserInterface/ResourceClusterContentView.js:

(WebInspector.ResourceClusterContentView.prototype.saveToCookie):
(WebInspector.ResourceClusterContentView.prototype.restoreFromCookie):
Since identity state is serialized by the representedObject, these
methods only need to save view-specific state, such as the visible
subview. Remove extraneous state.

  • UserInterface/Script.js:

(WebInspector.Script): Add cookie keys and type identifier.
(WebInspector.Script.prototype.saveIdentityToCookie): Added.

  • UserInterface/StorageManager.js: remove objectForCookie().
  • UserInterface/TimelineManager.js: remove objectForCookie().
  • UserInterface/TimelinesContentView.js:

(WebInspector.TimelinesContentView.prototype.saveToCookie):
(WebInspector.TimelinesContentView.prototype.restoreFromCookie):
Since identity state is serialized by the representedObject, these
methods only need to save view-specific state, such as the visible
subview. Remove extraneous state.

  • UserInterface/TreeOutline.js: Add TreeOutline.prototype.constructor

so other code can assume the constructor property exists.

11:44 AM Changeset in webkit [160024] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

XML fragment parsing algorithm doesn't use the context element's default namespace URI
https://bugs.webkit.org/show_bug.cgi?id=125132

Reviewed by Darin Adler.

Source/WebCore:

Always use the context element's namespace as the default namespace URI when one is not specified by xmlns.

The new behavior matches that of Internet Explorer and the specified behavior in HTML5:
http://www.w3.org/TR/2013/CR-html5-20130806/the-xhtml-syntax.html#parsing-xhtml-fragments

"The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would
return true."

Test: fast/parser/fragment-parsing-in-document-without-xmlns.html

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::XMLDocumentParser):

LayoutTests:

Added a test for parsing a markup fragment inside a XHTML document without xmlns.
The parsed fragment should use the context element's namespace as the default namespace.

  • fast/parser/fragment-parsing-in-document-without-xmlns-expected.txt: Added.
  • fast/parser/fragment-parsing-in-document-without-xmlns.html: Added.
11:43 AM Changeset in webkit [160023] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Remove some CSS Variables leftovers
https://bugs.webkit.org/show_bug.cgi?id=125167

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-03
Reviewed by Darin Adler.

Source/WebCore:

No new tests needed. Only removing leftover code.

  • css/CSSBasicShapes.cpp:
  • css/CSSBasicShapes.h:

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:
11:37 AM Changeset in webkit [160022] by commit-queue@webkit.org
  • 32 edits in trunk/Source/WebKit2

Remove WTF:: prefix from types in messages.in files.
https://bugs.webkit.org/show_bug.cgi?id=124578

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Anders Carlsson.

The WTF:: prefixes are removed from the messages.in files, and the
messages.py now handles unprefixed non-template WTF classes (only
the WTF::String class is used currently). Tests are also updated.

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkProcess.messages.in:
  • PluginProcess/PluginControllerProxy.messages.in:
  • PluginProcess/PluginProcess.messages.in:
  • Scripts/webkit2/messages.py:

(forward_declarations_and_headers):
(class_template_headers):
(argument_coder_headers_for_type):

  • Scripts/webkit2/messages_unittest.py:

(std):

  • Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
  • UIProcess/Downloads/DownloadProxy.messages.in:
  • UIProcess/Plugins/PluginProcessProxy.messages.in:
  • UIProcess/Storage/StorageManager.messages.in:
  • UIProcess/WebContext.messages.in:
  • UIProcess/WebCookieManagerProxy.messages.in:
  • UIProcess/WebDatabaseManagerProxy.messages.in:
  • UIProcess/WebIconDatabase.messages.in:
  • UIProcess/WebInspectorProxy.messages.in:
  • UIProcess/WebMediaCacheManagerProxy.messages.in:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebProcessProxy.messages.in:
  • WebProcess/Cookies/WebCookieManager.messages.in:
  • WebProcess/Geolocation/WebGeolocationManager.messages.in:
  • WebProcess/MediaCache/WebMediaCacheManager.messages.in:
  • WebProcess/Notifications/WebNotificationManager.messages.in:
  • WebProcess/Plugins/PluginProcessConnection.messages.in:
  • WebProcess/Plugins/PluginProxy.messages.in:
  • WebProcess/Storage/StorageAreaMap.messages.in:
  • WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
  • WebProcess/WebPage/WebInspector.messages.in:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/soup/WebSoupRequestManager.messages.in:
11:37 AM Changeset in webkit [160021] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Checking second-to-last bit in address is a typo
https://bugs.webkit.org/show_bug.cgi?id=125162

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-12-03
Reviewed by Darin Adler.

After talking with the original author of this line,
is was a typo to make sure that the second-to-last bit
in an address is 0. Instead, we want to make sure that
the address is aligned to a 4-byte boundary

No behavior change, so no test is necessary

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::ImageBuffer):

11:36 AM Changeset in webkit [160020] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Tweak build fixes.

  • Shared/APIClient.h:
11:34 AM Changeset in webkit [160019] by Brent Fulgham
  • 2 edits in branches/safari-537.60-branch/Source/WebKit

Merge r160017.

2013-12-03 Brent Fulgham <Brent Fulgham>

[Win] WebKit.make Makefile doesn't copy resource bundle to DSTROOT
https://bugs.webkit.org/show_bug.cgi?id=125160

Reviewed by Tim Horton.

  • WebKit.vcxproj/WebKit.make: Add copy command for resource bundle.
11:31 AM Changeset in webkit [160018] by dbates@webkit.org
  • 2 edits in trunk/Source/ThirdParty/ANGLE

ANGLE fails to build with trunk clang: unused constant kTraceBufferLen
https://bugs.webkit.org/show_bug.cgi?id=125164
https://code.google.com/p/angleproject/issues/detail?id=534

Reviewed by Darin Adler.

Move the definition of the constant kTraceBufferLen under the macro
guard TRACE_ENABLED since it's only referenced in code guarded by
TRACE_ENABLED.

  • src/compiler/debug.cpp:
11:26 AM Changeset in webkit [160017] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] WebKit.make Makefile doesn't copy resource bundle to DSTROOT
https://bugs.webkit.org/show_bug.cgi?id=125160

Reviewed by Tim Horton.

  • WebKit.vcxproj/WebKit.make: Add copy command for resource bundle.
11:04 AM WebKitGTK/2.2.x edited by vjaquez@igalia.com
(diff)
10:51 AM Changeset in webkit [160016] by mhahnenberg@apple.com
  • 2 edits
    1 add in trunk/Tools

run-jsc-stress-tests only supports host environments that have make installed
https://bugs.webkit.org/show_bug.cgi?id=124550

Reviewed by Darin Adler.

This might not be the case for all hosts, so this patch implements an alternate "backend"
for run-jsc-stress-tests to use normal shell commands rather than Makefiles. To remain at
least somewhat competitive with the make-based test runner, the shell backend uses subshells
run in the background to allow tests to run in parallel. Since the concurrency primitives
in shell scripting are rather coarse, the overhead of this parallelism is higher than that
of the make-based runner.

  • Scripts/jsc-stress-test-helpers/shell-runner.sh: Added. This is the runner that is copied into

the bundle and controls all of the parallel aspects of the shell-based test runner.

  • Scripts/run-jsc-stress-tests:
10:44 AM Changeset in webkit [160015] by Chris Fleizach
  • 2 edits in trunk/Source/WebKit/mac

AX: Crash in accessibilityRoot when Document goes away
https://bugs.webkit.org/show_bug.cgi?id=125113

Reviewed by Tim Horton.

The AXObjectCache can sometimes be null if the render tree has been detached from the document.

  • WebView/WebFrame.mm:

(-[WebFrame accessibilityRoot]):

10:28 AM Changeset in webkit [160014] by stavila@adobe.com
  • 3 edits
    4 adds in trunk

The overflow border of a relatively positioned element inside a region is not painted
https://bugs.webkit.org/show_bug.cgi?id=124919

Source/WebCore:

Relative positioned elements have self-painting layers that don't propagate the visual overflow
so the layer's position should be used when determining the clipping rectangle for box decorations.

Reviewed by Mihnea Ovidenie.

Test: fast/regions/relative-borders-overflow.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):

LayoutTests:

Added new tests for correct painting of the borders of a relatively positioned element inside a region.

Reviewed by Mihnea Ovidenie.

  • fast/regions/relative-borders-overflow-expected.html: Added.
  • fast/regions/relative-borders-overflow.html: Added.
  • fast/regions/relative-in-absolute-borders-overflow-expected.html: Added.
  • fast/regions/relative-in-absolute-borders-overflow.html: Added.
10:09 AM Changeset in webkit [160013] by Seokju Kwon
  • 3 edits in trunk/Source/WebCore

Web Inspector: Get rid of 'hasFrontend()' in InspectorController and WorkerInspectorController
https://bugs.webkit.org/show_bug.cgi?id=125135

Reviewed by Darin Adler.

Remove 'hasFrontend()' from InspectorController and WorkerInspectorController
as it's never called.

No new tests, no behavior changes.

  • inspector/InspectorController.h:
  • inspector/WorkerInspectorController.h:
10:08 AM Changeset in webkit [160012] by Seokju Kwon
  • 7 edits in trunk/Source/WebCore

Web Inspector: webViewResized() is not used anywhere in WebInspectorUI
https://bugs.webkit.org/show_bug.cgi?id=125137

Reviewed by Darin Adler.

Remove leftover code.

No new tests, no behavior changes.

  • inspector/InspectorController.cpp:
  • inspector/InspectorController.h:
  • inspector/InspectorOverlay.cpp:
  • inspector/InspectorOverlay.h:
  • inspector/InspectorPageAgent.cpp:
  • inspector/InspectorPageAgent.h:
9:40 AM Changeset in webkit [160011] by Chris Fleizach
  • 1 edit
    2 adds in trunk/LayoutTests

AX: aria-hidden=false does not work as expected
https://bugs.webkit.org/show_bug.cgi?id=98787

Reviewed by Beth Dakin.

These tests were part of this patch added over a year ago, but the patch was rolled out, and when it was rolled back in
the tests were never added. So I'm adding them back again.

  • accessibility/aria-hidden-negates-no-visibility.html: Added.
  • platform/mac/accessibility/aria-hidden-negates-no-visibility-expected.txt: Added.
9:29 AM Changeset in webkit [160010] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk
ASSERTION FAILED: !value
(value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue.

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

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-03
Reviewed by Darin Adler.

Source/WebCore:

Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer.
An implicit y-value can become explicit if specified as a separate longhand.
At the same time, its new value can be non-primitive.

Backported from Blink:
http://src.chromium.org/viewvc/blink?view=rev&rev=153678

Test: fast/css/webkit-mask-crash-implicit.html

  • css/StyleProperties.cpp:

(WebCore::StyleProperties::getLayeredShorthandValue):

LayoutTests:

  • fast/css/webkit-mask-crash-implicit-expected.txt: Added.
  • fast/css/webkit-mask-crash-implicit.html: Added.
9:26 AM Changeset in webkit [160009] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix build break after r160007.

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShape::canBlend):

9:25 AM Changeset in webkit [160008] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix EFL build error in WK2 (159965)
https://bugs.webkit.org/show_bug.cgi?id=125153

Patch by Laszlo Vidacs <lac@inf.u-szeged.hu> on 2013-12-03
Reviewed by Darin Adler.

  • Shared/APIClient.h:
9:18 AM Changeset in webkit [160007] by rwlbuis@webkit.org
  • 17 edits
    2 adds in trunk

[css shapes] layout for new ellipse syntax
https://bugs.webkit.org/show_bug.cgi?id=124621

Source/WebCore:

Reviewed by Dirk Schulze.

Implement support for doing layout with the new ellipse shape syntax,
including basic animation support.

Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): Convert new ellipse to a layout shape.

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShape::canBlend): Ignore ellipses with values that

cannot be interpolated.

(WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate

either radiusX or radiusY, shared by clip-path and shape code paths.

(WebCore::BasicShapeEllipse::path):

  • rendering/style/BasicShapes.h:

LayoutTests:

Add a new test for the new ellipse syntax. Also update existing shape-inside, animation, and clip-path tests to
test the new ellipse syntax for clipping and shape-inside.

Reviewed by Dirk Schulze.

  • animations/resources/animation-test-helpers.js:

(parseBasicShape):

  • css3/masking/clip-path-animation-expected.txt:
  • css3/masking/clip-path-animation.html:
  • css3/masking/clip-path-ellipse.html:
  • fast/shapes/shape-inside/shape-inside-animation-expected.txt:
  • fast/shapes/shape-inside/shape-inside-animation.html:
  • fast/shapes/shape-inside/shape-inside-ellipse-padding.html:
  • fast/shapes/shape-inside/shape-inside-ellipse.html:
  • fast/shapes/shape-inside/shape-inside-empty-expected.html:
  • fast/shapes/shape-inside/shape-inside-empty.html:
  • fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
  • fast/shapes/shape-outside-floats/shape-outside-animation.html:
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html: Added.
9:15 AM Changeset in webkit [160006] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove function from TextChecker
https://bugs.webkit.org/show_bug.cgi?id=125148

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Darin Adler.

The process_file_data is used only from the unit tests, so it is simply moved there.

  • Scripts/webkitpy/style/checkers/text.py:

(TextChecker.check):

  • Scripts/webkitpy/style/checkers/text_unittest.py:

(TextStyleTestCase.process_file_data):
(TextStyleTestCase.assertNoError):
(TextStyleTestCase.assertError):

9:12 AM Changeset in webkit [160005] by commit-queue@webkit.org
  • 14 edits
    1 copy
    7 adds in trunk

Add an MathMLSelectElement class to implement <maction> and <semantics>.
<https://webkit.org/b/120058>

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-03
Reviewed by Chris Fleizach.

Source/WebCore:

Tests: mathml/presentation/maction-dynamic.html

mathml/presentation/maction.html
mathml/presentation/semantics.html

This adds a new MathMLSelectElement class to prepare the implementation
of the <maction> and <semantics> elements, for which only one "selected"
child is visible. We now simply display the first child of the
<semantics> element instead of hiding the annotations and this allows to
handle the use case of SVG-in-MathML as generated by Instiki when
bug 124128 is fixed ; Gecko's selection algorithm will be implemented
later (bug 100626). We now also rely on the @actiontype and @selection
attributes to select the visible <maction> child ; It remains to deal
with the user interaction (bug 85734).

  • CMakeLists.txt: add the new files.
  • GNUmakefile.list.am: ditto
  • Target.pri: ditto
  • WebCore.vcxproj/WebCore.vcxproj: ditto
  • WebCore.vcxproj/WebCore.vcxproj.filters: ditto
  • WebCore.xcodeproj/project.pbxproj: ditto
  • css/mathml.css: remove the CSS rule for annotation/annotation-xml.
  • mathml/MathMLAllInOne.cpp: add the new cpp file.
  • mathml/MathMLSelectElement.cpp: Added.

(WebCore::MathMLSelectElement::MathMLSelectElement):
(WebCore::MathMLSelectElement::create):
(WebCore::MathMLSelectElement::createRenderer):
(WebCore::MathMLSelectElement::childShouldCreateRenderer):
(WebCore::MathMLSelectElement::finishParsingChildren):
(WebCore::MathMLSelectElement::childrenChanged):
(WebCore::MathMLSelectElement::attributeChanged):
(WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection.

  • mathml/MathMLSelectElement.h: Added.
  • mathml/mathattrs.in: add actiontype and selection attributes.
  • mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml.

LayoutTests:

New tests for the selection of the visible child in the <maction> and <semantics> elements.

  • mathml/presentation/maction-dynamic-expected.html: Added.
  • mathml/presentation/maction-dynamic.html: Added.
  • mathml/presentation/maction-expected.html: Added.
  • mathml/presentation/maction.html: Added.
  • mathml/presentation/semantics-expected.html: Added.
  • mathml/presentation/semantics.html: Added.
9:09 AM Changeset in webkit [160004] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

testapi test crashes on Windows in WTF::Vector<wchar_t,64,WTF::UnsafeVectorOverflow>::size()
https://bugs.webkit.org/show_bug.cgi?id=121972

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-12-03
Reviewed by Michael Saboff.

The reason for the crash is that the wrong memory block is decommitted.
This can happen if no memory has been committed in the reserved block before the JSStack object is destroyed.
In the JSStack destructor, the pointer to decommit then points to the end of the block (or the start of the next), and the decommit size is zero.
If there is a block just after the block we are trying to decommit, this block will be decommitted, since Windows will decommit the whole block,
if the decommit size is zero (see VirtualFree). When somebody tries to read/write to this block later, we crash.

  • interpreter/JSStack.cpp:

(JSC::JSStack::~JSStack): Don't decommit memory if nothing has been committed.

7:53 AM Changeset in webkit [160003] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Guard JIT include.
https://bugs.webkit.org/show_bug.cgi?id=125063

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-03
Reviewed by Filip Pizlo.

  • llint/LLIntThunks.cpp:
7:02 AM Changeset in webkit [160002] by Seokju Kwon
  • 2 edits in trunk/Source/WebKit2

Debug build fix : Add '<algorithm>' for 'std::is_sorted' after r159965.
https://bugs.webkit.org/show_bug.cgi?id=125140

Reviewed by Csaba Osztrogonác.

  • Shared/APIClient.h:
6:24 AM Changeset in webkit [160001] by commit-queue@webkit.org
  • 2 edits
    6 adds in trunk/Source/WebCore

Nix Upstream: Adding missing nix new files to WebCore
https://bugs.webkit.org/show_bug.cgi?id=124987

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-03
Reviewed by Benjamin Poulain.

No new tests needed.

  • PlatformNix.cmake:
  • platform/nix/ErrorsNix.cpp: Added.
  • platform/nix/ErrorsNix.h: Added.
  • platform/nix/FileSystemNix.cpp: Added.
  • platform/nix/MIMETypeRegistryNix.cpp: Added.
  • platform/nix/SharedTimerNix.cpp: Added.
  • platform/nix/TemporaryLinkStubs.cpp: Added.
4:44 AM Changeset in webkit [160000] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix EFL build with INPUT_TYPE_COLOR disabled.
https://bugs.webkit.org/show_bug.cgi?id=125065

Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2013-12-03
Reviewed by Zoltan Herczeg.

  • UIProcess/API/efl/ewk_color_picker.cpp:
4:42 AM Changeset in webkit [159999] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Correct broken build on efl port with --no-netscape-plugin-api
configuration.
https://bugs.webkit.org/show_bug.cgi?id=123997

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-12-03
Reviewed by Zoltan Herczeg.

Build failed on efl port with --no-netscape-plugin-api configuration
as ld did not found some methods. The configuration uses a minimal
empty implementation of the class, which is now extended with empty
method implementations.

  • plugins/PluginPackageNone.cpp:

(WebCore::PluginPackage::createPackage):

Returns NULL pointer.

(WebCore::PluginPackage::hash):

Returns 0.

(WebCore::PluginPackage::equal):

Returns true (equals).

(WebCore::PluginPackage::compare):

Returns 0 (equals).

(WebCore::PluginPackage::~PluginPackage):

Do nothing.

4:40 AM Changeset in webkit [159998] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove get_test() and reference test names directly instead.
https://bugs.webkit.org/show_bug.cgi?id=124962

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-03
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(Base.init):
(Base.get_basic_tests):
(assert_exp):
(MiscTests.test_multiple_results):
(MiscTests.test_category_expectations):
(MiscTests.test_get_modifiers):
(MiscTests.test_get_expectations_string):
(MiscTests.test_get_test_set):
(MiscTests.test_parse_warning):
(MiscTests.test_pixel_tests_flag.match):

4:30 AM Changeset in webkit [159997] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

Style Checker false pass.
https://bugs.webkit.org/show_bug.cgi?id=112456

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-03
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/style/checkers/changelog.py:

(ChangeLogChecker.check_entry):
simple regex fix to check "No new tests (...)."

  • Scripts/webkitpy/style/checkers/changelog_unittest.py:

(ChangeLogCheckerTest.test_no_new_tests):

2:29 AM Changeset in webkit [159996] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

Add spatial navigation API in EFL port
https://bugs.webkit.org/show_bug.cgi?id=125002

Patch by Dariusz Frankiewicz <Dariusz Frankiewicz> on 2013-12-03
Reviewed by Gyuyoung Kim.

API enables capability of turning on and off spatial navigation
and check is state.
Spatial navigation is the ability to navigate between focusable
elements by keyboard.

  • UIProcess/API/efl/ewk_settings.cpp:

(ewk_settings_spatial_navigation_enabled_set):
(ewk_settings_spatial_navigation_enabled_get):

  • UIProcess/API/efl/ewk_settings.h:
  • UIProcess/API/efl/tests/test_ewk2_settings.cpp:

(TEST_F):

2:28 AM Changeset in webkit [159995] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Merge mips and arm/sh4 paths in nativeForGenerator and privateCompileCTINativeCall functions.
https://bugs.webkit.org/show_bug.cgi?id=125067

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-12-03
Reviewed by Michael Saboff.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

12:01 AM Changeset in webkit [159994] by zandobersek@gmail.com
  • 29 edits in trunk/Source/WebKit2

Build fixes for GCC-using ports after r159965 and later
https://bugs.webkit.org/show_bug.cgi?id=125136

GCC doesn't process API::ClientTraits template instantiations unless they're done
inside the API namespace.

  • Shared/WebConnectionClient.h:
  • UIProcess/Notifications/WebNotificationProvider.h:
  • UIProcess/WebContextClient.h:
  • UIProcess/WebContextConnectionClient.h:
  • UIProcess/WebContextInjectedBundleClient.h:
  • UIProcess/WebCookieManagerProxyClient.h:
  • UIProcess/WebDatabaseManagerProxyClient.h:
  • UIProcess/WebDownloadClient.h:
  • UIProcess/WebFindClient.h:
  • UIProcess/WebFormClient.h:
  • UIProcess/WebGeolocationProvider.h:
  • UIProcess/WebHistoryClient.h:
  • UIProcess/WebIconDatabaseClient.h:
  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebOriginDataManagerProxyChangeClient.h:
  • UIProcess/WebPageContextMenuClient.h:
  • UIProcess/WebPolicyClient.h:
  • UIProcess/WebUIClient.h:
  • WebProcess/InjectedBundle/InjectedBundleClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:

Dec 2, 2013:

10:20 PM Changeset in webkit [159993] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

  • UIProcess/API/ios/WKGeolocationProviderIOS.mm:

(-[WKGeolocationProviderIOS initWithContext:]):

9:53 PM Changeset in webkit [159992] by commit-queue@webkit.org
  • 6 edits
    2 copies in trunk/Source/WebKit2

Add ability to iterate over API::Array
https://bugs.webkit.org/show_bug.cgi?id=124533

Patch by Martin Hock <mhock@apple.com> on 2013-12-02
Reviewed by Sam Weinig.

  • GNUmakefile.list.am:
  • Shared/APIArray.h:
  • Shared/FilterIterator.h:
  • Shared/IteratorPair.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::toStringVector):

  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:

(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):

8:25 PM Changeset in webkit [159991] by mitz@apple.com
  • 4 edits
    2 adds in trunk/Source/WebKit2

[Cocoa] WebProtectionSpace has a generic wrapper
https://bugs.webkit.org/show_bug.cgi?id=125125

Reviewed by Anders Carlsson.

Added WKNSURLProtectionSpace.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject): Allocate a WKNSURLProtectionSpace if the object is a
WebProtectionSpace.

  • Shared/Cocoa/WKNSURLProtectionSpace.h: Added.

(WebKit::wrapper): Added. Returns a WebProtecitonSpace’s wrapper as an NSURLProtectionSpace.

  • Shared/Cocoa/WKNSURLProtectionSpace.mm: Added.

(-[WKNSURLProtectionSpace copyWithZone:]): Retains self.

  • UIProcess/Authentication/WebProtectionSpace.h:

(WebKit::WebProtectionSpace::protectionSpace): Added an accessor for the
WebCore::ProtectionSpace.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
8:19 PM Changeset in webkit [159990] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should allow for tests that have a directory containing .js files nested within a directory containing the data
https://bugs.webkit.org/show_bug.cgi?id=125130

Reviewed by Geoffrey Garen.

  • Scripts/run-jsc-stress-tests:
7:19 PM Changeset in webkit [159989] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Avoid setting style twice for generated image content.
<https://webkit.org/b/125128>

Take care of a FIXME I added in r158097 and avoid redundant work in
ImageContentData::createRenderer().

I changed the inheritance helper RenderImage::setPseudoStyle() into
a new createStyleInheritingFromPseudoStyle() function instead so it
can be used from both PseudoElement and ImageContentData.

Reviewed by Antti Koivisto.

6:36 PM Changeset in webkit [159988] by andersca@apple.com
  • 91 edits in trunk/Source/WebKit2

Replace uses of WebKit::APIClient with API::Client
https://bugs.webkit.org/show_bug.cgi?id=125129

Reviewed by Andreas Kling.

  • Shared/API/c/WKConnectionRef.cpp:

(WKConnectionSetConnectionClient):

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::initializeConnectionClient):

  • Shared/WebConnection.h:
  • Shared/WebConnectionClient.cpp:

(WebKit::WebConnectionClient::didReceiveMessage):
(WebKit::WebConnectionClient::didClose):

  • Shared/WebConnectionClient.h:
  • UIProcess/API/C/WKContext.cpp:

(WKContextSetClient):
(WKContextSetInjectedBundleClient):
(WKContextSetHistoryClient):
(WKContextSetDownloadClient):
(WKContextSetConnectionClient):

  • UIProcess/API/C/WKCookieManager.cpp:

(WKCookieManagerSetClient):

  • UIProcess/API/C/WKDatabaseManager.cpp:

(WKDatabaseManagerSetClient):

  • UIProcess/API/C/WKGeolocationManager.cpp:

(WKGeolocationManagerSetProvider):

  • UIProcess/API/C/WKIconDatabase.cpp:

(WKIconDatabaseSetIconDatabaseClient):

  • UIProcess/API/C/WKNotificationManager.cpp:

(WKNotificationManagerSetProvider):

  • UIProcess/API/C/WKOriginDataManager.cpp:

(WKOriginDataManagerSetChangeClient):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageContextMenuClient):
(WKPageSetPageFindClient):
(WKPageSetPageFindMatchesClient):
(WKPageSetPageFormClient):
(WKPageSetPagePolicyClient):
(WKPageSetPageUIClient):

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(setUpPagePolicyClient):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::initializeProvider):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationProvider.cpp:

(WebKit::WebNotificationProvider::show):
(WebKit::WebNotificationProvider::cancel):
(WebKit::WebNotificationProvider::didDestroyNotification):
(WebKit::WebNotificationProvider::clearNotifications):
(WebKit::WebNotificationProvider::addNotificationManager):
(WebKit::WebNotificationProvider::removeNotificationManager):
(WebKit::WebNotificationProvider::notificationPermissions):

  • UIProcess/Notifications/WebNotificationProvider.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::initializeClient):
(WebKit::WebContext::initializeInjectedBundleClient):
(WebKit::WebContext::initializeConnectionClient):
(WebKit::WebContext::initializeHistoryClient):
(WebKit::WebContext::initializeDownloadClient):

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

(WebKit::WebContextClient::plugInAutoStartOriginHashesChanged):
(WebKit::WebContextClient::networkProcessDidCrash):
(WebKit::WebContextClient::plugInInformationBecameAvailable):

  • UIProcess/WebContextClient.h:
  • UIProcess/WebContextConnectionClient.cpp:

(WebKit::WebContextConnectionClient::didCreateConnection):

  • UIProcess/WebContextConnectionClient.h:
  • UIProcess/WebContextInjectedBundleClient.cpp:

(WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):
(WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
(WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):

  • UIProcess/WebContextInjectedBundleClient.h:
  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::initializeClient):

  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebCookieManagerProxyClient.cpp:

(WebKit::WebCookieManagerProxyClient::cookiesDidChange):

  • UIProcess/WebCookieManagerProxyClient.h:
  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::initializeClient):

  • UIProcess/WebDatabaseManagerProxy.h:
  • UIProcess/WebDatabaseManagerProxyClient.cpp:

(WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
(WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):

  • UIProcess/WebDatabaseManagerProxyClient.h:
  • UIProcess/WebDownloadClient.cpp:

(WebKit::WebDownloadClient::didStart):
(WebKit::WebDownloadClient::didReceiveAuthenticationChallenge):
(WebKit::WebDownloadClient::didReceiveResponse):
(WebKit::WebDownloadClient::didReceiveData):
(WebKit::WebDownloadClient::shouldDecodeSourceDataOfMIMEType):
(WebKit::WebDownloadClient::decideDestinationWithSuggestedFilename):
(WebKit::WebDownloadClient::didCreateDestination):
(WebKit::WebDownloadClient::didFinish):
(WebKit::WebDownloadClient::didFail):
(WebKit::WebDownloadClient::didCancel):
(WebKit::WebDownloadClient::processDidCrash):

  • UIProcess/WebDownloadClient.h:
  • UIProcess/WebFindClient.cpp:

(WebKit::WebFindClient::didFindString):
(WebKit::WebFindClient::didFailToFindString):
(WebKit::WebFindClient::didCountStringMatches):
(WebKit::WebFindMatchesClient::didFindStringMatches):
(WebKit::WebFindMatchesClient::didGetImageForMatchResult):

  • UIProcess/WebFindClient.h:
  • UIProcess/WebFormClient.cpp:

(WebKit::WebFormClient::willSubmitForm):

  • UIProcess/WebFormClient.h:
  • UIProcess/WebGeolocationManagerProxy.cpp:

(WebKit::WebGeolocationManagerProxy::initializeProvider):

  • UIProcess/WebGeolocationManagerProxy.h:
  • UIProcess/WebGeolocationProvider.cpp:

(WebKit::WebGeolocationProvider::startUpdating):
(WebKit::WebGeolocationProvider::stopUpdating):
(WebKit::WebGeolocationProvider::setEnableHighAccuracy):

  • UIProcess/WebGeolocationProvider.h:
  • UIProcess/WebHistoryClient.cpp:

(WebKit::WebHistoryClient::didNavigateWithNavigationData):
(WebKit::WebHistoryClient::didPerformClientRedirect):
(WebKit::WebHistoryClient::didPerformServerRedirect):
(WebKit::WebHistoryClient::didUpdateHistoryTitle):
(WebKit::WebHistoryClient::populateVisitedLinks):

  • UIProcess/WebHistoryClient.h:
  • UIProcess/WebIconDatabase.cpp:

(WebKit::WebIconDatabase::initializeIconDatabaseClient):

  • UIProcess/WebIconDatabase.h:
  • UIProcess/WebIconDatabaseClient.cpp:

(WebKit::WebIconDatabaseClient::didChangeIconForPageURL):
(WebKit::WebIconDatabaseClient::didRemoveAllIcons):
(WebKit::WebIconDatabaseClient::iconDataReadyForPageURL):

  • UIProcess/WebIconDatabaseClient.h:
  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::createInspectorPage):

  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebOriginDataManagerProxy.cpp:

(WebKit::WebOriginDataManagerProxy::setChangeClient):

  • UIProcess/WebOriginDataManagerProxy.h:
  • UIProcess/WebOriginDataManagerProxyChangeClient.cpp:

(WebKit::WebOriginDataManagerProxyChangeClient::didChange):

  • UIProcess/WebOriginDataManagerProxyChangeClient.h:
  • UIProcess/WebPageContextMenuClient.cpp:

(WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
(WebKit::WebPageContextMenuClient::customContextMenuItemSelected):
(WebKit::WebPageContextMenuClient::contextMenuDismissed):
(WebKit::WebPageContextMenuClient::showContextMenu):
(WebKit::WebPageContextMenuClient::hideContextMenu):

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

(WebKit::WebPageProxy::initializePolicyClient):
(WebKit::WebPageProxy::initializeFormClient):
(WebKit::WebPageProxy::initializeUIClient):
(WebKit::WebPageProxy::initializeFindClient):
(WebKit::WebPageProxy::initializeFindMatchesClient):
(WebKit::WebPageProxy::initializeContextMenuClient):

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

(WebKit::WebPolicyClient::decidePolicyForNavigationAction):
(WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
(WebKit::WebPolicyClient::decidePolicyForResponse):
(WebKit::WebPolicyClient::unableToImplementPolicy):

  • UIProcess/WebPolicyClient.h:
  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::createNewPage):
(WebKit::WebUIClient::showPage):
(WebKit::WebUIClient::close):
(WebKit::WebUIClient::takeFocus):
(WebKit::WebUIClient::focus):
(WebKit::WebUIClient::unfocus):
(WebKit::WebUIClient::runJavaScriptAlert):
(WebKit::WebUIClient::runJavaScriptConfirm):
(WebKit::WebUIClient::runJavaScriptPrompt):
(WebKit::WebUIClient::setStatusText):
(WebKit::WebUIClient::mouseDidMoveOverElement):
(WebKit::WebUIClient::unavailablePluginButtonClicked):
(WebKit::WebUIClient::didNotHandleKeyEvent):
(WebKit::WebUIClient::didNotHandleWheelEvent):
(WebKit::WebUIClient::toolbarsAreVisible):
(WebKit::WebUIClient::setToolbarsAreVisible):
(WebKit::WebUIClient::menuBarIsVisible):
(WebKit::WebUIClient::setMenuBarIsVisible):
(WebKit::WebUIClient::statusBarIsVisible):
(WebKit::WebUIClient::setStatusBarIsVisible):
(WebKit::WebUIClient::isResizable):
(WebKit::WebUIClient::setIsResizable):
(WebKit::WebUIClient::setWindowFrame):
(WebKit::WebUIClient::windowFrame):
(WebKit::WebUIClient::runBeforeUnloadConfirmPanel):
(WebKit::WebUIClient::didDraw):
(WebKit::WebUIClient::pageDidScroll):
(WebKit::WebUIClient::exceededDatabaseQuota):
(WebKit::WebUIClient::runOpenPanel):
(WebKit::WebUIClient::decidePolicyForGeolocationPermissionRequest):
(WebKit::WebUIClient::decidePolicyForNotificationPermissionRequest):
(WebKit::WebUIClient::headerHeight):
(WebKit::WebUIClient::footerHeight):
(WebKit::WebUIClient::drawHeader):
(WebKit::WebUIClient::drawFooter):
(WebKit::WebUIClient::printFrame):
(WebKit::WebUIClient::runModal):
(WebKit::WebUIClient::saveDataToFileInDownloadsFolder):
(WebKit::WebUIClient::shouldInterruptJavaScript):
(WebKit::WebUIClient::showColorPicker):
(WebKit::WebUIClient::hideColorPicker):

  • UIProcess/WebUIClient.h:
  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleSetClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetContextMenuClient):
(WKBundlePageSetEditorClient):
(WKBundlePageSetFormClient):
(WKBundlePageSetPageLoaderClient):
(WKBundlePageSetResourceLoadClient):
(WKBundlePageSetPolicyClient):
(WKBundlePageSetUIClient):
(WKBundlePageSetFullScreenClient):
(WKBundlePageSetDiagnosticLoggingClient):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::initializeClient):

  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/InjectedBundle/InjectedBundleClient.cpp:

(WebKit::InjectedBundleClient::didCreatePage):
(WebKit::InjectedBundleClient::willDestroyPage):
(WebKit::InjectedBundleClient::didInitializePageGroup):
(WebKit::InjectedBundleClient::didReceiveMessage):
(WebKit::InjectedBundleClient::didReceiveMessageToPage):

  • WebProcess/InjectedBundle/InjectedBundleClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:

(WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):

  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:

(WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):

  • WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:

(WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
(WebKit::InjectedBundlePageEditorClient::shouldEndEditing):
(WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
(WebKit::InjectedBundlePageEditorClient::shouldInsertText):
(WebKit::InjectedBundlePageEditorClient::shouldDeleteRange):
(WebKit::InjectedBundlePageEditorClient::shouldChangeSelectedRange):
(WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
(WebKit::InjectedBundlePageEditorClient::didBeginEditing):
(WebKit::InjectedBundlePageEditorClient::didEndEditing):
(WebKit::InjectedBundlePageEditorClient::didChange):
(WebKit::InjectedBundlePageEditorClient::didChangeSelection):
(WebKit::InjectedBundlePageEditorClient::willWriteToPasteboard):
(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
(WebKit::InjectedBundlePageEditorClient::didWriteToPasteboard):

  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::didFocusTextField):
(WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
(WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
(WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField):
(WebKit::InjectedBundlePageFormClient::willSendSubmitEvent):
(WebKit::InjectedBundlePageFormClient::willSubmitForm):
(WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
(WebKit::InjectedBundlePageFormClient::shouldNotifyOnFormChanges):

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::willLoadURLRequest):
(WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):
(WebKit::InjectedBundlePageLoaderClient::shouldGoToBackForwardListItem):
(WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
(WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFinishProgress):
(WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
(WebKit::InjectedBundlePageLoaderClient::didSameDocumentNavigationForFrame):
(WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
(WebKit::InjectedBundlePageLoaderClient::didRemoveFrameFromHierarchy):
(WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
(WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
(WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFirstLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didLayoutForFrame):
(WebKit::InjectedBundlePageLoaderClient::didLayout):
(WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
(WebKit::InjectedBundlePageLoaderClient::didCancelClientRedirectForFrame):
(WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
(WebKit::InjectedBundlePageLoaderClient::didHandleOnloadEventsForFrame):
(WebKit::InjectedBundlePageLoaderClient::globalObjectIsAvailableForFrame):
(WebKit::InjectedBundlePageLoaderClient::willDisconnectDOMWindowExtensionFromGlobalObject):
(WebKit::InjectedBundlePageLoaderClient::didReconnectDOMWindowExtensionToGlobalObject):
(WebKit::InjectedBundlePageLoaderClient::willDestroyGlobalObjectForDOMWindowExtension):
(WebKit::InjectedBundlePageLoaderClient::shouldForceUniversalAccessFromLocalURL):
(WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
(WebKit::InjectedBundlePageLoaderClient::willDestroyFrame):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:

(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
(WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy):

  • WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:

(WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::shouldCacheResponse):
(WebKit::InjectedBundlePageResourceLoadClient::shouldUseCredentialStorage):

  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
(WebKit::InjectedBundlePageUIClient::willSetStatusbarText):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptAlert):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptConfirm):
(WebKit::InjectedBundlePageUIClient::willRunJavaScriptPrompt):
(WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
(WebKit::InjectedBundlePageUIClient::pageDidScroll):
(WebKit::InjectedBundlePageUIClient::shouldGenerateFileForUpload):
(WebKit::InjectedBundlePageUIClient::generateFileForUpload):
(WebKit::InjectedBundlePageUIClient::statusBarIsVisible):
(WebKit::InjectedBundlePageUIClient::menuBarIsVisible):
(WebKit::InjectedBundlePageUIClient::toolbarsAreVisible):
(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
(WebKit::InjectedBundlePageUIClient::plugInStartLabelTitle):
(WebKit::InjectedBundlePageUIClient::plugInStartLabelSubtitle):
(WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
(WebKit::InjectedBundlePageUIClient::plugInExtraScript):

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::initializeInjectedBundleContextMenuClient):
(WebKit::WebPage::initializeInjectedBundleEditorClient):
(WebKit::WebPage::initializeInjectedBundleFormClient):
(WebKit::WebPage::initializeInjectedBundleLoaderClient):
(WebKit::WebPage::initializeInjectedBundlePolicyClient):
(WebKit::WebPage::initializeInjectedBundleResourceLoadClient):
(WebKit::WebPage::initializeInjectedBundleUIClient):
(WebKit::WebPage::initializeInjectedBundleFullScreenClient):
(WebKit::WebPage::initializeInjectedBundleDiagnosticLoggingClient):

  • WebProcess/WebPage/WebPage.h:
5:32 PM Changeset in webkit [159987] by mark.lam@apple.com
  • 12 edits in trunk/Source

Build failure when disabling JIT, YARR_JIT, and ASSEMBLER.
https://bugs.webkit.org/show_bug.cgi?id=123809.

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Also fixed build when disabling the DISASSEMBLER.
Added some needed #if's and some comments.

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::finalizeCodeWithDisassembly):

  • dfg/DFGDisassembler.cpp:
  • dfg/DFGDisassembler.h:

(JSC::DFG::Disassembler::Disassembler):
(JSC::DFG::Disassembler::setStartOfCode):
(JSC::DFG::Disassembler::setForBlockIndex):
(JSC::DFG::Disassembler::setForNode):
(JSC::DFG::Disassembler::setEndOfMainPath):
(JSC::DFG::Disassembler::setEndOfCode):
(JSC::DFG::Disassembler::dump):
(JSC::DFG::Disassembler::reportToProfiler):

  • disassembler/Disassembler.cpp:
  • disassembler/X86Disassembler.cpp:
  • jit/FPRInfo.h:
  • jit/GPRInfo.h:
  • jit/JITDisassembler.cpp:
  • jit/JITDisassembler.h:

(JSC::JITDisassembler::JITDisassembler):
(JSC::JITDisassembler::setStartOfCode):
(JSC::JITDisassembler::setForBytecodeMainPath):
(JSC::JITDisassembler::setForBytecodeSlowPath):
(JSC::JITDisassembler::setEndOfSlowPath):
(JSC::JITDisassembler::setEndOfCode):
(JSC::JITDisassembler::dump):
(JSC::JITDisassembler::reportToProfiler):

Source/WTF:

  • wtf/Platform.h:
  • Ensure that the ASSEMBLER is enabled when the DISASSEMBLER is enabled.
5:27 PM Changeset in webkit [159986] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
https://bugs.webkit.org/show_bug.cgi?id=125110

Reviewed by Darin Adler.

FrameLoader::loadProgressingStatusChanged() might be called while the Frame has a null FrameView.

It’s unclear how to reproduce, but there’s no harm in a null check.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadProgressingStatusChanged):

5:12 PM Changeset in webkit [159985] by enrica@apple.com
  • 17 edits in trunk/Source/WebKit2

Merging some more iOS WebKit2 stuff.
https://bugs.webkit.org/show_bug.cgi?id=125119

Reviewed by Tim Horton.

  • Shared/EditorState.h:
  • Shared/NativeWebKeyboardEvent.h:
  • Shared/NativeWebMouseEvent.h:
  • Shared/NativeWebTouchEvent.h:
  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerTreePropertyApplier.mm:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/PageClient.h:
  • UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
  • UIProcess/mac/SecItemShimProxy.messages.in:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
5:11 PM Changeset in webkit [159984] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Add versioned structs for the remaining clients
https://bugs.webkit.org/show_bug.cgi?id=125123

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKContextConnectionClient.h:
  • UIProcess/API/C/WKContextDownloadClient.h:
  • UIProcess/API/C/WKContextHistoryClient.h:
  • UIProcess/API/C/WKContextInjectedBundleClient.h:
  • UIProcess/API/C/WKOriginDataManager.h:
4:54 PM Changeset in webkit [159983] by andersca@apple.com
  • 3 edits
    4 adds in trunk/Source/WebKit2

Move WKContext clients to separate files
https://bugs.webkit.org/show_bug.cgi?id=125121

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKContextConnectionClient.h: Added.
  • UIProcess/API/C/WKContextDownloadClient.h: Added.
  • UIProcess/API/C/WKContextHistoryClient.h: Added.
  • UIProcess/API/C/WKContextInjectedBundleClient.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
4:43 PM Changeset in webkit [159982] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

WebPageGroups should keep track of what processes they are being used by
https://bugs.webkit.org/show_bug.cgi?id=124556

Reviewed by Anders Carlsson.

  • UIProcess/WebContextUserMessageCoders.h:

(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::addProcess):
(WebKit::WebPageGroup::disconnectProcess):

  • UIProcess/WebPageGroup.h:

(WebKit::WebPageGroup::sendToAllProcessesInGroup):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::webPageGroup):
(WebKit::WebProcessProxy::addWebPageGroup):

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

(WebKit::WebProcess::webPageGroup):

4:40 PM Changeset in webkit [159981] by andersca@apple.com
  • 26 edits in trunk/Source/WebKit2

Add versioned structs for all clients except the ones in WKContext.h
https://bugs.webkit.org/show_bug.cgi?id=125120

Reviewed by Andreas Kling.

  • Shared/API/c/WKConnectionRef.h:
  • UIProcess/API/C/WKCookieManager.h:
  • UIProcess/API/C/WKDatabaseManager.h:
  • UIProcess/API/C/WKGeolocationManager.h:
  • UIProcess/API/C/WKIconDatabase.h:
  • UIProcess/API/C/WKNotificationProvider.h:
  • UIProcess/API/C/WKPageContextMenuClient.h:
  • UIProcess/API/C/WKPageFindClient.h:
  • UIProcess/API/C/WKPageFindMatchesClient.h:
  • UIProcess/API/C/WKPageFormClient.h:
  • UIProcess/API/C/WKPageLoaderClient.h:
  • UIProcess/API/C/WKPagePolicyClient.h:
  • UIProcess/API/C/WKPageUIClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
4:36 PM Changeset in webkit [159980] by Samuel White
  • 18 edits
    2 adds in trunk

AX: Add AXUIElementCountForSearchPredicate parameterized attribute.
https://bugs.webkit.org/show_bug.cgi?id=124561

Reviewed by Chris Fleizach.

Added test to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute
works as it should and updated existing test that has exposes this new attribute.

  • platform/mac/accessibility/bounds-for-range-expected.txt:
  • platform/mac/accessibility/search-predicate-element-count-expected.txt: Added.
  • platform/mac/accessibility/search-predicate-element-count.html: Added.

Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
exist on a page, and then fetch them in chunks as needed.

Test: platform/mac/accessibility/search-predicate-element-count.html

  • accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
  • accessibility/AccessibilityObject.h: (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute): (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

Added function to verify that NSAccessibilityUIElementCountForSearchPredicateParameterizedAttribute works as it should.

  • DumpRenderTree/AccessibilityUIElement.cpp: (uiElementCountForSearchPredicateCallback): (uiElementForSearchPredicateCallback): (AccessibilityUIElement::getJSClass):
  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp: (AccessibilityUIElement::uiElementCountForSearchPredicate):
  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm: (AccessibilityUIElement::uiElementCountForSearchPredicate):
  • DumpRenderTree/mac/AccessibilityUIElementMac.mm: (searchPredicateParameterizedAttributeForSearchCriteria): (AccessibilityUIElement::uiElementCountForSearchPredicate): (AccessibilityUIElement::uiElementForSearchPredicate):
  • DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::uiElementCountForSearchPredicate):
  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm: (WTR::searchPredicateParameterizedAttributeForSearchCriteria): (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate): (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
4:10 PM Changeset in webkit [159979] by Bem Jones-Bey
  • 32 edits
    12 adds in trunk

[css shapes] Layout support for new circle shape syntax
https://bugs.webkit.org/show_bug.cgi?id=124619

Reviewed by Dirk Schulze.

Source/WebCore:

Implement support for doing layout with the new circle shape syntax,
inclduing basic animation support.

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html

fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html
fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html

  • css/BasicShapeFunctions.cpp:

(WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes

layout code and the clip path code.

  • css/BasicShapeFunctions.h:
  • css/CSSBasicShapes.cpp:

(WebCore::buildCircleString): Update to use appendLiteral, and remove

call to reserveCapacity - if we find that it's actually slow when
doing performance tests, we can hopefully do something smarter and
less ugly than that.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused

the radius keywords not to work properly.

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape): Convert new circle to a layout shape.

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShape::canBlend): Ignore circles with values that

cannot be interpolated.

(WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle

radius keywords to a float value.

(WebCore::BasicShapeCircle::path):
(WebCore::BasicShapeCircle::blend):

  • rendering/style/BasicShapes.h:

(WebCore::BasicShapeCenterCoordinate::canBlend):
(WebCore::BasicShapeRadius::canBlend):

LayoutTests:

Add a few tests for the new circle syntax. The old tests in
LayoutTests/csswg will be removed when the old syntax is removed.

Also update existing shape-inside, animation, and clip-path tests to
test the new syntax.

  • animations/resources/animation-test-helpers.js:

(parseBasicShape):

  • LayoutTests/animations/resources/animation-test-helpers.js:
  • LayoutTests/css3/masking/clip-path-animation-expected.txt:
  • LayoutTests/css3/masking/clip-path-animation.html:
  • LayoutTests/css3/masking/clip-path-circle-filter.html:
  • LayoutTests/css3/masking/clip-path-circle-overflow-hidden.html:
  • LayoutTests/css3/masking/clip-path-circle-overflow.html:
  • LayoutTests/css3/masking/clip-path-circle-relative-overflow.html:
  • LayoutTests/css3/masking/clip-path-circle.html:
  • LayoutTests/css3/masking/clip-path-restore.html:
  • LayoutTests/fast/shapes/parsing/parsing-shape-inside-expected.txt:
  • LayoutTests/fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • LayoutTests/fast/shapes/parsing/parsing-test-utils.js:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-animation-expected.txt:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-animation.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-calc-crash.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-circle-padding.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-circle.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-dynamic-nested.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-empty-expected.html:
  • LayoutTests/fast/shapes/shape-inside/shape-inside-empty.html:
  • fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
  • fast/shapes/shape-outside-floats/shape-outside-animation.html:
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-004-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-005-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html: Added.
3:55 PM Changeset in webkit [159978] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Instead of a large 'if' block, each failure class should write it's own result in test_result_writer.py
https://bugs.webkit.org/show_bug.cgi?id=124714

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-02
Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:

(write_test_result):

  • Scripts/webkitpy/layout_tests/models/test_failures.py:

(TestFailure.write_failure):
(FailureText):
(FailureText.write_failure):
(FailureAudio):
(FailureAudio.write_failure):
(FailureCrash.write_failure):
(FailureMissingResult):
(FailureTextMismatch):
(FailureMissingImageHash.write_failure):
(FailureMissingImage.write_failure):
(FailureImageHashMismatch.write_failure):
(FailureReftestMismatch.write_failure):
(FailureReftestMismatchDidNotOccur.write_failure):
(FailureMissingAudio):
(FailureAudioMismatch):

3:52 PM Changeset in webkit [159977] by commit-queue@webkit.org
  • 5 edits in trunk/Tools

Remove the stderr_write attribute from StyleProcessorConfiguration
https://bugs.webkit.org/show_bug.cgi?id=124703

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-02
Reviewed by Ryosuke Niwa.

Remove the stderr_write attribute from this class in checker and
replace its use with calls to a logging module logger. We Should
use logging module instead of writing to stderr directly.

  • Scripts/webkitpy/style/checker.py: Change stderr_write attribute to logging module logger.

(check_webkit_style_configuration):
(CheckerDispatcher.dispatch): Remove FIXME comment.
(StyleProcessorConfiguration):
(StyleProcessorConfiguration.init):
(StyleProcessorConfiguration.write_style_error):

  • Scripts/webkitpy/style/checker_unittest.py: Update test to the modification.

There is an "ERROR" prefix in log messiges from now.
(StyleProcessorConfigurationTest):
(StyleProcessorConfigurationTest._style_checker_configuration):
(StyleProcessorConfigurationTest.test_init):
(StyleProcessorConfigurationTest.test_write_style_error_emacs):
(StyleProcessorConfigurationTest.test_write_style_error_vs7):
(StyleProcessor_EndToEndTest.with):
(StyleProcessor_EndToEndTest.test_init):
(StyleProcessor_EndToEndTest.test_process):
(StyleProcessor_CodeCoverageTest.setUp):

  • Scripts/webkitpy/style/error_handlers.py: Remove stderr_write usage and replace with logging module logger.

(DefaultStyleErrorHandler.call):

  • Scripts/webkitpy/style/error_handlers_unittest.py: Update test to the modification.

There is an "ERROR" prefix in log messiges from now.
(DefaultStyleErrorHandlerTest):
(DefaultStyleErrorHandlerTest.setUp):
(DefaultStyleErrorHandlerTest._mock_increment_error_count):
(DefaultStyleErrorHandlerTest._style_checker_configuration):
(DefaultStyleErrorHandlerTest._check_initialized):
(DefaultStyleErrorHandlerTest.test_non_reportable_error):
(DefaultStyleErrorHandlerTest.test_max_reports_per_category):
(DefaultStyleErrorHandlerTest.test_line_numbers):

3:48 PM Changeset in webkit [159976] by andersca@apple.com
  • 3 edits
    9 adds in trunk/Source/WebKit2

Split bundle page clients out into separate headers
https://bugs.webkit.org/show_bug.cgi?id=125115

Reviewed by Andreas Kling.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h: Added.
  • WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h: Added.
3:43 PM Changeset in webkit [159975] by ap@apple.com
  • 3 edits
    2 adds in trunk

WebCrypto HMAC doesn't check key algorithm's hash
https://bugs.webkit.org/show_bug.cgi?id=125114

Reviewed by Anders Carlsson.

Source/WebCore:

Test: crypto/subtle/hmac-check-algorithm.html

  • crypto/algorithms/CryptoAlgorithmHMAC.cpp:

(WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it.

LayoutTests:

  • crypto/subtle/hmac-check-algorithm-expected.txt: Added.
  • crypto/subtle/hmac-check-algorithm.html: Added.
3:30 PM Changeset in webkit [159974] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
https://bugs.webkit.org/show_bug.cgi?id=125110

Reviewed by Darin Adler.

It’s possible to have a null m_originatingProgressFrame when the heartbeat timer fires.

On the surface this seems impossible because the only time m_originatingProgressFrame is cleared
out the heartbeat timer is also stopped.

But there’s likely still a race condition in multi-threaded environments.

There’s no harm in null-checking m_originatingProgressFrame before accessing its loader.

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::progressHeartbeatTimerFired):

3:17 PM Changeset in webkit [159973] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Baseline JIT calls to CommonSlowPaths shouldn't restore the last result
https://bugs.webkit.org/show_bug.cgi?id=125107

Reviewed by Mark Hahnenberg.

Just killing dead code.

  • jit/JITArithmetic.cpp:

(JSC::JIT::emitSlow_op_negate):
(JSC::JIT::emitSlow_op_lshift):
(JSC::JIT::emitSlow_op_rshift):
(JSC::JIT::emitSlow_op_urshift):
(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_inc):
(JSC::JIT::emitSlow_op_dec):
(JSC::JIT::emitSlow_op_mod):
(JSC::JIT::emit_op_mod):
(JSC::JIT::compileBinaryArithOpSlowCase):
(JSC::JIT::emitSlow_op_div):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emitSlow_op_negate):
(JSC::JIT::emitSlow_op_lshift):
(JSC::JIT::emitRightShiftSlowCase):
(JSC::JIT::emitSlow_op_bitand):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitSlow_op_inc):
(JSC::JIT::emitSlow_op_dec):
(JSC::JIT::emitSlow_op_add):
(JSC::JIT::emitSlow_op_sub):
(JSC::JIT::emitSlow_op_mul):
(JSC::JIT::emitSlow_op_div):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_strcat):
(JSC::JIT::emitSlow_op_get_callee):
(JSC::JIT::emitSlow_op_create_this):
(JSC::JIT::emitSlow_op_to_this):
(JSC::JIT::emitSlow_op_to_primitive):
(JSC::JIT::emitSlow_op_not):
(JSC::JIT::emitSlow_op_bitxor):
(JSC::JIT::emitSlow_op_bitor):
(JSC::JIT::emitSlow_op_stricteq):
(JSC::JIT::emitSlow_op_nstricteq):
(JSC::JIT::emitSlow_op_to_number):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_to_primitive):
(JSC::JIT::emitSlow_op_not):
(JSC::JIT::emitSlow_op_stricteq):
(JSC::JIT::emitSlow_op_nstricteq):
(JSC::JIT::emitSlow_op_to_number):
(JSC::JIT::emitSlow_op_get_callee):
(JSC::JIT::emitSlow_op_create_this):
(JSC::JIT::emitSlow_op_to_this):

3:03 PM Changeset in webkit [159972] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Improve readability of 'generate_message_handler' function
https://bugs.webkit.org/show_bug.cgi?id=125085

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-02
Reviewed by Sam Weinig.

  • Scripts/webkit2/messages.py:

(generate_message_handler):

2:59 PM Changeset in webkit [159971] by commit-queue@webkit.org
  • 2 edits
    7 adds in trunk/Source/Platform

Nix Upstream: Updating Platform files
https://bugs.webkit.org/show_bug.cgi?id=124982

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-12-02
Reviewed by Benjamin Poulain.

Adding new Platform files that are missing in the trunk.

  • PlatformNix.cmake:
  • nix/public/AudioDestinationConsumer.h: Added.

(Nix::AudioDestinationConsumer::~AudioDestinationConsumer):

  • nix/public/MediaConstraints.h: Added.
  • nix/public/MediaStream.h: Added.
  • nix/public/MediaStreamAudioSource.h: Added.
  • nix/public/MediaStreamCenter.h: Added.
  • nix/public/MediaStreamSource.h: Added.
  • nix/public/PrivatePtr.h: Added.
2:56 PM Changeset in webkit [159970] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Add more CachedPage null checks
https://bugs.webkit.org/show_bug.cgi?id=125106

Reviewed by Sam Weinig.

Only some functions in PageCache.cpp null-check the CachedPages in HistoryItems.

Every part that manipulates the CachedPage should.

  • history/PageCache.cpp:

(WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
(WebCore::PageCache::markPagesForFullStyleRecalc):
(WebCore::PageCache::markPagesForDeviceScaleChanged):
(WebCore::PageCache::markPagesForCaptionPreferencesChanged):

2:53 PM Changeset in webkit [159969] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk/Tools

Add JavaScript style checker and teach checker.py about .js files
https://bugs.webkit.org/show_bug.cgi?id=125049

Patch by Brian J. Burg <Brian Burg> on 2013-12-02
Reviewed by Joseph Pecoraro.

Add a JavaScript file type, extension, and checker (JSChecker).
Use TextChecker for JavaScript tests, libraries, website resources,
etc. and use JSChecker for files within WebInspectorUI/UserInterface.

Amended tests for TextChecker to reflect the rule above.

  • Scripts/webkitpy/style/checker.py:

(_all_categories): Add categories defined by JSChecker.
(FileType): Add file type for JS and re-number the enum.
(CheckerDispatcher._file_type): Detect .js files as JavaScript.
(CheckerDispatcher._create_checker):
Create a JSChecker or TextChecker depending on the file's path.

  • Scripts/webkitpy/style/checker_unittest.py:

(CheckerDispatcherDispatchTest.assert_checker_js): Added.
(CheckerDispatcherDispatchTest.test_js_paths): Added.
(CheckerDispatcherDispatchTest.test_text_paths): Add new test paths
that end in .js but should be checked with TextChecker.

  • Scripts/webkitpy/style/checkers/js.py: Added.

(JSChecker):
(JSChecker.init):
(JSChecker.check):

  • Scripts/webkitpy/style/checkers/js_unittest.py: Added.

(JSTestCase):
(JSTestCase.assertNoError):
(JSTestCase.assertNoError.error_for_test):
(JSTestCase.assertError):
(JSTestCase.assertError.error_for_test):
(JSTestCase.test_no_error):
(JSTestCase.test_error):

2:48 PM Changeset in webkit [159968] by zoltan@webkit.org
  • 19 edits in trunk

[CSS Shapes] Support inset parsing
https://bugs.webkit.org/show_bug.cgi?id=124903

Reviewed by David Hyatt.

Source/WebCore:

In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined
by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes).
Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside.

No new tests, I updated existing tests to cover the changes.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape): Add support for inset.
(WebCore::basicShapeForValue): Add support for inset.

  • css/CSSBasicShapes.cpp:

(WebCore::buildInsetString): Create inset css string.
(WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string.
(WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles.
(WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved.
(WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references.

  • css/CSSBasicShapes.h: Add inset class.

(WebCore::CSSBasicShapeInset::create):
(WebCore::CSSBasicShapeInset::top):
(WebCore::CSSBasicShapeInset::right):
(WebCore::CSSBasicShapeInset::bottom):
(WebCore::CSSBasicShapeInset::left):
(WebCore::CSSBasicShapeInset::topLeftRadius):
(WebCore::CSSBasicShapeInset::topRightRadius):
(WebCore::CSSBasicShapeInset::bottomRightRadius):
(WebCore::CSSBasicShapeInset::bottomLeftRadius):
(WebCore::CSSBasicShapeInset::setTop):
(WebCore::CSSBasicShapeInset::setRight):
(WebCore::CSSBasicShapeInset::setBottom):
(WebCore::CSSBasicShapeInset::setLeft):
(WebCore::CSSBasicShapeInset::setTopLeftRadius):
(WebCore::CSSBasicShapeInset::setTopRightRadius):
(WebCore::CSSBasicShapeInset::setBottomRightRadius):
(WebCore::CSSBasicShapeInset::setBottomLeftRadius):
(WebCore::CSSBasicShapeInset::CSSBasicShapeInset):

  • css/CSSParser.cpp:

(WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius.
(WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners
(WebCore::CSSParser::parseBasicShapeInset): Parse inset.
(WebCore::CSSParser::parseBasicShape): Add call to parse inset.

  • css/CSSParser.h:
  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize.
(WebCore::CSSPrimitiveValue::init): Initialize LengthSize.

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize.

  • css/CSSValuePool.h:

(WebCore::CSSValuePool::createValue): Add support for LengthSize.

  • platform/LengthSize.h:

(WebCore::LengthSize::blend): Add blend for LengthSize.

  • rendering/shapes/ShapeInsideInfo.cpp:

(WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now.

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShapeInset::path): Calculate path for an inset.
(WebCore::BasicShapeInset::blend): Blend two insets.

  • rendering/style/BasicShapes.h: Add higher level inset.

(WebCore::BasicShapeInset::create):
(WebCore::BasicShapeInset::top):
(WebCore::BasicShapeInset::right):
(WebCore::BasicShapeInset::bottom):
(WebCore::BasicShapeInset::left):
(WebCore::BasicShapeInset::topLeftRadius):
(WebCore::BasicShapeInset::topRightRadius):
(WebCore::BasicShapeInset::bottomRightRadius):
(WebCore::BasicShapeInset::bottomLeftRadius):
(WebCore::BasicShapeInset::setTop):
(WebCore::BasicShapeInset::setRight):
(WebCore::BasicShapeInset::setBottom):
(WebCore::BasicShapeInset::setLeft):
(WebCore::BasicShapeInset::setTopLeftRadius):
(WebCore::BasicShapeInset::setTopRightRadius):
(WebCore::BasicShapeInset::setBottomRightRadius):
(WebCore::BasicShapeInset::setBottomLeftRadius):
(WebCore::BasicShapeInset::BasicShapeInset):

LayoutTests:

  • fast/shapes/parsing/parsing-shape-inside-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths.html:
  • fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • fast/shapes/parsing/parsing-test-utils.js:
2:42 PM Changeset in webkit [159967] by timothy_horton@apple.com
  • 7 edits in trunk/Source/WebKit2

Remote Layer Tree: Support cloning layers
https://bugs.webkit.org/show_bug.cgi?id=124874
<rdar://problem/15349468>

Reviewed by Simon Fraser.

We use PlatformCALayer::clone for CSS reflections, so implement it.

Also, since many reflections testcases also use masks,
working on this revealed that masks weren't working, because
we weren't flushing mask layers.

  • Shared/mac/RemoteLayerTreePropertyApplier.mm:

(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
Rename maskLayer->maskLayerID since it's a LayerID.

  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::commit):
Don't try to look up the layer if it's null.

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
Keep track of all properties that have ever been changed on a layer.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::create):
(PlatformCALayerRemote::PlatformCALayerRemote):
(PlatformCALayerRemote::clone):
Copy all of the layer properties from the original to the clone,
and mark all properties that have ever been modified as
needing to be flushed to the UI process.

(PlatformCALayerRemote::recursiveBuildTransaction):
Flush our mask layer, if we have one.

(PlatformCALayerRemote::setMask):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:

Store the mask layer we're given. Our owning GraphicsLayer will
hold on to it for us.

2:36 PM Changeset in webkit [159966] by ap@apple.com
  • 9 edits
    7 adds in trunk

Support WebCrypto AES-KW
https://bugs.webkit.org/show_bug.cgi?id=125105

Reviewed by Sam Weinig.

Source/WebCore:

Tests: crypto/subtle/aes-kw-key-manipulation.html

crypto/subtle/aes-kw-wrap-unwrap-aes.html

  • WebCore.xcodeproj/project.pbxproj: Added new files.
  • crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW.

It's not standardized yet, but there appears to be a consensus that it will be specified.

  • bindings/js/JSCryptoAlgorithmDictionary.cpp:

(WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
Added AES-KW cases everywhere.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
(WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
Support importing/exporting AES-KW keys in JWK.

  • bindings/js/JSSubtleCryptoCustom.cpp:

(WebCore::JSSubtleCrypto::importKey):
(WebCore::JSSubtleCrypto::exportKey):
(WebCore::JSSubtleCrypto::wrapKey):
(WebCore::JSSubtleCrypto::unwrapKey):
Added some accidentally forgotten std::moves.

  • crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added.
  • crypto/algorithms/CryptoAlgorithmAES_KW.h: Added.
  • crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added.
  • crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW

as valid algorithm for AES keys.

  • crypto/mac/CryptoAlgorithmRegistryMac.cpp:

(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW.

LayoutTests:

  • crypto/subtle/aes-kw-key-manipulation-expected.txt: Added.
  • crypto/subtle/aes-kw-key-manipulation.html: Added.
  • crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt: Added.
  • crypto/subtle/aes-kw-wrap-unwrap-aes.html: Added.
2:35 PM Changeset in webkit [159965] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

WKPageLoaderClient should be versioned
https://bugs.webkit.org/show_bug.cgi?id=125104

Reviewed by Sam Weinig.

Add multiple versions of the WKPageLoaderClient struct. In a subsequent patch,
WKPageLoaderClient and kWKPageLoaderClientCurrentVersion will be deprecated. Instead,
users of the API are supposed to explicitly choose a version and a versioned struct.

  • Shared/APIClient.h:

Add a new API::Client class with a new ClientTraits template that uses std::tuple for versions.

  • Shared/APIClientTraits.cpp:
  • Shared/APIClientTraits.h:

Remove WKPageLoaderClient interface sizes.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageLoaderClient):
Add an explicit cast to WKPageLoaderClientBase. In an upcoming patch, WKPageSetPageLoaderClient
will be changed to take a WKPageLoaderClientBase instead.

  • UIProcess/API/C/WKPageLoaderClient.h:

Add new versions.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(setUpPageLoaderClient):
Use an explicit version.

  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didStartProvisionalLoadForFrame):
(WebKit::WebLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
(WebKit::WebLoaderClient::didCommitLoadForFrame):
(WebKit::WebLoaderClient::didFinishDocumentLoadForFrame):
(WebKit::WebLoaderClient::didFinishLoadForFrame):
(WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
(WebKit::WebLoaderClient::didSameDocumentNavigationForFrame):
(WebKit::WebLoaderClient::didReceiveTitleForFrame):
(WebKit::WebLoaderClient::didFirstLayoutForFrame):
(WebKit::WebLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
(WebKit::WebLoaderClient::didLayout):
(WebKit::WebLoaderClient::didRemoveFrameFromHierarchy):
(WebKit::WebLoaderClient::didDisplayInsecureContentForFrame):
(WebKit::WebLoaderClient::didRunInsecureContentForFrame):
(WebKit::WebLoaderClient::didDetectXSSForFrame):
(WebKit::WebLoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
(WebKit::WebLoaderClient::didReceiveAuthenticationChallengeInFrame):
(WebKit::WebLoaderClient::didStartProgress):
(WebKit::WebLoaderClient::didChangeProgress):
(WebKit::WebLoaderClient::didFinishProgress):
(WebKit::WebLoaderClient::processDidBecomeUnresponsive):
(WebKit::WebLoaderClient::interactionOccurredWhileProcessUnresponsive):
(WebKit::WebLoaderClient::processDidBecomeResponsive):
(WebKit::WebLoaderClient::processDidCrash):
(WebKit::WebLoaderClient::didChangeBackForwardList):
(WebKit::WebLoaderClient::shouldGoToBackForwardListItem):
(WebKit::WebLoaderClient::willGoToBackForwardListItem):
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
Go through client.base everywhere.

  • UIProcess/WebLoaderClient.h:

Add API::ClientTraits specialization. Change WebLoaderClient to derive from API::Client<WKPageLoaderClientBase>.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeLoaderClient):
This now takes a WKPageLoaderClientBase*.

2:33 PM Changeset in webkit [159964] by mhahnenberg@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests always copies the VM
https://bugs.webkit.org/show_bug.cgi?id=125092

Reviewed by Filip Pizlo.

This can be slow, especially with full debug builds. It should just symlink the VM into the
bundle by default and do a full copy only when asked.

  • Scripts/run-jsc-stress-tests:
2:31 PM Changeset in webkit [159963] by Beth Dakin
  • 2 edits in trunk/Source/WebKit

Attempted build fix. I think this is no longer needed.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
2:25 PM Changeset in webkit [159962] by bshafiei@apple.com
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

2:21 PM Changeset in webkit [159961] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Port run-jsc-stress-tests
https://bugs.webkit.org/show_bug.cgi?id=124801

Reviewed by Filip Pizlo.

  • Scripts/run-jsc-stress-tests: Gracefully handle lack of sysctl

command on Windows so that stress tests can run.

2:06 PM WebInspectorCodingStyleGuide edited by timothy@apple.com
(diff)
1:53 PM Changeset in webkit [159960] by Beth Dakin
  • 11 edits in trunk/Source

Add a setting to opt into a mode where the background extends and fixed elements
don't move on rubber-band
https://bugs.webkit.org/show_bug.cgi?id=124745

Reviewed by Tim Horton.

Source/WebCore:

New setting backgroundShouldExtendBeyondPage() will cause the tile cache to have a
margin, and it will also cause fixed elements and backgrounds to stick to the
viewport on scroll instead of sticking to the document.

  • WebCore.exp.in:
  • page/FrameView.cpp:

(WebCore::FrameView::scrollBehaviorForFixedElements):

  • page/Settings.in:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):

Source/WebKit:

Keep Windows happy.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit2:

Add SPI to enable the new setting.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetBackgroundShouldExtendBeyondPage):
(WKPreferencesGetBackgroundShouldExtendBeyondPage):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

1:44 PM Changeset in webkit [159959] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.60.8

New tag.

1:41 PM Changeset in webkit [159958] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[MediaStream] Use iterator-based loops instead of index-based loops
https://bugs.webkit.org/show_bug.cgi?id=125021

Patch by Roger Zanoni <rogerzanoni@gmail.com> on 2013-12-02
Reviewed by Eric Carlson.

Also, changing iterator variable names from iter to it and
initializing an 'end' variable in each loop instead of evaluating
'collection.end()' multiple times.

No new tests, covered by existing ones.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::cloneMediaStreamTrackVector):
(WebCore::MediaStream::haveTrackWithSource):
(WebCore::MediaStream::getTrackById):
(WebCore::MediaStream::trackDidEnd):
(WebCore::MediaStream::scheduledEventTimerFired):

1:15 PM Changeset in webkit [159957] by mhahnenberg@apple.com
  • 2 edits in trunk/Tools

Build fix after r159955

  • Scripts/run-jsc-stress-tests:
12:56 PM Changeset in webkit [159956] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

Remote Layer Tree: Hook up setLayerTreeStateIsFrozen
https://bugs.webkit.org/show_bug.cgi?id=124872

Reviewed by Brent Fulgham.

setLayerTreeStateIsFrozen is the mechanism used to ensure that
layer property changes (including new backing store) aren't committed
while e.g. the page is reconfigured for printing.

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

(WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
(WebKit::RemoteLayerTreeContext::flushLayers):
(WebKit::RemoteLayerTreeContext::setIsFlushingSuspended):

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

(WebKit::RemoteLayerTreeDrawingArea::setLayerTreeStateIsFrozen):

12:55 PM Changeset in webkit [159955] by mhahnenberg@apple.com
  • 3 edits
    1 delete in trunk/Tools

run-jsc-stress-tests should be able to package its tests and move them places
https://bugs.webkit.org/show_bug.cgi?id=124549

Reviewed by Filip Pizlo.

  • Scripts/jsc-stress-test-helpers/check-mozilla-failure: Removed. Was just a ruby reimplementation

of grep -i -q

  • Scripts/run-javascriptcore-tests: Pass through the --tarball flag.
  • Scripts/run-jsc-stress-tests: Changed to create a bundle of tests inside the results directory.

We now also copy whatever VM was specified, along with its associated framework, into this directory.
All of the generated scripts now are completely relative within the results directory. This allows
run-jsc-stress-tests to execute a bundle from anywhere. Also added a --tarball flag which creates a
tarball of the generated results directory. Also refactored several portions of the script into
separate functions to make it easier to run them conditionally depending on which mode we're running in.

12:52 PM Changeset in webkit [159954] by commit-queue@webkit.org
  • 13 edits in trunk

[css shapes] Parse new ellipse shape syntax
https://bugs.webkit.org/show_bug.cgi?id=124620

Patch by Rob Buis <rob.buis@samsung.com> on 2013-12-02
Reviewed by Dirk Schulze.

Source/WebCore:

Implement parsing of the new ellipse shape syntax. This closely follows the patch
for the new circle syntax (https://bugs.webkit.org/show_bug.cgi?id=124618), with
some refactoring of functionality shared by both.

Updated existing parsing tests to cover this.

  • css/BasicShapeFunctions.cpp:

(WebCore::BasicShapeRadiusToCSSValue):
(WebCore::valueForBasicShape):
(WebCore::CSSValueToBasicShapeRadius):
(WebCore::basicShapeForValue):

  • css/CSSBasicShapes.cpp:

(WebCore::buildEllipseString):
(WebCore::CSSBasicShapeEllipse::cssText):
(WebCore::CSSBasicShapeEllipse::equals):
(WebCore::buildDeprecatedEllipseString):
(WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
(WebCore::CSSDeprecatedBasicShapeEllipse::equals):

  • css/CSSBasicShapes.h:

(WebCore::CSSDeprecatedBasicShapeEllipse::create):
(WebCore::CSSDeprecatedBasicShapeEllipse::centerX):
(WebCore::CSSDeprecatedBasicShapeEllipse::centerY):
(WebCore::CSSDeprecatedBasicShapeEllipse::radiusX):
(WebCore::CSSDeprecatedBasicShapeEllipse::radiusY):
(WebCore::CSSDeprecatedBasicShapeEllipse::setCenterX):
(WebCore::CSSDeprecatedBasicShapeEllipse::setCenterY):
(WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusX):
(WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusY):
(WebCore::CSSDeprecatedBasicShapeEllipse::CSSDeprecatedBasicShapeEllipse):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBasicShapeEllipse):
(WebCore::CSSParser::parseDeprecatedBasicShapeEllipse):
(WebCore::CSSParser::parseBasicShape):

  • css/CSSParser.h:
  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):

  • rendering/style/BasicShapes.cpp:

(WebCore::DeprecatedBasicShapeEllipse::path):
(WebCore::DeprecatedBasicShapeEllipse::blend):
(WebCore::BasicShapeEllipse::path):
(WebCore::BasicShapeEllipse::blend):

  • rendering/style/BasicShapes.h:

(WebCore::BasicShapeEllipse::centerX):
(WebCore::BasicShapeEllipse::centerY):
(WebCore::BasicShapeEllipse::radiusX):
(WebCore::BasicShapeEllipse::radiusY):
(WebCore::BasicShapeEllipse::setCenterX):
(WebCore::BasicShapeEllipse::setCenterY):
(WebCore::BasicShapeEllipse::setRadiusX):
(WebCore::BasicShapeEllipse::setRadiusY):
(WebCore::BasicShapeEllipse::BasicShapeEllipse):
(WebCore::DeprecatedBasicShapeEllipse::create):
(WebCore::DeprecatedBasicShapeEllipse::DeprecatedBasicShapeEllipse):

LayoutTests:

Test that the new ellipse syntax is properly parsed.

  • fast/shapes/parsing/parsing-shape-inside-expected.txt:
  • fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • fast/shapes/parsing/parsing-test-utils.js:
12:44 PM Changeset in webkit [159953] by Brent Fulgham
  • 2 edits in branches/safari-537.60-branch/Source/WebKit

Merge r159941.

2013-12-02 Brent Fulgham <Brent Fulgham>

[Win] WebKit Project doesn't copy resource bundle
https://bugs.webkit.org/show_bug.cgi?id=125078

Reviewed by Jer Noble.

  • WebKit.vcxproj/WebKit/WebKitPostBuild.cmd:
12:40 PM Changeset in webkit [159952] by Antoine Quint
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: popover can overlap target frame
https://bugs.webkit.org/show_bug.cgi?id=125069

Reviewed by Joseph Pecoraro.

Fix a regression introduced in http://trac.webkit.org/changeset/159286. We should only
offset the frame of the popover in the y-axis if the target edge is on the x-axis, and
vice versa. We also remove the needsToDrawBackground check since it incorrectly disregarded
the anchor point. We now always draw the background which is a lot safer and guarantees
we'll always draw an adequate frame and anchor point.

  • UserInterface/Popover.js:

(WebInspector.Popover.prototype._update):
(WebInspector.Popover.prototype._bestMetricsForEdge):

12:28 PM Changeset in webkit [159951] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Add support for WebCrypto RSA-OAEP
https://bugs.webkit.org/show_bug.cgi?id=125084

Build fix.

  • crypto/CommonCryptoUtilities.h:
  • crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
  • crypto/mac/CryptoKeyRSAMac.cpp:
12:11 PM Changeset in webkit [159950] by commit-queue@webkit.org
  • 5 edits in trunk

Use GenericEventQueue in TrackListBase and reduce code duplication with scheduleTrackEvent()
https://bugs.webkit.org/show_bug.cgi?id=124811

Patch by Brendan Long <b.long@cablelabs.com> on 2013-12-02
Reviewed by Eric Carlson.

Source/WebCore:

No new tests because this is just refactoring.

  • html/track/TrackListBase.cpp:

(TrackListBase::TrackListBase): Replace event code with a GenericEventQueue.
(TrackListBase::scheduleTrackEvent): Factor out duplicate code in schedule{Add,Remove}TrackEvent functions.
(TrackListBase::scheduleAddTrackEvent): Same.
(TrackListBase::scheduleRemoveTrackEvent): Same.
(TrackListBase::scheduleChangeEvent): Use GenericEventQueue.

  • html/track/TrackListBase.h: Replace event code with GenericEventQueue.

LayoutTests:

  • platform/mac/TestExpectations: Unskip onremovetrack test which was fixed a long time ago.
12:05 PM Changeset in webkit [159949] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Add support for WebCrypto RSA-OAEP
https://bugs.webkit.org/show_bug.cgi?id=125084

Build fix.

  • WebCore.xcodeproj/project.pbxproj: Fix an automatic merge failure by re-adding

CryptoAlgorithmRsaOaepParams.h.

12:00 PM Changeset in webkit [159948] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remote Layer Tree: Disable direct image compositing
https://bugs.webkit.org/show_bug.cgi?id=124875
<rdar://problem/15446024>

Reviewed by Simon Fraser.

  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:

Image-as-layer-contents is not implemented for the remote layer tree.

11:58 AM Changeset in webkit [159947] by vjaquez@igalia.com
  • 2 edits in trunk/Source/WebCore

[Gstreamer] update webkitvideosink metadata
https://bugs.webkit.org/show_bug.cgi?id=125082

Reviewed by Philippe Normand.

No new tests, no behavior changes.

  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:

(webkit_video_sink_class_init):

11:55 AM Changeset in webkit [159946] by Antoine Quint
  • 7 edits in trunk/Source/WebInspectorUI

Web Inspector: add a method to add padding around a WebInspector.Rect
https://bugs.webkit.org/show_bug.cgi?id=125072

Reviewed by Joseph Pecoraro.

Add a new WebInspector.Rect.prototype.pad() method which does not alter
the rectangle it's called and returns a new rect much like .inset(). I've
checked all call sites and there was no reuse of the rectangle that was
padded so this patch won't have any side effects.

  • UserInterface/Breakpoint.js:

(WebInspector.Breakpoint.prototype._showEditBreakpointPopover):

  • UserInterface/CSSStyleDeclarationTextEditor.js:
  • UserInterface/Geometry.js:

(WebInspector.Rect.prototype.pad):

  • UserInterface/LayerTreeSidebarPanel.js:

(WebInspector.LayerTreeSidebarPanel.prototype._updatePopoverForSelectedNode):

  • UserInterface/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype._showPopover):

  • UserInterface/TimelineDataGrid.js:

(WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode):

11:55 AM Changeset in webkit [159945] by vjaquez@igalia.com
  • 4 edits in trunk/Source/WebCore

Simplify MediaPlayerPrivateGStreamerBase::createVideoSink()
https://bugs.webkit.org/show_bug.cgi?id=125077

Remove the method's unused parameter.
Remove the GStreamer 0.10.22 run-time validation, since we are using
GStreamer 1.0 officially.
Remove the creation of a spurious Bin for the video sink, since
either the fpssink or the webkitsink are valid sink elements.
Change fpsink to a GRefPtr.

Now, createVideoSink() returns a simple pointer to the created sink
element.

Reviewed by Philippe Normand.

No new tests, no behavior changes.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
(WebCore::MediaPlayerPrivateGStreamerBase::decodedFrameCount):
(WebCore::MediaPlayerPrivateGStreamerBase::droppedFrameCount):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
11:50 AM Changeset in webkit [159944] by ap@apple.com
  • 11 edits
    12 adds in trunk

Add support for WebCrypto RSA-OAEP
https://bugs.webkit.org/show_bug.cgi?id=125084

Reviewed by Sam Weinig.

Source/WebCore:

Tests: crypto/subtle/rsa-oaep-key-manipulation.html

crypto/subtle/rsa-oaep-plaintext-length.html
crypto/subtle/rsa-oaep-wrap-unwrap-aes.html

  • WebCore.xcodeproj/project.pbxproj: Added new files.
  • bindings/js/JSCryptoAlgorithmDictionary.cpp:

(WebCore::createRsaOaepParams):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
Added RSA-OAEP parameters.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
(WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
(WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
Support RSA-OAEP in JWK. It is more limited than general WebCrypto, as JWK only
allows SHA-1 as hash.

  • crypto/CommonCryptoUtilities.cpp: Added. (WebCore::getCommonCryptoDigestAlgorithm):
  • crypto/CommonCryptoUtilities.h: Added.

Extracted some shared code and forward declarations for CommonCrypto.

  • crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::Class):
  • crypto/parameters/CryptoAlgorithmRsaOaepParams.h: Added.

Added RsaOaepParams.

  • crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: Added.
  • crypto/algorithms/CryptoAlgorithmRSA_OAEP.h: Added.
  • crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp: Added.
  • crypto/mac/CryptoAlgorithmHMACMac.cpp:

(WebCore::getCommonCryptoHMACAlgorithm):
(WebCore::CryptoAlgorithmHMAC::platformSign):
(WebCore::CryptoAlgorithmHMAC::platformVerify):

  • crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
  • crypto/mac/CryptoKeyMac.cpp:
  • crypto/mac/CryptoKeyRSAMac.cpp:

Use CommonCryptoUtilities.

  • crypto/mac/CryptoAlgorithmRegistryMac.cpp:

(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register RSA-OAEP.

LayoutTests:

  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt: Added.
  • crypto/subtle/rsa-oaep-key-manipulation.html: Added.
  • crypto/subtle/rsa-oaep-plaintext-length-expected.txt: Added.
  • crypto/subtle/rsa-oaep-plaintext-length.html: Added.
  • crypto/subtle/rsa-oaep-wrap-unwrap-aes-expected.txt: Added.
  • crypto/subtle/rsa-oaep-wrap-unwrap-aes.html: Added.
11:49 AM Changeset in webkit [159943] by fpizlo@apple.com
  • 18 edits
    4 adds in trunk

Stores to local captured variables should be intercepted
https://bugs.webkit.org/show_bug.cgi?id=124883

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

Previously, in bytecode, you could assign to a captured variable just as you would
assign to any other kind of variable. This complicates closure variable constant
inference because we don't have any place where we can intercept stores to captured
variables in the LLInt.

This patch institutes a policy that only certain instructions can store to captured
variables. If you interpret those instructions and you are required to notifyWrite()
then you need to check if the relevant variable is captured. Those instructions are
tracked in CodeBlock.cpp's VerifyCapturedDef. The main one is simply op_captured_mov.
In the future, we'll probably modify those instructions to have a pointer directly to
the VariableWatchpointSet; but for now we just introduce the captured instructions as
placeholders.

In order to validate that the placeholders are inserted correctly, this patch improves
the CodeBlock validation to be able to inspect every def in the bytecode. To do that,
this patch refactors the liveness analysis' use/def calculator to be reusable; it now
takes a functor for each use or def.

In the process of refactoring the liveness analysis, I noticed that op_enter was
claiming to def all callee registers. That's wrong; it only defs the non-temporary
variables. Making that change revealed preexisting bugs in the liveness analysis, since
now the validator would pick up cases where the bytecode claimed to use a temporary and
the def calculator never noticed the definition (or the converse - where the bytecode
was actually not using a temporary but the liveness analysis thought that it was a
use). This patch fixes a few of those bugs.

  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeLivenessAnalysis.cpp:

(JSC::stepOverInstruction):

  • bytecode/BytecodeUseDef.h: Added.

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::isCaptured):
(JSC::CodeBlock::validate):

  • bytecode/CodeBlock.h:
  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::resolveCallee):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::isCaptured):
(JSC::BytecodeGenerator::local):
(JSC::BytecodeGenerator::constLocal):
(JSC::BytecodeGenerator::emitNewFunction):
(JSC::BytecodeGenerator::emitLazyNewFunction):
(JSC::BytecodeGenerator::emitNewFunctionInternal):

  • bytecompiler/BytecodeGenerator.h:

(JSC::Local::Local):
(JSC::Local::isCaptured):
(JSC::Local::captureMode):
(JSC::BytecodeGenerator::captureMode):
(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::pushOptimisedForIn):

  • bytecompiler/NodesCodegen.cpp:

(JSC::PostfixNode::emitResolve):
(JSC::PrefixNode::emitResolve):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::ConstDeclNode::emitCodeSingle):
(JSC::ForInNode::emitBytecode):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/SymbolTable.h:

(JSC::SymbolTable::isCaptured):

LayoutTests:

Reviewed by Mark Hahnenberg.

  • js/regress/captured-assignments-expected.txt: Added.
  • js/regress/captured-assignments.html: Added.
  • js/regress/script-tests/captured-assignments.js: Added.
11:09 AM Changeset in webkit [159942] by fpizlo@apple.com
  • 29 edits in trunk/Source/JavaScriptCore

Instead of watchpointing activation allocation, we should watchpoint entry into functions that have captured variables
https://bugs.webkit.org/show_bug.cgi?id=125052

Reviewed by Mark Hahnenberg.

This makes us watch function entry rather than activation creation. We only incur the
costs of doing so for functions that have captured variables, and only on the first two
entries into the function. This means that closure variable constant inference will
naturally work even for local uses of the captured variable, like:

(function(){

var blah = 42;
... stuff
function () { ... blah /* we can fold this to 42 */ }
... blah
we can also fold this to 42.

})();


Previously, only the nested use would have been foldable.

  • bytecode/BytecodeLivenessAnalysis.cpp:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/Watchpoint.h:

(JSC::WatchpointSet::touch):
(JSC::InlineWatchpointSet::touch):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasSymbolTable):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_touch_entry):

  • llint/LowLevelInterpreter.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
  • runtime/JSActivation.h:

(JSC::JSActivation::create):

  • runtime/SymbolTable.cpp:

(JSC::SymbolTable::SymbolTable):

  • runtime/SymbolTable.h:
10:47 AM Changeset in webkit [159941] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] WebKit Project doesn't copy resource bundle
https://bugs.webkit.org/show_bug.cgi?id=125078

Reviewed by Jer Noble.

  • WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Correct post-build step

to copy WebKit.resources to build target.

10:23 AM Changeset in webkit [159940] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Get rid of some unused parameters in LLIntSlowPaths.cpp macros
https://bugs.webkit.org/show_bug.cgi?id=125075

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-02
Reviewed by Michael Saboff.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::handleHostCall): added UNUSED_PARAM(pc).
(JSC::LLInt::setUpCall): Doesn't pass 'pc' to LLINT_CALL macros.
(JSC::LLInt::LLINT_SLOW_PATH_DECL): Ditto.

9:49 AM Changeset in webkit [159939] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[GTK] Fails to build with freetype 2.5.1
https://bugs.webkit.org/show_bug.cgi?id=125074

Patch by Andres Gomez <Andres Gomez> on 2013-12-02
Reviewed by Carlos Garcia Campos.

FreeType specifies a canonical way of including their own
headers. Now, we are following this recommendation so the
compilation won't be broken again due to an upgrade in FeeType's
including paths.

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:
  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:
  • platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
9:28 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
9:20 AM Changeset in webkit [159938] by lauro.neto@openbossa.org
  • 5 edits
    1 move
    1 add
    1 delete in trunk/LayoutTests

[MediaStream] Update layout tests to newer spec.
https://bugs.webkit.org/show_bug.cgi?id=124985

Reviewed by Eric Carlson.

  • TestExpectations:
  • fast/mediastream/MediaStream-onended-expected.txt: Removed.
  • fast/mediastream/MediaStreamTrack-onended-expected.txt: Added.
  • fast/mediastream/MediaStreamTrack-onended.html: Renamed from LayoutTests/fast/mediastream/MediaStream-onended.html.
  • fast/mediastream/RTCPeerConnection-ice-expected.txt:
  • fast/mediastream/RTCPeerConnection-state-expected.txt:
  • fast/mediastream/RTCSessionDescription-expected.txt:
9:14 AM Changeset in webkit [159937] by commit-queue@webkit.org
  • 7 edits in trunk/Source/JavaScriptCore

Remove stdio.h from JSC files.
https://bugs.webkit.org/show_bug.cgi?id=125066

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-02
Reviewed by Michael Saboff.

Remove stdio.h, when it is not necessary to be included.

  • bytecode/CodeBlock.cpp:
  • bytecode/StructureSet.h:
  • profiler/LegacyProfiler.cpp:
  • profiler/Profile.cpp:
  • profiler/ProfileNode.cpp:
  • yarr/YarrInterpreter.cpp:
8:51 AM Changeset in webkit [159936] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Unused include files when building without JIT.
https://bugs.webkit.org/show_bug.cgi?id=125062

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-02
Reviewed by Michael Saboff.

We should organize the includes, and guard JIT methods
in ValueRecovery.

  • bytecode/ValueRecovery.cpp: Guard include files.
  • bytecode/ValueRecovery.h: Guard JIT methods.
8:41 AM Changeset in webkit [159935] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[MIPS] Small stack frame causes regressions.
https://bugs.webkit.org/show_bug.cgi?id=124945

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-12-02
Reviewed by Michael Saboff.

Fix stack space for LLInt on MIPS.

  • llint/LowLevelInterpreter32_64.asm:
8:38 AM Changeset in webkit [159934] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

jsc: implement a native readFile function
https://bugs.webkit.org/show_bug.cgi?id=125059

Patch by Brian J. Burg <Brian Burg> on 2013-12-02
Reviewed by Filip Pizlo.

This adds a native readFile() function to jsc, used to slurp
an entire file into a JavaScript string.

  • jsc.cpp:

(GlobalObject::finishCreation): Add readFile() to globals.
(functionReadFile): Added.

7:36 AM Changeset in webkit [159933] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

JSC does not build if OPCODE_STATS is enabled.
https://bugs.webkit.org/show_bug.cgi?id=125011

Patch by László Langó <lango@inf.u-szeged.hu> on 2013-12-02
Reviewed by Filip Pizlo.

  • bytecode/Opcode.cpp:
6:19 AM Changeset in webkit [159932] by Chris Fleizach
  • 4 edits
    2 adds in trunk

AX: Crash at WebCore::commonTreeScope
https://bugs.webkit.org/show_bug.cgi?id=125042

Reviewed by Mario Sanchez Prada.

Source/WebCore:

When an AX text marker that references a node in a detached document is used to create a text marker range, a crash occurs
because the method to determine commonTreeScopes does not account for when there are no common tree scopes.

Test: platform/mac/accessibility/ordered-textmarker-crash.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):

  • dom/TreeScope.cpp:

(WebCore::commonTreeScope):

LayoutTests:

  • platform/mac/accessibility/ordered-textmarker-crash-expected.txt: Added.
  • platform/mac/accessibility/ordered-textmarker-crash.html: Added.
5:58 AM Changeset in webkit [159931] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Fix a crash in the webaudio source provider when the audio track is going away.
https://bugs.webkit.org/show_bug.cgi?id=124975

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-02
Reviewed by Philippe Normand.

Merged https://chromium.googlesource.com/chromium/blink/+/b21838b32bf11b1a972dfc449ddde71115490c23

Before this patch, it was hitting a use-after-free crash when the audio
track in the media stream is going away and the webaudio mediastreamsourcenode
is still running.

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createMediaStreamSource): Passing audio track
pointer to MediaStreamAudioSourceNode constructor.

  • Modules/webaudio/MediaStreamAudioSourceNode.cpp:

(WebCore::MediaStreamAudioSourceNode::create):
(WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):

  • Modules/webaudio/MediaStreamAudioSourceNode.h: Added

MediaStreamTrack class variable and change the constructor to receive
it as parameter.

3:34 AM Changeset in webkit [159930] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for the

fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html reftest.

3:30 AM Changeset in webkit [159929] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed, EFL rebaseline since r159915.

Error messages are changed. So, test results need to be updated.

  • platform/efl/fast/forms/validation-message-appearance-expected.txt:
  • platform/efl/fast/forms/validationMessage-expected.txt:
3:27 AM Changeset in webkit [159928] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] Remove unneeded autoconf macros
https://bugs.webkit.org/show_bug.cgi?id=125044

Compilers that do not support const/inline/volatile and
systems with pre-C89-headers are anyway not supported.

Patch by Adrian Bunk <bunk@stusta.de> on 2013-12-02
Reviewed by Gustavo Noronha Silva.

  • Source/autotools/CheckSystemAndBasicDependencies.m4:
2:47 AM Changeset in webkit [159927] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit/gtk

Merge r159926 - [GTK] GTK2 paint code path does not render AC layers
https://bugs.webkit.org/show_bug.cgi?id=124967

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-12-02
Reviewed by Carlos Garcia Campos.

  • webkit/webkitwebview.cpp:

(webkit_web_view_expose_event): also paint AC layers when painting the widget,
when AC is on.

2:45 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:44 AM Changeset in webkit [159926] by Gustavo Noronha Silva
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] GTK2 paint code path does not render AC layers
https://bugs.webkit.org/show_bug.cgi?id=124967

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-12-02
Reviewed by Carlos Garcia Campos.

  • webkit/webkitwebview.cpp:

(webkit_web_view_expose_event): also paint AC layers when painting the widget,
when AC is on.

2:40 AM Changeset in webkit [159925] by commit-queue@webkit.org
  • 12 edits
    1 add in trunk

[ATK] Support active state for listbox elements.
https://bugs.webkit.org/show_bug.cgi?id=125009

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2013-12-02
Reviewed by Chris Fleizach.

Source/WebCore:

Added support for ATK_STATE_ACTIVE for listbox elements.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(setAtkStateSetFromCoreObject):

Tools:

Supplement WebKitTestRunner and DumpRenderTree to support isSelectedOptionActive.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::isSelectedOptionActive):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::isSelectedOptionActive):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::isSelectedOptionActive):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::isSelectedOptionActive):

LayoutTests:

Establish expectations for the test (all PASS).

  • accessibility/multiselect-list-reports-active-option-expected.txt: Added.
  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
2:24 AM Changeset in webkit [159924] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed GTK gardening.

  • Scripts/run-gtk-tests:

(TestRunner): Skip two unit tests that are causing the subsequent test to crash.

2:12 AM Changeset in webkit [159923] by Seokju Kwon
  • 3 edits in trunk/Source/WebCore

Web Inspector: Remove unused functions from InspectorAgent
https://bugs.webkit.org/show_bug.cgi?id=125061

Reviewed by Antoine Quint.

Get rid of unused functions, redundant inclusion and forward declaration.

No new tests, no behavior changes.

  • inspector/InspectorAgent.cpp:
  • inspector/InspectorAgent.h:
2:04 AM Changeset in webkit [159922] by Carlos Garcia Campos
  • 46 edits in releases/WebKitGTK/webkit-2.2

Merge r155201 - REGRESSION(149636, merged in 153145): ToThis conversion doesn't work in the DFG
https://bugs.webkit.org/show_bug.cgi?id=120781

Reviewed by Mark Hahnenberg.

Roll this back in with a build fix.

  • Use some method table hacks to detect if the CheckStructure optimization is valid for to_this.
  • Introduce a FinalObjectUse and use it for ToThis->Identity conversion.

This looks like it might be perf-neutral on the major benchmarks, but it
introduces some horrible performance cliffs. For example if you add methods to
the Array prototype, you'll get horrible performance cliffs. As in virtual calls
to C++ every time you call a JS function even if it's inlined.
LongSpider/3d-cube appears to hit this.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::emitPutTransitionStub):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::SafeToExecuteEdge::operator()):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculateFinalObject):
(JSC::DFG::SpeculativeJIT::speculate):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGUseKind.cpp:

(WTF::printInternal):

  • dfg/DFGUseKind.h:

(JSC::DFG::typeFilterFor):
(JSC::DFG::isCell):

2:00 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:58 AM Changeset in webkit [159921] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix build warning in EventHandler.cpp
https://bugs.webkit.org/show_bug.cgi?id=125010

Patch by Tibor Meszaros <mtibor@inf.u-szeged.hu> on 2013-12-02
Reviewed by Csaba Osztrogonác.

  • page/EventHandler.cpp:

(WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):

1:38 AM WebKitGTK/2.2.x edited by Andres Gomez
(diff)
1:28 AM Changeset in webkit [159920] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit/gtk

Merge r159843 - REGRESSION(r154658): webkit_web_view_get_view_source_mode always returns false
https://bugs.webkit.org/show_bug.cgi?id=124954

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-11-28
Reviewed by Carlos Garcia Campos.

  • tests/testwebview.c: new test to ensure setting and getting source mode work as intended.
  • webkit/webkitwebview.cpp:

(webkit_web_view_get_view_source_mode): actually return the value we query from WebCore.

1:26 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:24 AM Changeset in webkit [159919] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r159615 - [GTK] Cannot scroll in option menu when it larger than the screen
https://bugs.webkit.org/show_bug.cgi?id=124671

Reviewed by Martin Robinson.

The problem is that the popup menu is not resized to fit in the
screen, so it doesn't scroll and some of the items are offscreen
so they can't be selected either. GTK+ automatically resizes the
popup menus to fit in the work area, but only when the menu is
already positioned.

  • platform/gtk/GtkPopupMenu.cpp:

(WebCore::GtkPopupMenu::popUp): Schedule a resize of the popup
menu right after showing it once it has a position.

1:21 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:20 AM Changeset in webkit [159918] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r159811 - [GTK] Programs/WebKit2APITests/TestWebKitSettings unit test is failing
https://bugs.webkit.org/show_bug.cgi?id=124924

Reviewed by Carlos Garcia Campos.

'Chrome'/'Chromium' substrings were removed from the user agent string in r159572, meaning the unit
test shouldn't check for those two substrings anymore. Instead, 'Safari' (as until now) and 'AppleWebKit'
substrings should be checked for.

  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettingsUserAgent):

1:18 AM Changeset in webkit [159917] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/LayoutTests

Merge r159686 - Unreviewed GTK gardening.
Adding failure expectations for tests that regressed with r159572.

  • platform/gtk/TestExpectations:
1:17 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:15 AM Changeset in webkit [159916] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r159572 - [GTK] Remove Chromium as user agent and claim to be Safari in OS X
https://bugs.webkit.org/show_bug.cgi?id=124229

Reviewed by Martin Robinson.

http://www.duolingo.com/ doesn't get render correctly because it uses
Chrome/Chromium specific variables, added after it was forked. Because
of this, it is necessary to remove the Chrome/Chromium identification
in the user agent. Also, from now on, by default, The GTK+ port will
claim to be Safari in OS X to avoid loading wrong resources.

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::standardUserAgent):

1:08 AM Changeset in webkit [159915] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

HTML5 required attribute validation messages implemented.
https://bugs.webkit.org/show_bug.cgi?id=125003

Patch by Attila Dusnoki <adusnoki@inf.u-szeged.hu> on 2013-12-02
Reviewed by Gyuyoung Kim.

  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore::validationMessagePatternMismatchText):
(WebCore::validationMessageValueMissingText):
(WebCore::validationMessageValueMissingForCheckboxText):
(WebCore::validationMessageValueMissingForFileText):
(WebCore::validationMessageValueMissingForMultipleFileText):
(WebCore::validationMessageValueMissingForRadioText):
(WebCore::validationMessageValueMissingForSelectText):
(WebCore::validationMessageBadInputForNumberText):

12:59 AM Changeset in webkit [159914] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/JavaScriptCore

Merge r158687 - Fix register allocation inside control flow in GetByVal String
https://bugs.webkit.org/show_bug.cgi?id=123816

Reviewed by Geoffrey Garen.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

12:58 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:56 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:26 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
Note: See TracTimeline for information about the timeline view.