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

Timeline



Apr 8, 2018:

11:31 PM Changeset in webkit [230389] by zandobersek@gmail.com
  • 5 edits in trunk

Non-Cocoa ports use default directory for ServiceWorker data during testing
https://bugs.webkit.org/show_bug.cgi?id=183784

Reviewed by Youenn Fablet.

Source/WebKit:

Add API to WKWebsiteDataStore that enables setting and retrieving the
service worker registration directory for a given data store object.
This enables setting the temporary directory for testing purposes in
WebKitTestRunner.

  • UIProcess/API/C/WKWebsiteDataStoreRef.cpp:

(WKWebsiteDataStoreCopyServiceWorkerRegistrationDirectory):
(WKWebsiteDataStoreSetServiceWorkerRegistrationDirectory):

  • UIProcess/API/C/WKWebsiteDataStoreRef.h:

Tools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::platformAdjustContext): Set the service worker registration
directory through the new WKWebsiteDataStore API for non-Cocoa ports.

9:55 PM Changeset in webkit [230388] by Yusuke Suzuki
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, build fix for Windows by suppressing padding warning for JIT
https://bugs.webkit.org/show_bug.cgi?id=183508

  • jit/JIT.h:
9:41 PM Changeset in webkit [230387] by Yusuke Suzuki
  • 2 edits in trunk/JSTests

Unreviewed, remove incorrect entry in test262.yaml
https://bugs.webkit.org/show_bug.cgi?id=184266

  • test262.yaml:
8:59 PM Changeset in webkit [230386] by Alan Bujtas
  • 5 edits
    1 add in trunk/Tools

[LayoutReloaded] Adjust line with inline container's margin border and padding
https://bugs.webkit.org/show_bug.cgi?id=184409

Reviewed by Antti Koivisto.

  • LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:

(InlineFormattingContext.prototype.layout):
(InlineFormattingContext.prototype._handleFloatingBox):
(InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
(InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):

  • LayoutReloaded/FormattingContext/InlineFormatting/Line.js:

(Line.prototype.shrink):
(Line.prototype.adjustWithOffset):
(Line.prototype.moveContentHorizontally):
(Line.prototype.addTextLineBox):
(Line):
(Line.prototype.addFloatingBox): Deleted.

  • LayoutReloaded/misc/LayoutReloadedWebKit.patch:
  • LayoutReloaded/test/index.html:
  • LayoutReloaded/test/inline-with-padding-border-margin-offsets.html: Added.
7:58 PM Changeset in webkit [230385] by Fujii Hironori
  • 9 edits in trunk

[CMake] WebKit should link to WebCore as a PRIVATE library if WebCore is a static library
https://bugs.webkit.org/show_bug.cgi?id=184127

Reviewed by Konstantin Tokarev.

.:

Building TestWebKitLib on Windows causes a linkage error of
multiply defined symbols because TestWebKitLib links to
both WebCore and WebKit. TestWebKitLib explicitly links only with
WebKit, But, WebCore is propagated because WebKit links WebCore as
public.

  • Source/cmake/OptionsGTK.cmake (ADD_WHOLE_ARCHIVE_TO_LIBRARIES):

Do not wrap PRIVATE and PUBLIC keywords with -Wl,--whole-archive.

Source/WebCore:

No new tests (No behaviour changes).

  • CMakeLists.txt: Added a interface library WebCoreHeaderInterface.

Source/WebKit:

  • CMakeLists.txt: Link with WebCore as private,

WebCoreHeaderInterface as public to WebKit if WebCore is a static
library.

  • CMakeLists.txt:
  • PlatformGTK.cmake: Added PRIVATE keyword for WebKit_LIBRARIES.
  • PlatformWPE.cmake: Ditto.
  • PlatformWin.cmake: Ditto.
7:10 PM Changeset in webkit [230384] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

Updated Czech translation
https://bugs.webkit.org/show_bug.cgi?id=184403

Patch by Daniel Rusek <mail@asciiwolf.com> on 2018-04-08
Rubber-stamped by Michael Catanzaro.

  • cs.po:
6:48 PM Changeset in webkit [230383] by aestes@apple.com
  • 6 edits
    1 copy
    1 add in trunk/Source/WebKit

[iOS] WKContentView and WKLegacyPDFView should share application state tracking logic
https://bugs.webkit.org/show_bug.cgi?id=184402

Reviewed by Dan Bernstein.

WKContentView and WKLegacyPDFView have nearly identical logic for tracking
application foreground state. Let's share it so we can more easily create new
content views with proper application state tracking.

  • UIProcess/ios/WKApplicationStateTrackingView.h: Added.
  • UIProcess/ios/WKApplicationStateTrackingView.mm: Added.

(-[WKApplicationStateTrackingView initWithFrame:webView:]):
(-[WKApplicationStateTrackingView willMoveToWindow:]):
(-[WKApplicationStateTrackingView didMoveToWindow]):
(-[WKApplicationStateTrackingView _applicationDidEnterBackground]):
(-[WKApplicationStateTrackingView _applicationDidCreateWindowContext]):
(-[WKApplicationStateTrackingView _applicationDidFinishSnapshottingAfterEnteringBackground]):
(-[WKApplicationStateTrackingView _applicationWillEnterForeground]):
(-[WKApplicationStateTrackingView isBackground]):

Moved common logic from WKContentView and WKLegacyPDFView into
WKApplicationStateTrackingView.

  • UIProcess/ios/WKContentView.h:
  • UIProcess/ios/WKContentView.mm:

(-[WKContentView initWithFrame:processPool:configuration:webView:]):
(-[WKContentView willMoveToWindow:]):
(-[WKContentView _applicationDidCreateWindowContext]):
(-[WKContentView didMoveToWindow]): Deleted.
(-[WKContentView isBackground]): Deleted.
(-[WKContentView _applicationDidEnterBackground]): Deleted.
(-[WKContentView _applicationDidFinishSnapshottingAfterEnteringBackground]): Deleted.
(-[WKContentView _applicationWillEnterForeground]): Deleted.

Made WKContentView a subclass of WKApplicationStateTrackingView.

  • UIProcess/ios/WKLegacyPDFView.h:
  • UIProcess/ios/WKLegacyPDFView.mm:

(-[WKLegacyPDFView web_initWithFrame:webView:]):
(-[WKLegacyPDFView web_isBackground]):
(-[WKLegacyPDFView _applicationWillEnterForeground]):
(-[WKLegacyPDFView willMoveToWindow:]): Deleted.
(-[WKLegacyPDFView didMoveToWindow]): Deleted.
(-[WKLegacyPDFView _applicationDidEnterBackground]): Deleted.
(-[WKLegacyPDFView _applicationDidCreateWindowContext]): Deleted.
(-[WKLegacyPDFView _applicationDidFinishSnapshottingAfterEnteringBackground]): Deleted.

Made WKLegacyPDFView a subclass of WKApplicationStateTrackingView.

  • WebKit.xcodeproj/project.pbxproj:
3:52 PM Changeset in webkit [230382] by commit-queue@webkit.org
  • 7999 edits
    310 copies
    1088 adds
    38 deletes in trunk/JSTests

[JSC] Update Test262 to April 6 version
https://bugs.webkit.org/show_bug.cgi?id=184266

Patch by Valerie Young <valerie@bocoup.com> on 2018-04-08
Rubber stamped by Yusuke Suzuki.

2:38 PM Changeset in webkit [230381] by Yusuke Suzuki
  • 3 edits in trunk/Source/WTF

Unreviewed, use alignas(void*)
https://bugs.webkit.org/show_bug.cgi?id=183508

Very large alignment is not supported in MSVC.

  • wtf/Gigacage.cpp:
  • wtf/Gigacage.h:
2:30 PM Changeset in webkit [230380] by Yusuke Suzuki
  • 13 edits in trunk/Source

Use alignas instead of compiler-specific attributes
https://bugs.webkit.org/show_bug.cgi?id=183508

Reviewed by Mark Lam.

Source/bmalloc:

Use alignas for g_gigacageBasePtr. We also add reinterpret_cast to fix
compile errors in ARMv7 and MIPS JSCOnly ports.

  • bmalloc/Gigacage.cpp:
  • bmalloc/Gigacage.h:

(Gigacage::basePtrs):

Source/JavaScriptCore:

Use C++11 alignas specifier. It is portable compared to compiler-specific aligned attributes.

  • heap/RegisterState.h:
  • jit/JIT.h:

(JSC::JIT::compile): Deleted.
(JSC::JIT::compileGetByVal): Deleted.
(JSC::JIT::compileGetByValWithCachedId): Deleted.
(JSC::JIT::compilePutByVal): Deleted.
(JSC::JIT::compileDirectPutByVal): Deleted.
(JSC::JIT::compilePutByValWithCachedId): Deleted.
(JSC::JIT::compileHasIndexedProperty): Deleted.
(JSC::JIT::appendCall): Deleted.
(JSC::JIT::appendCallWithSlowPathReturnType): Deleted.
(JSC::JIT::exceptionCheck): Deleted.
(JSC::JIT::exceptionCheckWithCallFrameRollback): Deleted.
(JSC::JIT::emitInt32Load): Deleted.
(JSC::JIT::emitInt32GetByVal): Deleted.
(JSC::JIT::emitInt32PutByVal): Deleted.
(JSC::JIT::emitDoublePutByVal): Deleted.
(JSC::JIT::emitContiguousPutByVal): Deleted.
(JSC::JIT::emitStoreCell): Deleted.
(JSC::JIT::getSlowCase): Deleted.
(JSC::JIT::linkSlowCase): Deleted.
(JSC::JIT::linkDummySlowCase): Deleted.
(JSC::JIT::linkAllSlowCases): Deleted.
(JSC::JIT::callOperation): Deleted.
(JSC::JIT::callOperationWithProfile): Deleted.
(JSC::JIT::callOperationWithResult): Deleted.
(JSC::JIT::callOperationNoExceptionCheck): Deleted.
(JSC::JIT::callOperationWithCallFrameRollbackOnException): Deleted.
(JSC::JIT::emitEnterOptimizationCheck): Deleted.
(JSC::JIT::sampleCodeBlock): Deleted.
(JSC::JIT::canBeOptimized): Deleted.
(JSC::JIT::canBeOptimizedOrInlined): Deleted.
(JSC::JIT::shouldEmitProfiling): Deleted.

  • runtime/VM.h:

Source/WebCore:

Use alignas instead of aligned.

  • platform/graphics/cpu/arm/filters/FELightingNEON.cpp:
  • platform/graphics/cpu/arm/filters/FELightingNEON.h:

(WebCore::FELighting::platformApplyNeon):

Source/WTF:

Use alignas for g_gigacageBasePtr. We also add reinterpret_cast to fix
compile errors in ARMv7 and MIPS JSCOnly ports.

  • wtf/Gigacage.cpp:
  • wtf/Gigacage.h:

(Gigacage::basePtrs):

12:59 PM Changeset in webkit [230379] by Yusuke Suzuki
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, follow-up patch for DFG 32bit
https://bugs.webkit.org/show_bug.cgi?id=183970

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):

11:07 AM Changeset in webkit [230378] by mitz@apple.com
  • 3 edits
    1 add in trunk/Source/WebKit

[Cocoa] Keep library validation disabled for WebContent.Development
https://bugs.webkit.org/show_bug.cgi?id=184393

Reviewed by Anders Carlsson.

  • Configurations/WebContent.Development.entitlements: Added. Includes the com.apple.security.cs.disable-library-validation entitlement set to true.
  • Configurations/WebContentService.Development.xcconfig: Set CODE_SIGN_ENTITLEMENTS to the above.
  • WebKit.xcodeproj/project.pbxproj: Added reference to new file.
9:47 AM Changeset in webkit [230377] by Yusuke Suzuki
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Fix incorrect assertion for VM's regexp buffer lock
https://bugs.webkit.org/show_bug.cgi?id=184398

Reviewed by Mark Lam.

isLocked check before taking a lock is incorrect.

  • runtime/VM.cpp:

(JSC::VM::acquireRegExpPatternContexBuffer):

9:21 AM Changeset in webkit [230376] by Yusuke Suzuki
  • 60 edits
    4 adds in trunk

[JSC] Introduce op_get_by_id_direct
https://bugs.webkit.org/show_bug.cgi?id=183970

Reviewed by Filip Pizlo.

JSTests:

  • stress/generator-prototype-copy.js: Added.

(gen):
(catch):
Adopted JF's tests.

  • stress/generator-type-check.js: Added.

(shouldThrow):
(foo2):
(i.shouldThrow):

  • stress/get-by-id-direct-getter.js: Added.

(shouldBe):
(shouldThrow):
(obj.get hello):
(builtin.createBuiltin):
(obj2.get length):

  • stress/get-by-id-direct.js: Added.

(shouldBe):
(shouldThrow):
(builtin.createBuiltin):

  • test262.yaml:

We fixed long-standing spec compatibility issue.
As a result, this patch makes several test262 tests passed!

Source/JavaScriptCore:

This patch introduces op_get_by_id_direct bytecode. This is super similar to op_get_by_id.
But it just performs GetOwnProperty operation instead of Get. We support this
in all the tiers, so using this opcode does not lead to inefficiency.

Main purpose of this op_get_by_id_direct is using it for private properties. We are using
properties indexed with private symbols to implement ECMAScript internal fields. Before this
patch, we just use get and put operations. However, it is not the correct semantics: accessing
to the internal fields should not traverse prototype chain, which is specified in the spec.
We use op_get_by_id_direct to access to properties which are used internal fields, so that
prototype chains are not traversed.

To emit op_get_by_id_direct, we introduce a new bytecode intrinsic @getByIdDirectPrivate().
When you write @getByIdDirectPrivate(object, "name"), the bytecode generator emits the
bytecode op_get_by_id_direct, object, @name.

  • builtins/ArrayIteratorPrototype.js:

(next):
(globalPrivate.arrayIteratorValueNext):
(globalPrivate.arrayIteratorKeyNext):
(globalPrivate.arrayIteratorKeyValueNext):

  • builtins/AsyncFromSyncIteratorPrototype.js:
  • builtins/AsyncFunctionPrototype.js:

(globalPrivate.asyncFunctionResume):

  • builtins/AsyncGeneratorPrototype.js:

(globalPrivate.asyncGeneratorQueueIsEmpty):
(globalPrivate.asyncGeneratorQueueEnqueue):
(globalPrivate.asyncGeneratorQueueDequeue):
(globalPrivate.asyncGeneratorDequeue):
(globalPrivate.isExecutionState):
(globalPrivate.isSuspendYieldState):
(globalPrivate.asyncGeneratorReject):
(globalPrivate.asyncGeneratorResolve):
(globalPrivate.doAsyncGeneratorBodyCall):
(globalPrivate.asyncGeneratorEnqueue):

  • builtins/GeneratorPrototype.js:

(globalPrivate.generatorResume):
(next):
(return):
(throw):

  • builtins/MapIteratorPrototype.js:

(next):

  • builtins/PromiseOperations.js:

(globalPrivate.isPromise):
(globalPrivate.rejectPromise):
(globalPrivate.fulfillPromise):

  • builtins/PromisePrototype.js:

(then):

  • builtins/SetIteratorPrototype.js:

(next):

  • builtins/StringIteratorPrototype.js:

(next):

  • builtins/TypedArrayConstructor.js:

(of):
(from):

  • bytecode/BytecodeDumper.cpp:

(JSC::BytecodeDumper<Block>::dumpBytecode):

  • bytecode/BytecodeIntrinsicRegistry.h:
  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::finalizeLLIntInlineCaches):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeFor):

  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::reset):

  • bytecode/StructureStubInfo.h:

(JSC::appropriateOptimizingGetByIdFunction):
(JSC::appropriateGenericGetByIdFunction):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitDirectGetById):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::BytecodeIntrinsicNode::emit_intrinsic_getByIdDirect):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_getByIdDirectPrivate):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToGetByOffset):
(JSC::DFG::Node::convertToMultiGetByOffset):
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasHeapPrediction):

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetById):
(JSC::DFG::SpeculativeJIT::compileGetByIdFlush):
(JSC::DFG::SpeculativeJIT::compileTryGetById): Deleted.

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

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileGetById):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByIdWithThis):
(JSC::FTL::DFG::LowerDFGToB3::getById):

  • jit/JIT.cpp:

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

  • jit/JIT.h:
  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_id_direct):
(JSC::JIT::emitSlow_op_get_by_id_direct):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_id_direct):
(JSC::JIT::emitSlow_op_get_by_id_direct):

  • jit/Repatch.cpp:

(JSC::appropriateOptimizingGetByIdFunction):
(JSC::appropriateGetByIdFunction):
(JSC::tryCacheGetByID):
(JSC::repatchGetByID):
(JSC::appropriateGenericGetByIdFunction): Deleted.

  • jit/Repatch.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSCJSValue.h:
  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::getOwnPropertySlot const):

  • runtime/JSObject.h:
  • runtime/JSObjectInlines.h:

(JSC::JSObject::getOwnPropertySlotInline):

8:55 AM Changeset in webkit [230375] by Michael Catanzaro
  • 6 edits in trunk

[WPE][GTK] Remove applicationDirectoryPath() and sharedResourcePath()
https://bugs.webkit.org/show_bug.cgi?id=184381

Reviewed by Carlos Garcia Campos.

.:

  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsWPE.cmake:

Source/WebCore:

These are unused.

  • platform/FileSystem.h:
  • platform/glib/FileSystemGlib.cpp:

(WebCore::FileSystem::applicationDirectoryPath): Deleted.
(WebCore::FileSystem::sharedResourcesPath): Deleted.

Apr 7, 2018:

11:43 PM Changeset in webkit [230374] by dbates@webkit.org
  • 10 edits in trunk/Source/WebCore

Have WorkerScriptLoader::loadAsynchronously() take a FetchOptions
https://bugs.webkit.org/show_bug.cgi?id=184385

Reviewed by Youenn Fablet.

Currently we pass various FetchOptions to WorkerScriptLoader::loadAsynchronously()
so that it can build up a ThreadableLoaderOptions structure to pass to the loader.
Each time we want to set another FetchOptions option we need to add a new parameter.
Instead we should have WorkerScriptLoader::loadAsynchronously() take a FetchOptions.
This will make it straightforward for a caller to set new loader options as needed.
In particular, this will make it straightforward to support setting the request's
destination flag (i.e. FetchOptions::destination) to support blocking scripts with
a non-JavaScript MIME type in a subsequent commit.

No functionality changed. So, no new tests.

  • loader/ResourceLoaderOptions.h:

(WebCore::ResourceLoaderOptions::ResourceLoaderOptions): Modified to take a FetchOptions
by value so as to support both move and copy semantics.

  • loader/ThreadableLoader.cpp:

(WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Added helper constructor
that takes a FetchOptions.

  • loader/ThreadableLoader.h:
  • workers/Worker.cpp:

(WebCore::Worker::create): Instantiate and pass a FetchOptions to the loader for the mode,
cache policy, and redirect policy.

  • workers/WorkerScriptLoader.cpp:

(WebCore::WorkerScriptLoader::loadAsynchronously): Modified to take a FetchOptions and
instantiate a ThreadableLoaderOptions from it.

  • workers/WorkerScriptLoader.h:
  • workers/WorkerScriptLoaderClient.h:

(WebCore::WorkerScriptLoaderClient::isServiceWorkerClient const): Deleted. This function
is no longer needed because the Service Worker client now passes the service worker mode
directly to the loader.

  • workers/service/ServiceWorkerJob.cpp:

(WebCore::ServiceWorkerJob::fetchScriptWithContext): Instantiate and pass a FetchOptions
to the loader.

  • workers/service/ServiceWorkerJob.h:
10:27 PM Changeset in webkit [230373] by Alan Bujtas
  • 9 edits
    5 adds in trunk/Tools

[LayoutReloaded] Add support for InlineContainer
https://bugs.webkit.org/show_bug.cgi?id=184394

Reviewed by Antti Koivisto.

  • LayoutReloaded/FormattingContext/FormattingContext.js:

(FormattingContext.prototype._addToLayoutQueue):

  • LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:

(InlineFormattingContext.prototype.layout):
(InlineFormattingContext.prototype._handleInlineContent):
(InlineFormattingContext.prototype._handleFloatingBox):
(InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
(InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
(InlineFormattingContext.prototype._placeInFlowPositionedChildren):
(InlineFormattingContext.prototype._placeOutOfFlowDescendants):
(InlineFormattingContext.prototype._createNewLine):
(InlineFormattingContext.prototype._handleContent): Deleted.

  • LayoutReloaded/LayoutState.js:

(LayoutState.prototype._createFormattingState):

  • LayoutReloaded/LayoutTree/Box.js:

(Layout.Box.prototype.isContainer):
(Layout.Box.prototype.isInlineContainer):
(Layout.Box.prototype.isInlineBox):

  • LayoutReloaded/LayoutTree/Container.js:

(Layout.Container.prototype.isContainer): Deleted.

  • LayoutReloaded/LayoutTree/InlineContainer.js: Added.

(Layout.InlineContainer):

  • LayoutReloaded/TreeBuilder.js:

(TreeBuilder.prototype._createAndAttachBox):

  • LayoutReloaded/Utils.js:

(Utils._dumpBox):
(Utils.precisionRound):
(Utils):

  • LayoutReloaded/test/index.html:
  • LayoutReloaded/test/inline-content-simple2.html: Added.
  • LayoutReloaded/test/inline-floating1.html: Added.
  • LayoutReloaded/test/inline-formatting-context-floats1.html: Added.
  • LayoutReloaded/test/inline-formatting-context-floats2.html: Added.
6:33 PM Changeset in webkit [230372] by Nikita Vasilyev
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Errors glyph doesn't fully change to blue when active
https://bugs.webkit.org/show_bug.cgi?id=184389

Reviewed by Joseph Pecoraro.

The dot of the exclamation mark was always black.

  • UserInterface/Images/Errors.svg:
1:31 PM Changeset in webkit [230371] by Yusuke Suzuki
  • 2 edits in trunk/JSTests

Unreviewed, annotate test with @skip if $memoryLimited
https://bugs.webkit.org/show_bug.cgi?id=183894

  • stress/json-stringified-overflow.js:
11:22 AM Changeset in webkit [230370] by youenn@apple.com
  • 3 edits in trunk/LayoutTests

Response headers should be filtered when sent from NetworkProcess to WebProcess
https://bugs.webkit.org/show_bug.cgi?id=184310

Unreviewed.
Fixed bogus const declaration.
Improved sub test titles.

  • http/wpt/service-workers/header-filtering.https-expected.txt:
  • http/wpt/service-workers/header-filtering.https.html:
11:15 AM Changeset in webkit [230369] by Yusuke Suzuki
  • 25 edits in trunk/Source/JavaScriptCore

[JSC] Remove several asXXX functions
https://bugs.webkit.org/show_bug.cgi?id=184355

Reviewed by JF Bastien.

Remove asActivation, asInternalFunction, and asGetterSetter.
Use jsCast<> / jsDynamicCast<> consistently.

  • runtime/ArrayConstructor.cpp:

(JSC::constructArrayWithSizeQuirk):

  • runtime/AsyncFunctionConstructor.cpp:

(JSC::callAsyncFunctionConstructor):
(JSC::constructAsyncFunctionConstructor):

  • runtime/AsyncGeneratorFunctionConstructor.cpp:

(JSC::callAsyncGeneratorFunctionConstructor):
(JSC::constructAsyncGeneratorFunctionConstructor):

  • runtime/BooleanConstructor.cpp:

(JSC::constructWithBooleanConstructor):

  • runtime/DateConstructor.cpp:

(JSC::constructWithDateConstructor):

  • runtime/ErrorConstructor.cpp:

(JSC::Interpreter::constructWithErrorConstructor):
(JSC::Interpreter::callErrorConstructor):

  • runtime/FunctionConstructor.cpp:

(JSC::constructWithFunctionConstructor):
(JSC::callFunctionConstructor):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/GeneratorFunctionConstructor.cpp:

(JSC::callGeneratorFunctionConstructor):
(JSC::constructGeneratorFunctionConstructor):

  • runtime/GetterSetter.h:

(JSC::asGetterSetter): Deleted.

  • runtime/InternalFunction.h:

(JSC::asInternalFunction): Deleted.

  • runtime/JSGenericTypedArrayViewConstructorInlines.h:

(JSC::constructGenericTypedArrayView):

  • runtime/JSLexicalEnvironment.h:

(JSC::asActivation): Deleted.

  • runtime/JSObject.cpp:

(JSC::validateAndApplyPropertyDescriptor):

  • runtime/MapConstructor.cpp:

(JSC::constructMap):

  • runtime/PropertyDescriptor.cpp:

(JSC::PropertyDescriptor::setDescriptor):

  • runtime/RegExpConstructor.cpp:

(JSC::constructWithRegExpConstructor):
(JSC::callRegExpConstructor):

  • runtime/SetConstructor.cpp:

(JSC::constructSet):

  • runtime/StringConstructor.cpp:

(JSC::constructWithStringConstructor):

  • runtime/WeakMapConstructor.cpp:

(JSC::constructWeakMap):

  • runtime/WeakSetConstructor.cpp:

(JSC::constructWeakSet):

  • wasm/js/WebAssemblyCompileErrorConstructor.cpp:

(JSC::constructJSWebAssemblyCompileError):
(JSC::callJSWebAssemblyCompileError):

  • wasm/js/WebAssemblyLinkErrorConstructor.cpp:

(JSC::constructJSWebAssemblyLinkError):
(JSC::callJSWebAssemblyLinkError):

  • wasm/js/WebAssemblyRuntimeErrorConstructor.cpp:

(JSC::constructJSWebAssemblyRuntimeError):
(JSC::callJSWebAssemblyRuntimeError):

1:35 AM Changeset in webkit [230368] by timothy@apple.com
  • 24 edits
    1 copy in trunk

Use the system's link color when system appearance is desired for a WebView.

https://bugs.webkit.org/show_bug.cgi?id=184353
rdar://problem/9420053

Reviewed by Wenson Hsieh.

Source/WebCore:

Have Document consult RenderTheme via StyleColor for the various link colors.
This allows the system to have different colors than the standard hardcoded ones.
This adds StyleColor::Options, to avoid multiple booleans being passed around,
since the "for visited link" state is now needed in RenderTheme.

  • WebCore.xcodeproj/project.pbxproj: Made StyleColor.h private, since RenderTheme.h includes it.
  • css/StyleColor.cpp:

(WebCore::StyleColor::colorFromKeyword): Use options instead of a bool.
(WebCore::StyleColor::isSystemColor): Consider CSSValueWebkitLink the start of system colors.

  • css/StyleColor.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::colorFromPrimitiveValue const): Use StyleColor::Options.

  • css/parser/CSSParser.cpp:

(WebCore::CSSParser::parseSystemColor): Use StyleColor::Options.

  • dom/Document.cpp:

(WebCore::Document::resetLinkColor): Ask StyleColor for the link color instead of hardcoding it.
(WebCore::Document::resetVisitedLinkColor): Ditto.
(WebCore::Document::resetActiveLinkColor): Ditto.
(WebCore::Document::styleColorOptions const): Added. Helper to get the options used.

  • dom/Document.h:
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawFocusIfNeededInternal): Use StyleColor::Options.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::systemColor const): Add default values here, moved from Document.
(WebCore::RenderTheme::focusRingColor): Use StyleColor::Options.

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::platformFocusRingColor const): Use StyleColor::Options.

  • rendering/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::systemColor const): Use StyleColor::Options.

  • rendering/RenderThemeGtk.h:
  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::systemColor const): Use StyleColor::Options.

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

(WebCore::RenderThemeMac::platformFocusRingColor const): Use StyleColor::Options.
(WebCore::RenderThemeMac::platformColorsDidChange): Clear m_systemVisitedLinkColor.
(WebCore::RenderThemeMac::systemColor const): Use StyleColor::Options.
(WebCore::RenderThemeMac::adjustMenuListStyle const): Ditto.

  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::systemColor const): Use StyleColor::Options.

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

(WebCore::computeTextPaintStyle): Use StyleColor::Options.

Source/WebCore/PAL:

  • pal/spi/cocoa/NSColorSPI.h: Added linkColor.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm: Added.

(TestWebKitAPI::WebKit::LinkColor):
(TestWebKitAPI::WebKit::LinkColorWithSystemAppearance):

Note: See TracTimeline for information about the timeline view.