Timeline
Oct 31, 2015:
- 10:47 PM Changeset in webkit [191851] by
-
- 2 edits in trunk/Source/WebCore
Add a debug overlay with information about web process resource usage.
<https://webkit.org/b/150599>
Unreviewed follow-up to r191849.
Add missing call to uninstall the PageOverlay if the ResourceUsageOverlay is being
disabled through the setting. This way you don't end up with an unremovable overlay
in the MiniBrowser.
- page/ResourceUsageOverlay.cpp:
(WebCore::ResourceUsageOverlay::~ResourceUsageOverlay):
- 9:34 PM Changeset in webkit [191850] by
-
- 13 edits2 adds in trunk
IDB: Date objects don't work as keys or values.
https://bugs.webkit.org/show_bug.cgi?id=150743
Reviewed by Darin Adler.
Source/WebCore:
Test: storage/indexeddb/modern/date-basic.html
The combination of the autogenerated bindings with Deprecated::ScriptValue was
losing the fidelity of "Date" objects being Dates, and not just normal Objects.
This was breaking their usage as IDBKeys.
Custom binding + reworking the IDBObjectStore IDLs to use JSValue instead of ScriptValue
fixes this handily.
- Modules/indexeddb/IDBObjectStore.h:
- Modules/indexeddb/IDBObjectStore.idl:
- Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
(WebCore::IDBClient::IDBObjectStore::add):
(WebCore::IDBClient::IDBObjectStore::put):
(WebCore::IDBClient::IDBObjectStore::putOrAdd):
- Modules/indexeddb/client/IDBObjectStoreImpl.h:
- Modules/indexeddb/legacy/LegacyObjectStore.cpp:
(WebCore::LegacyObjectStore::add):
(WebCore::LegacyObjectStore::put):
- Modules/indexeddb/legacy/LegacyObjectStore.h:
- bindings/js/IDBBindingUtilities.cpp:
(WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::maybeCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::canInjectIDBKeyIntoScriptValue):
(WebCore::scriptValueToIDBKey):
- bindings/js/IDBBindingUtilities.h:
- bindings/js/JSIDBObjectStoreCustom.cpp:
(WebCore::putOrAdd):
(WebCore::JSIDBObjectStore::putRecord):
(WebCore::JSIDBObjectStore::add):
LayoutTests:
- storage/indexeddb/modern/date-basic-expected.txt: Added.
- storage/indexeddb/modern/date-basic.html: Added.
- storage/indexeddb/modern/get-keyrange-expected.txt:
- storage/indexeddb/modern/get-keyrange.html:
- 7:29 PM Changeset in webkit [191849] by
-
- 39 edits3 adds in trunk
Add a debug overlay with information about web process resource usage.
<https://webkit.org/b/150599>
Reviewed by Darin Adler.
Source/JavaScriptCore:
Have Heap track the exact number of bytes allocated in CopiedBlock, MarkedBlock and
WeakBlock objects, keeping them in a single location that can be sampled by the
resource usage overlay thread.
The bulk of these changes is threading a Heap& through from sites where blocks are
allocated or freed.
- heap/CopiedBlock.cpp:
(JSC::CopiedBlock::createNoZeroFill):
(JSC::CopiedBlock::destroy):
(JSC::CopiedBlock::create):
- heap/CopiedBlock.h:
- heap/CopiedSpace.cpp:
(JSC::CopiedSpace::~CopiedSpace):
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocateOversize):
- heap/CopiedSpaceInlines.h:
(JSC::CopiedSpace::recycleEvacuatedBlock):
(JSC::CopiedSpace::recycleBorrowedBlock):
(JSC::CopiedSpace::allocateBlockForCopyingPhase):
(JSC::CopiedSpace::allocateBlock):
(JSC::CopiedSpace::startedCopying):
- heap/Heap.cpp:
(JSC::Heap::~Heap):
(JSC::Heap::sweepNextLogicallyEmptyWeakBlock):
- heap/Heap.h:
(JSC::Heap::blockBytesAllocated):
- heap/HeapInlines.h:
(JSC::Heap::didAllocateBlock):
(JSC::Heap::didFreeBlock):
- heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::allocateBlock):
- heap/MarkedBlock.cpp:
(JSC::MarkedBlock::create):
(JSC::MarkedBlock::destroy):
- heap/MarkedBlock.h:
- heap/MarkedSpace.cpp:
(JSC::MarkedSpace::freeBlock):
- heap/WeakBlock.cpp:
(JSC::WeakBlock::create):
(JSC::WeakBlock::destroy):
- heap/WeakBlock.h:
- heap/WeakSet.cpp:
(JSC::WeakSet::~WeakSet):
(JSC::WeakSet::addAllocator):
(JSC::WeakSet::removeAllocator):
Source/WebCore:
A new kind of PageOverlay is added behind the ENABLE(RESOURCE_USAGE_OVERLAY) flag.
It's owned by Page, but not instantiated unless the Settings::resourceUsageOverlayVisible flag is set.
All ResourceUsageOverlay objects share a single sampler thread. The thread currently runs every 500ms
and samples CPU usage, dirty memory regions, and GC heap size/capacity.
Most things in here are currently quite Mac-specific, but I will be iterating on this towards a more
cross-platform friendly solution.
There are two small changes to PageOverlay in order to support dragging the resource usage overlay:
- A "should ignore mouse events outside bounds" state flag. This is on by default but turned off during a drag.
- PageOverlay::bounds() will now return the override frame verbatim if one is set, instead of returning it relocated to 0,0.
Note that this is intended as a tool for WebKit engine developers to better understand memory usage.
It's not a goal to expose this information to end users.
- WebCore.xcodeproj/project.pbxproj:
- page/Page.cpp:
(WebCore::Page::setResourceUsageOverlayVisible):
- page/Page.h:
- page/PageOverlay.cpp:
(WebCore::PageOverlay::bounds):
(WebCore::PageOverlay::mouseEvent):
- page/PageOverlay.h:
- page/ResourceUsageOverlay.cpp: Added.
(WebCore::ResourceUsageOverlay::ResourceUsageOverlay):
(WebCore::ResourceUsageOverlay::~ResourceUsageOverlay):
(WebCore::ResourceUsageOverlay::mouseEvent):
- page/ResourceUsageOverlay.h: Added.
- page/Settings.cpp:
(WebCore::Settings::setResourceUsageOverlayVisible):
- page/Settings.h:
(WebCore::Settings::resourceUsageOverlayVisible):
- page/cocoa/ResourceUsageOverlayCocoa.mm: Added.
(-[WebOverlayLayer initWithResourceUsageOverlay:]):
(-[WebOverlayLayer drawInContext:]):
(WebCore::RingBuffer::RingBuffer):
(WebCore::RingBuffer::append):
(WebCore::RingBuffer::last):
(WebCore::RingBuffer::forEach):
(WebCore::RingBuffer::incrementIndex):
(WebCore::RingBuffer::decrementIndex):
(WebCore::sharedData):
(WebCore::ResourceUsageOverlay::platformInitialize):
(WebCore::ResourceUsageOverlay::platformDestroy):
(WebCore::drawCpuHistory):
(WebCore::drawGCHistory):
(WebCore::drawSlice):
(WebCore::drawPlate):
(WebCore::drawMemoryPie):
(WebCore::formatByteNumber):
(WebCore::showText):
(WebCore::ResourceUsageOverlay::draw):
(WebCore::dirtyPagesPerVMTag):
(WebCore::cpuUsage):
(WebCore::runSamplerThread):
- platform/spi/cocoa/MachVMSPI.h:
Source/WebKit2:
Add WK2 preferences SPI for showing/hiding the resource usage overlay.
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetResourceUsageOverlayVisible):
(WKPreferencesGetResourceUsageOverlayVisible):
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences _resourceUsageOverlayVisible]):
(-[WKPreferences _setResourceUsageOverlayVisible:]):
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Source/WTF:
Add ENABLE(RESOURCE_USAGE_OVERLAY) flag, enabled on Mac by default.
- wtf/Platform.h:
Tools:
Add a menu item to the MiniBrowser so we can toggle the resource usage overlay on/off.
- MiniBrowser/mac/SettingsController.h:
- MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController toggleShowResourceUsageOverlay:]):
(-[SettingsController resourceUsageOverlayVisible]):
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController didChangeSettings]):
- 5:14 PM Changeset in webkit [191848] by
-
- 4 edits in trunk/Source/WebKit2
Share more code between NETWORK_SESSION and non-NETWORK_SESSION NetworkResourceLoaders
https://bugs.webkit.org/show_bug.cgi?id=150742
Reviewed by Darin Adler.
r191457 added enough code to NetworkResourceLoader to load most resources successfully if there are no errors.
It passed about 80% of LayoutTests/http and crashed sometimes.
This passes about 95% of LayoutTests/http and does not crash on any of the LayoutTests/http.
It should not change behavior of the non-NETWORK_SESSION code which is currently the default in trunk.
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::abort):
(WebKit::NetworkResourceLoader::sharedDidReceiveResponse):
(WebKit::NetworkResourceLoader::sharedDidReceiveBuffer):
(WebKit::NetworkResourceLoader::sharedDidFinishLoading):
(WebKit::NetworkResourceLoader::sharedDidFail):
(WebKit::NetworkResourceLoader::sharedWillSendRedirectedRequest):
(WebKit::NetworkResourceLoader::willPerformHTTPRedirection):
(WebKit::NetworkResourceLoader::didReceiveChallenge):
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::didReceiveData):
(WebKit::NetworkResourceLoader::didCompleteWithError):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
(WebKit::NetworkResourceLoader::didReceiveBuffer):
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::didFail):
(WebKit::NetworkResourceLoader::willSendRequestAsync):
- NetworkProcess/NetworkResourceLoader.h:
- NetworkProcess/NetworkSession.h:
(WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
- 4:17 PM Changeset in webkit [191847] by
-
- 8 edits in trunk
storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=150735
Reviewed by Darin Adler.
Source/WebCore:
No new tests (Covered by existing tests).
Transactions were liable to commit too early because IDBRequests could be waiting
to dispatch their error/success events but their operations would no longer be
registered with the transaction.
Having outstanding requests should also keep a transaction from committing, just
like having outstanding operations should.
- Modules/indexeddb/client/IDBOpenDBRequestImpl.cpp:
(WebCore::IDBClient::IDBOpenDBRequest::onUpgradeNeeded):
- Modules/indexeddb/client/IDBRequestImpl.cpp:
(WebCore::IDBClient::IDBRequest::dispatchEvent):
- Modules/indexeddb/client/IDBTransactionImpl.cpp:
(WebCore::IDBClient::IDBTransaction::addRequest):
(WebCore::IDBClient::IDBTransaction::removeRequest):
(WebCore::IDBClient::IDBTransaction::operationTimerFired):
(WebCore::IDBClient::IDBTransaction::requestGetRecord):
(WebCore::IDBClient::IDBTransaction::requestClearObjectStore):
(WebCore::IDBClient::IDBTransaction::requestPutOrAdd):
(WebCore::IDBClient::IDBTransaction::operationDidComplete):
- Modules/indexeddb/client/IDBTransactionImpl.h:
- Modules/indexeddb/client/TransactionOperation.h:
(WebCore::IDBClient::TransactionOperation::completed):
LayoutTests:
- platform/mac-wk1/TestExpectations: Reenable the test.
- 4:12 PM Changeset in webkit [191846] by
-
- 9 edits2 adds in trunk/Source/JavaScriptCore
Air should eliminate dead code
https://bugs.webkit.org/show_bug.cgi?id=150746
Reviewed by Geoffrey Garen.
This adds a very simple dead code elimination to Air. It simply looks at whether a Tmp or
StackSlot has ever been used by a live instruction. An instruction is live if it has non-arg
effects (branching, returning, calling, etc) or if it stores to a live Arg. An Arg is live if
it references a live Tmp or StackSlot, or if it is neither a Tmp nor a StackSlot. The phase
runs these rules to fixpoint, and then removes the dead instructions.
This also changes the AirOpcodes parser to handle multiple attributes per opcode, so that we
could conceivably say things like "FooBar /branch /effects". It also adds the /effects
attribute, which we currently use for Breakpoint and nothing else. C calls, patchpoints, and
checks are all Specials, and the Special base class by default always claims that the
instruction has effects. In the future, we could have B3 use a Patch in Air to implement
exotic math constructs; then the Special associated with that thing would claim that there
are no effects.
- JavaScriptCore.xcodeproj/project.pbxproj:
- b3/air/AirBasicBlock.h:
(JSC::B3::Air::BasicBlock::begin):
(JSC::B3::Air::BasicBlock::end):
(JSC::B3::Air::BasicBlock::at):
(JSC::B3::Air::BasicBlock::last):
(JSC::B3::Air::BasicBlock::resize):
(JSC::B3::Air::BasicBlock::appendInst):
- b3/air/AirEliminateDeadCode.cpp: Added.
(JSC::B3::Air::eliminateDeadCode):
- b3/air/AirEliminateDeadCode.h: Added.
- b3/air/AirGenerate.cpp:
(JSC::B3::Air::generate):
- b3/air/AirInst.h:
- b3/air/AirOpcode.opcodes:
- b3/air/AirSpecial.cpp:
(JSC::B3::Air::Special::name):
(JSC::B3::Air::Special::hasNonArgNonControlEffects):
(JSC::B3::Air::Special::dump):
- b3/air/AirSpecial.h:
- b3/air/opcode_generator.rb:
- 4:01 PM Changeset in webkit [191845] by
-
- 4 edits2 adds in trunk/Source/JavaScriptCore
Air needs a late register liveness phase that calls Special::reportUsedRegisters()
https://bugs.webkit.org/show_bug.cgi?id=150511
Reviewed by Saam Barati.
This change adds such a phase. In the process of writing it, I was reminded about the
glaring efficiency bugs in Air::Liveness and so I filed a bug and added FIXMEs.
- JavaScriptCore.xcodeproj/project.pbxproj:
- b3/air/AirAllocateStack.cpp:
(JSC::B3::Air::allocateStack):
- b3/air/AirGenerate.cpp:
(JSC::B3::Air::generate):
- b3/air/AirReportUsedRegisters.cpp: Added.
(JSC::B3::Air::reportUsedRegisters):
- b3/air/AirReportUsedRegisters.h: Added.
- 10:48 AM Changeset in webkit [191844] by
-
- 6 edits in trunk/Source/WebCore
[GStreamer][Mac] Fix WebAudio build
https://bugs.webkit.org/show_bug.cgi?id=150030
Patch by Philippe Normand <pnormand@igalia.com> on 2015-10-31
Reviewed by Darin Adler.
Wrap Accelerate.framework API calls around USE(ACCELERATE) ifdefs.
- platform/audio/Biquad.cpp:
(WebCore::Biquad::Biquad):
(WebCore::Biquad::process):
(WebCore::Biquad::reset):
- platform/audio/Biquad.h:
- platform/audio/DirectConvolver.cpp:
(WebCore::DirectConvolver::process):
- platform/audio/FFTFrame.h:
- platform/audio/VectorMath.cpp:
- 10:35 AM Changeset in webkit [191843] by
-
- 2 edits in trunk/Tools
Teach the CompileWebKit step to look for additional arguments.
Unreviewed config change.
- BuildSlaveSupport/build.webkit.org-config/master.cfg:
(CompileWebKit.start):
- 9:52 AM Changeset in webkit [191842] by
-
- 19 edits1 delete in trunk/Source
Builtins generator should put WebCore-only wrappers in the per-builtin header
https://bugs.webkit.org/show_bug.cgi?id=150539
Reviewed by Youenn Fablet.
Source/JavaScriptCore:
If generating for WebCore, put the XXXWrapper and related boilerplate
in the per-builtin header instead of making a separate XXXWrapper.h.
Rebaseline the tests.
- CMakeLists.txt:
- DerivedSources.make:
- Scripts/builtins/builtins.py:
- Scripts/builtins/builtins_generate_separate_header.py:
(BuiltinsSeparateHeaderGenerator.generate_output):
(generate_header_includes):
- Scripts/builtins/builtins_generate_separate_wrapper.py: Deleted.
- Scripts/builtins/builtins_templates.py: Be consistent with variables.
- Scripts/generate-js-builtins.py:
- Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
Source/WebCore:
Fix includes of removed XXXWrapper.h headers.
- CMakeLists.txt:
- DerivedSources.make:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/WebCoreJSBuiltinInternals.h:
- bindings/js/WebCoreJSBuiltins.h:
- 8:37 AM Changeset in webkit [191841] by
-
- 6 edits in trunk/Source/WebCore
Add the support for Symbol attributes on IDL
https://bugs.webkit.org/show_bug.cgi?id=150586
Reviewed by Ryosuke Niwa.
This patch addes readonly attribute support for Symbols.
It involves the IDL generator functionality converting Native type (PrivateName) to Symbol.
- bindings/scripts/CodeGeneratorGObject.pm:
(SkipAttribute):
(SkipFunction):
- bindings/scripts/CodeGeneratorJS.pm:
(NativeToJSValue):
- bindings/scripts/CodeGeneratorObjC.pm:
(SkipFunction):
(SkipAttribute):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjReadOnlySymbolAttr):
(WebCore::jsTestObjConstructorStaticReadOnlySymbolAttr):
- bindings/scripts/test/TestObj.idl:
- 2:15 AM Changeset in webkit [191840] by
-
- 6 edits in trunk/Source/JavaScriptCore
JSC should have a forceGCSlowPaths option
https://bugs.webkit.org/show_bug.cgi?id=150744
Reviewed by Filip Pizlo.
This patch implements the forceGCSlowPaths option.
It defaults to false, but when it is set to true,
the JITs will always allocate objects along the slow
path. This will be helpful for writing a certain class
of tests. This may also come in handy for debugging
later.
This patch also adds the "forceGCSlowPaths" function
in jsc.cpp which sets the option to true. If you
use this function in a jsc stress test, it's best
to call it as the first thing in the program before
we JIT anything.
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateJSCell):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::DFG::LowerDFGToLLVM::allocateCell):
- jit/JITInlines.h:
(JSC::JIT::emitAllocateJSObject):
- jsc.cpp:
(GlobalObject::finishCreation):
(functionEdenGC):
(functionForceGCSlowPaths):
(functionHeapSize):
- runtime/Options.h:
Oct 30, 2015:
- 9:58 PM Changeset in webkit [191839] by
-
- 3 edits2 adds in trunk
Web Inspector: Test Debugger.scriptParsed events received after opening inspector frontend
https://bugs.webkit.org/show_bug.cgi?id=150753
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-30
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
- parser/Parser.h:
(JSC::Parser<LexerType>::parse):
Only set the directives on the SourceProvider if we were parsing the
entire file (Program or Module), not if we are in function parsing mode.
This was inadvertently clearing the directives stored on the
SourceProvider when the function parse didn't see directives and reset
the values on the source provider.
LayoutTests:
Explicit test for the scriptParsed events we expect to see
when first opening the inspector on an already open page.
We do not expect to see some scripts (built-ins) but do expect
to see all user scripts evaluated on the page.
- inspector/debugger/scriptParsed-expected.txt: Added.
- inspector/debugger/scriptParsed.html: Added.
- 9:03 PM Changeset in webkit [191838] by
-
- 6 edits in trunk/Source/JavaScriptCore
[JSC] Add lowering for B3's Sub operation with integers
https://bugs.webkit.org/show_bug.cgi?id=150749
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-30
Reviewed by Filip Pizlo.
- b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::trySub):
(JSC::B3::Air::LowerToAir::tryStoreSubLoad):
- b3/B3LoweringMatcher.patterns:
Identical to Add but obviously NotCommutative.
- b3/B3ReduceStrength.cpp:
Turn Add/Sub with zero into an identity. I only added for
Add since Sub with a constant is always turned into an Add.
Also switched the Sub optimizations to put the strongest first.
- b3/air/AirOpcode.opcodes:
- b3/testb3.cpp:
(JSC::B3::testAddArgImm):
(JSC::B3::testAddImmArg):
(JSC::B3::testSubArgs):
(JSC::B3::testSubArgImm):
(JSC::B3::testSubImmArg):
(JSC::B3::testSubArgs32):
(JSC::B3::testSubArgImm32):
(JSC::B3::testSubImmArg32):
(JSC::B3::testStoreSubLoad):
(JSC::B3::run):
- 9:02 PM Changeset in webkit [191837] by
-
- 2 edits in trunk/Source/JavaScriptCore
[JSC] Add the Air Opcode definitions to the Xcode project file
https://bugs.webkit.org/show_bug.cgi?id=150701
Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-30
Reviewed by Geoffrey Garen.
- JavaScriptCore.xcodeproj/project.pbxproj:
Easier for those who use Xcode :)
- 7:20 PM Changeset in webkit [191836] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, removing FIXME referencing https://bugs.webkit.org/show_bug.cgi?id=150540.
- b3/B3ValueRep.h:
- 7:11 PM Changeset in webkit [191835] by
-
- 2 edits in trunk/Source/JavaScriptCore
Windows X86-64 change for Crash making a tail call from a getter to a host function
https://bugs.webkit.org/show_bug.cgi?id=150737
Reviewed by Geoffrey Garen.
Need to make the same change for Windows X86-64 as was made in change set
http://trac.webkit.org/changeset/191765.
- jit/JITStubsMSVC64.asm:
- 6:09 PM Changeset in webkit [191834] by
-
- 3 edits2 adds in trunk
Inner height behavior when the keyboard is shown should match on WKWebView and MobileSafari
https://bugs.webkit.org/show_bug.cgi?id=150634
<rdar://problem/23202254>
Reviewed by Benjamin Poulain.
Source/WebKit2:
Make WKWebView match behavior in Safari by not firing resize events and changing the inner height when showing
or hiding the keyboard. Previously, the WKWebView would do both of the above because we use the scroll view's
contentInset property when no unobscured insets are explicitly set for the WKWebView. To fix this, when updating
the visible content rect of a WKWebView for computing the inner height, we readjust the computed bottom inset
to not take the keyboard height into account. To know how much we need to readjust the inset by, we store the
total amount by which the scroll view's bottom inset has been adjusted due to the keyboard.
We perform this readjustment in _updateVisibleContentRects rather than in _computedContentInset since some users
of _computedContentInset may still expect the bottom inset to account for the keyboard height. However, when
updating visible content rects, we should not account for the keyboard height since we don't want the inner height
to change when showing or hiding the keyboard.
Lastly, while calling _adjustForAutomaticKeyboardInfo, we may end up calling _updateVisibleContentRects. This call
is unnecessary since we call it again immediately after _adjustForAutomaticKeyboardInfo, and it also complicates
the readjustment logic, so it makes sense to prevent the update from happening altogether while we are adjusting
the scroll view's insets due to keyboard changes. Altogether, these changes mean that the computed inner height
will no longer be adjusted for the keyboard height on WKWebViews, matching the behavior observed on mobile Safari.
Test: LayoutTests/fast/events/ios/keyboard-should-not-trigger-resize.html
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _updateVisibleContentRects]):
(-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
LayoutTests:
Tests that WKWebViews do not fire resize events or change window.innerHeight when showing or
hiding the keyboard. This behavior is consistent with mobile Safari.
- fast/events/ios/keyboard-should-not-trigger-resize-expected.txt: Added.
- fast/events/ios/keyboard-should-not-trigger-resize.html: Added.
- 5:51 PM Changeset in webkit [191833] by
-
- 1 copy in tags/Safari-601.3.9
New tag.
- 5:17 PM Changeset in webkit [191832] by
-
- 24 edits2 adds in trunk
Modern IDB: Support IDBObjectStore.get() for IDBKeyRanges.
https://bugs.webkit.org/show_bug.cgi?id=150718
Reviewed by Alex Christensen.
Source/WebCore:
Test: storage/indexeddb/modern/get-keyrange.html
- Modules/indexeddb/IDBKeyRangeData.cpp:
(WebCore::IDBKeyRangeData::IDBKeyRangeData):
- Modules/indexeddb/IDBKeyRangeData.h:
- Modules/indexeddb/client/IDBConnectionToServer.cpp:
(WebCore::IDBClient::IDBConnectionToServer::getRecord):
- Modules/indexeddb/client/IDBConnectionToServer.h:
- Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
- Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
(WebCore::IDBClient::IDBObjectStore::get):
- Modules/indexeddb/client/IDBTransactionImpl.cpp:
(WebCore::IDBClient::IDBTransaction::requestGetRecord):
(WebCore::IDBClient::IDBTransaction::getRecordOnServer):
- Modules/indexeddb/client/IDBTransactionImpl.h:
- Modules/indexeddb/server/IDBBackingStore.h:
- Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::getRecord):
- Modules/indexeddb/server/IDBServer.h:
- Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
(WebCore::IDBServer::MemoryBackingStoreTransaction::recordValueChanged):
- Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
(WebCore::IDBServer::MemoryIDBBackingStore::getRecord):
- Modules/indexeddb/server/MemoryIDBBackingStore.h:
- Modules/indexeddb/server/MemoryObjectStore.cpp:
(WebCore::IDBServer::MemoryObjectStore::deleteRecord):
(WebCore::IDBServer::MemoryObjectStore::setKeyValue):
(WebCore::IDBServer::MemoryObjectStore::valueForKeyRange): Using a std::set, find the appropriate
key in the range, and return the value if one exists.
(WebCore::IDBServer::MemoryObjectStore::valueForKey): Deleted.
- Modules/indexeddb/server/MemoryObjectStore.h:
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::getRecord):
(WebCore::IDBServer::UniqueIDBDatabase::performGetRecord):
- Modules/indexeddb/server/UniqueIDBDatabase.h:
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::getRecord):
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
- Modules/indexeddb/shared/InProcessIDBServer.cpp:
(WebCore::InProcessIDBServer::getRecord):
- Modules/indexeddb/shared/InProcessIDBServer.h:
LayoutTests:
- storage/indexeddb/modern/get-keyrange.html: Added.
- storage/indexeddb/modern/get-keyrange-expected.txt: Added.
- 5:12 PM Changeset in webkit [191831] by
-
- 9 edits1 copy in trunk
Begin work on supporting reply blocks in _WKRemoteObjectRegistry
https://bugs.webkit.org/show_bug.cgi?id=150739
Reviewed by Tim Horton.
Source/WebKit2:
- Platform/spi/Cocoa/BlockSPI.h:
Add SPI header.
- Shared/API/Cocoa/RemoteObjectInvocation.h:
(WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo):
(WebKit::RemoteObjectInvocation::replyInfo):
- Shared/API/Cocoa/RemoteObjectInvocation.mm:
(WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
(WebKit::RemoteObjectInvocation::encode):
(WebKit::RemoteObjectInvocation::decode):
Add an optional ReplyInfo struct to RemoteObjectInvocation.
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(generateReplyIdentifier):
Helper function to generate a reply identifier.
(-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
Do some block parameter validation.
- WebKit2.xcodeproj/project.pbxproj:
Tools:
Add a test. We only test the encoding right now.
- TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h:
- TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
(TEST):
- TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm:
(-[RemoteObjectRegistryPlugIn sayHello:completionHandler:]):
- 4:59 PM Changeset in webkit [191830] by
-
- 2 edits in trunk/Source/WebKit2
Link preview doesn't work on XHTML pages with Content-Type header as
‘application/xhtml+xml’
https://bugs.webkit.org/show_bug.cgi?id=150740
-and corresponding-
rdar://problem/23063585
Reviewed by Tim Horton.
For XHTML pages, the element names are lowercase. This patch uses
equalIgnoringCase to fix the bug.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _actionForLongPress]):
(-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
(-[WKContentView _dataForPreviewItemController:atPosition:type:]):
- 4:56 PM Changeset in webkit [191829] by
-
- 1 copy in tags/Safari-601.3.8
New tag.
- 4:55 PM Changeset in webkit [191828] by
-
- 1 delete in tags/Safari-600.1.3.8
Delete tag.
- 4:35 PM Changeset in webkit [191827] by
-
- 2 edits in trunk/Tools
Add CMAke builder to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=150738
Reviewed by Alex Christensen.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- 4:20 PM Changeset in webkit [191826] by
-
- 32 edits6 adds in trunk
Modern IDB: IDBObjectStore.clear() support.
https://bugs.webkit.org/show_bug.cgi?id=150733
Reviewed by Alex Christensen.
Source/WebCore:
Tests: storage/indexeddb/modern/idbobjectstore-clear-1.html
storage/indexeddb/modern/idbobjectstore-clear-2.html
- Modules/indexeddb/client/IDBConnectionToServer.cpp:
(WebCore::IDBClient::IDBConnectionToServer::clearObjectStore):
(WebCore::IDBClient::IDBConnectionToServer::didClearObjectStore):
- Modules/indexeddb/client/IDBConnectionToServer.h:
- Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
- Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
(WebCore::IDBClient::IDBObjectStore::clear):
- Modules/indexeddb/client/IDBRequestImpl.cpp:
(WebCore::IDBClient::IDBRequest::setResultToUndefined):
- Modules/indexeddb/client/IDBRequestImpl.h:
- Modules/indexeddb/client/IDBTransactionImpl.cpp:
(WebCore::IDBClient::IDBTransaction::requestClearObjectStore):
(WebCore::IDBClient::IDBTransaction::clearObjectStoreOnServer):
(WebCore::IDBClient::IDBTransaction::didClearObjectStoreOnServer):
- Modules/indexeddb/client/IDBTransactionImpl.h:
- Modules/indexeddb/server/IDBBackingStore.h:
- Modules/indexeddb/server/IDBConnectionToClient.cpp:
(WebCore::IDBServer::IDBConnectionToClient::didClearObjectStore):
- Modules/indexeddb/server/IDBConnectionToClient.h:
- Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
- Modules/indexeddb/server/IDBServer.cpp:
(WebCore::IDBServer::IDBServer::clearObjectStore):
- Modules/indexeddb/server/IDBServer.h:
- Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
(WebCore::IDBServer::MemoryBackingStoreTransaction::objectStoreCleared):
(WebCore::IDBServer::MemoryBackingStoreTransaction::recordValueChanged):
(WebCore::IDBServer::MemoryBackingStoreTransaction::abort):
- Modules/indexeddb/server/MemoryBackingStoreTransaction.h:
(WebCore::IDBServer::MemoryBackingStoreTransaction::isAborting):
- Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
(WebCore::IDBServer::MemoryIDBBackingStore::clearObjectStore):
- Modules/indexeddb/server/MemoryIDBBackingStore.h:
- Modules/indexeddb/server/MemoryObjectStore.cpp:
(WebCore::IDBServer::MemoryObjectStore::clear):
(WebCore::IDBServer::MemoryObjectStore::replaceKeyValueStore):
- Modules/indexeddb/server/MemoryObjectStore.h:
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::clearObjectStore):
(WebCore::IDBServer::UniqueIDBDatabase::performClearObjectStore):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformClearObjectStore):
- Modules/indexeddb/server/UniqueIDBDatabase.h:
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseConnection::didClearObjectStore):
- Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::clearObjectStore):
- Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
- Modules/indexeddb/shared/IDBResultData.cpp:
(WebCore::IDBResultData::clearObjectStoreSuccess):
- Modules/indexeddb/shared/IDBResultData.h:
- Modules/indexeddb/shared/InProcessIDBServer.cpp:
(WebCore::InProcessIDBServer::didClearObjectStore):
(WebCore::InProcessIDBServer::clearObjectStore):
- Modules/indexeddb/shared/InProcessIDBServer.h:
LayoutTests:
- storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt: Added.
- storage/indexeddb/modern/idbobjectstore-clear-1.html: Added.
- storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt: Added.
- storage/indexeddb/modern/idbobjectstore-clear-2.html: Added.
- storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt: Added.
- storage/indexeddb/modern/idbobjectstore-put-and-clear-failures.html: Added.
- 4:18 PM Changeset in webkit [191825] by
-
- 2 edits in trunk/Source/WebCore
CSSParserVariable leaks seen on leaks bots
https://bugs.webkit.org/show_bug.cgi?id=150724
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-30
Reviewed by Darin Adler.
- css/CSSParserValues.cpp:
(WebCore::destroy):
Cleanup variable CSSParserValues.
- 3:48 PM Changeset in webkit [191824] by
-
- 15 edits in trunk/Source/WebKit2
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
- UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
(-[WKView prepareContentInRect:]):
(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView pageRef]):
(-[WKView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
(-[WKView dealloc]): Deleted.
- UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::page):
- UIProcess/Cocoa/WebViewImpl.mm:
(-[WKWindowVisibilityObserver initWithView:impl:]):
(-[WKWindowVisibilityObserver dealloc]):
(-[WKWindowVisibilityObserver _activeSpaceDidChange:]):
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setDrawsBackground):
(WebKit::WebViewImpl::drawsBackground):
(WebKit::WebViewImpl::setDrawsTransparentBackground):
(WebKit::WebViewImpl::drawsTransparentBackground):
(WebKit::WebViewImpl::isOpaque):
(WebKit::WebViewImpl::acceptsFirstMouse):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::viewWillStartLiveResize):
(WebKit::WebViewImpl::viewDidEndLiveResize):
(WebKit::WebViewImpl::updateWindowAndViewFrames):
(WebKit::WebViewImpl::setFixedLayoutSize):
(WebKit::WebViewImpl::fixedLayoutSize):
(WebKit::WebViewImpl::isUsingUISideCompositing):
(WebKit::WebViewImpl::setDrawingAreaSize):
(WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate):
(WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate):
(WebKit::WebViewImpl::updateLayer):
(WebKit::WebViewImpl::drawRect):
(WebKit::WebViewImpl::dispatchSetTopContentInset):
(WebKit::WebViewImpl::prepareContentInRect):
(WebKit::WebViewImpl::updateViewExposedRect):
(WebKit::WebViewImpl::setMinimumSizeForAutoLayout):
(WebKit::WebViewImpl::minimumSizeForAutoLayout):
(WebKit::WebViewImpl::setShouldExpandToViewHeightForAutoLayout):
(WebKit::WebViewImpl::shouldExpandToViewHeightForAutoLayout):
(WebKit::WebViewImpl::setIntrinsicContentSize):
(WebKit::WebViewImpl::setViewScale):
(WebKit::WebViewImpl::viewScale):
(WebKit::WebViewImpl::supportsArbitraryLayoutModes):
(WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
(WebKit::WebViewImpl::windowDidOrderOffScreen):
(WebKit::WebViewImpl::windowDidOrderOnScreen):
(WebKit::WebViewImpl::windowDidBecomeKey):
(WebKit::WebViewImpl::windowDidResignKey):
(WebKit::WebViewImpl::windowDidMiniaturize):
(WebKit::WebViewImpl::windowDidDeminiaturize):
(WebKit::WebViewImpl::windowDidChangeBackingProperties):
(WebKit::WebViewImpl::windowDidChangeScreen):
(WebKit::WebViewImpl::windowDidChangeLayerHosting):
(WebKit::WebViewImpl::windowDidChangeOcclusionState):
(WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
(WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
(WebKit::WebViewImpl::viewDidMoveToWindow):
(WebKit::WebViewImpl::viewDidChangeBackingProperties):
(WebKit::WebViewImpl::viewDidHide):
(WebKit::WebViewImpl::viewDidUnhide):
(WebKit::WebViewImpl::activeSpaceDidChange):
(WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
(WebKit::WebViewImpl::setUnderlayColor):
(WebKit::WebViewImpl::underlayColor):
(WebKit::WebViewImpl::pageExtendedBackgroundColor):
(WebKit::WebViewImpl::setOverlayScrollbarStyle):
(WebKit::WebViewImpl::overlayScrollbarStyle):
(WebKit::WebViewImpl::endDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
(WebKit::WebViewImpl::prepareForMoveToWindow):
(WebKit::WebViewImpl::updateSecureInputState):
(WebKit::WebViewImpl::setPluginComplexTextInputState):
(WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::handleAcceptedAlternativeText):
(WebKit::WebViewImpl::pressureChangeWithEvent):
(WebKit::WebViewImpl::isEditable):
(WebKit::WebViewImpl::executeEditCommandForSelector):
(WebKit::WebViewImpl::writeSelectionToPasteboard):
(WebKit::WebViewImpl::readSelectionFromPasteboard):
(WebKit::WebViewImpl::validRequestorForSendAndReturnTypes):
(WebKit::WebViewImpl::centerSelectionInVisibleArea):
(WebKit::WebViewImpl::updateFontPanelIfNeeded):
(WebKit::WebViewImpl::changeFontFromFontPanel):
(WebKit::WebViewImpl::validateUserInterfaceItem):
(WebKit::WebViewImpl::startSpeaking):
(WebKit::WebViewImpl::showGuessPanel):
(WebKit::WebViewImpl::checkSpelling):
(WebKit::WebViewImpl::changeSpelling):
(WebKit::WebViewImpl::toggleContinuousSpellChecking):
(WebKit::WebViewImpl::setGrammarCheckingEnabled):
(WebKit::WebViewImpl::toggleGrammarChecking):
(WebKit::WebViewImpl::toggleAutomaticSpellingCorrection):
(WebKit::WebViewImpl::toggleSmartInsertDelete):
(WebKit::WebViewImpl::setAutomaticQuoteSubstitutionEnabled):
(WebKit::WebViewImpl::toggleAutomaticQuoteSubstitution):
(WebKit::WebViewImpl::setAutomaticDashSubstitutionEnabled):
(WebKit::WebViewImpl::toggleAutomaticDashSubstitution):
(WebKit::WebViewImpl::setAutomaticLinkDetectionEnabled):
(WebKit::WebViewImpl::toggleAutomaticLinkDetection):
(WebKit::WebViewImpl::setAutomaticTextReplacementEnabled):
(WebKit::WebViewImpl::toggleAutomaticTextReplacement):
(WebKit::WebViewImpl::uppercaseWord):
(WebKit::WebViewImpl::lowercaseWord):
(WebKit::WebViewImpl::capitalizeWord):
(WebKit::WebViewImpl::preferencesDidChange):
(WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly):
(WebKit::WebViewImpl::quickLookWithEvent):
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::WebViewImpl::didChangeContentSize):
(WebKit::WebViewImpl::setIgnoresNonWheelEvents):
(WebKit::WebViewImpl::updateRemoteAccessibilityRegistration):
(WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
(WebKit::WebViewImpl::stringForToolTip):
(WebKit::WebViewImpl::setInspectorAttachmentView):
(WebKit::WebViewImpl::remoteObjectRegistry):
(WebKit::WebViewImpl::browsingContextController):
(WebKit::WebViewImpl::draggedImage):
(WebKit::WebViewImpl::draggingEntered):
(WebKit::WebViewImpl::draggingUpdated):
(WebKit::WebViewImpl::draggingExited):
(WebKit::WebViewImpl::performDragOperation):
(WebKit::WebViewImpl::takeViewSnapshot):
(WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
(WebKit::WebViewImpl::saveBackForwardSnapshotForItem):
(WebKit::WebViewImpl::setAllowsBackForwardNavigationGestures):
(WebKit::WebViewImpl::setMagnification):
(WebKit::WebViewImpl::magnification):
(WebKit::WebViewImpl::scrollWheel):
(WebKit::WebViewImpl::swipeWithEvent):
(WebKit::WebViewImpl::magnifyWithEvent):
(WebKit::WebViewImpl::rotateWithEvent):
(WebKit::WebViewImpl::doCommandBySelector):
(WebKit::WebViewImpl::insertText):
(WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
(WebKit::WebViewImpl::markedRangeWithCompletionHandler):
(WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
(WebKit::WebViewImpl::attributedSubstringForProposedRange):
(WebKit::WebViewImpl::firstRectForCharacterRange):
(WebKit::WebViewImpl::characterIndexForPoint):
(WebKit::WebViewImpl::inputContext):
(WebKit::WebViewImpl::unmarkText):
(WebKit::WebViewImpl::setMarkedText):
(WebKit::WebViewImpl::performKeyEquivalent):
(WebKit::WebViewImpl::keyUp):
(WebKit::WebViewImpl::keyDown):
(WebKit::WebViewImpl::flagsChanged):
(WebKit::WebViewImpl::executeSavedKeypressCommands):
(WebKit::WebViewImpl::selectedRange):
(WebKit::WebViewImpl::hasMarkedText):
(WebKit::WebViewImpl::markedRange):
(WebKit::WebViewImpl::setContentPreparationRect): Deleted.
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResultFromViewOnly): Deleted.
(WebKit::WebViewImpl::destroyRemoteObjectRegistry): Deleted.
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::scrollPinningBehavior):
(WebKit::WebPageProxy::overlayScrollbarStyle):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createWebPage):
- UIProcess/WebProcessPool.h:
- UIProcess/mac/PageClientImpl.h:
- UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::createDrawingAreaProxy):
(WebKit::PageClientImpl::viewSize):
(WebKit::PageClientImpl::activeView):
(WebKit::PageClientImpl::activeWindow):
(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::makeFirstResponder):
(WebKit::PageClientImpl::isViewVisible):
(WebKit::PageClientImpl::colorSpace):
(WebKit::PageClientImpl::processDidExit):
(WebKit::PageClientImpl::pageClosed):
(WebKit::PageClientImpl::didRelaunchProcess):
(WebKit::PageClientImpl::preferencesDidChange):
(WebKit::PageClientImpl::toolTipChanged):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::didChangeContentSize):
(WebKit::PageClientImpl::setCursor):
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::registerInsertionUndoGrouping):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::canUndoRedo):
(WebKit::PageClientImpl::executeUndoRedo):
(WebKit::PageClientImpl::setDragImage):
(WebKit::PageClientImpl::setPromisedDataForImage):
(WebKit::PageClientImpl::setPromisedDataForAttachment):
(WebKit::PageClientImpl::updateSecureInputState):
(WebKit::PageClientImpl::resetSecureInputState):
(WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::PageClientImpl::convertToDeviceSpace):
(WebKit::PageClientImpl::convertToUserSpace):
(WebKit::PageClientImpl::screenToRootView):
(WebKit::PageClientImpl::rootViewToScreen):
(WebKit::PageClientImpl::doneWithKeyEvent):
(WebKit::PageClientImpl::createPopupMenuProxy):
(WebKit::PageClientImpl::createContextMenuProxy):
(WebKit::PageClientImpl::createColorPicker):
(WebKit::PageClientImpl::setTextIndicator):
(WebKit::PageClientImpl::clearTextIndicator):
(WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
(WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
(WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
(WebKit::PageClientImpl::acceleratedCompositingRootLayer):
(WebKit::PageClientImpl::takeViewSnapshot):
(WebKit::PageClientImpl::selectionDidChange):
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
(WebKit::PageClientImpl::gestureEventWasNotHandledByWebCore):
(WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
(WebKit::PageClientImpl::setPluginComplexTextInputState):
(WebKit::PageClientImpl::didPerformDictionaryLookup):
(WebKit::PageClientImpl::dismissContentRelativeChildWindows):
(WebKit::PageClientImpl::showCorrectionPanel):
(WebKit::PageClientImpl::recordAutocorrectionResponse):
(WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
(WebKit::PageClientImpl::intrinsicContentSizeDidChange):
(WebKit::PageClientImpl::executeSavedCommandBySelector):
(WebKit::PageClientImpl::showDictationAlternativeUI):
(WebKit::PageClientImpl::closeFullScreenManager):
(WebKit::PageClientImpl::isFullScreen):
(WebKit::PageClientImpl::enterFullScreen):
(WebKit::PageClientImpl::exitFullScreen):
(WebKit::PageClientImpl::beganEnterFullScreen):
(WebKit::PageClientImpl::beganExitFullScreen):
(WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
(WebKit::PageClientImpl::didFinishLoadForMainFrame):
(WebKit::PageClientImpl::didFailLoadForMainFrame):
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
(WebKit::PageClientImpl::removeNavigationGestureSnapshot):
(WebKit::PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates):
(WebKit::PageClientImpl::didPerformImmediateActionHitTest):
(WebKit::PageClientImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::PageClientImpl::showPlatformContextMenu):
(WebKit::PageClientImpl::refView):
(WebKit::PageClientImpl::derefView):
(WebKit::PageClientImpl::startWindowDrag):
(WebKit::PageClientImpl::platformWindow):
(WebKit::PageClientImpl::inspectorAttachmentView):
(WebKit::PageClientImpl::remoteObjectRegistry):
- UIProcess/mac/WebColorPickerMac.h:
- UIProcess/mac/WebColorPickerMac.mm:
(WebKit::WebColorPickerMac::create):
(WebKit::WebColorPickerMac::WebColorPickerMac):
(-[WKColorPopoverMac initWithFrame:inView:]):
- UIProcess/mac/WebContextMenuProxyMac.h:
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::WebContextMenuProxyMac):
- UIProcess/mac/WebPopupMenuProxyMac.h:
(WebKit::WebPopupMenuProxyMac::create):
- UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
Move ownership of WebPageProxy and PageClientImpl to WebViewImpl.
- 3:35 PM Changeset in webkit [191823] by
-
- 5 edits in branches/safari-601.1.46-branch/Source
Versioning.
- 3:33 PM Changeset in webkit [191822] by
-
- 1 copy in tags/Safari-601.1.46.45
New Tag.
- 3:31 PM Changeset in webkit [191821] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, forgot to mark tests as passing for new feature.
- tests/es6.yaml:
- 3:30 PM Changeset in webkit [191820] by
-
- 5 edits in branches/safari-601-branch/Source
Versioning.
- 3:24 PM Changeset in webkit [191819] by
-
- 1 copy in tags/Safari-600.1.3.8
New Tag.
- 3:07 PM Changeset in webkit [191818] by
-
- 2 edits in trunk/LayoutTests
Marking imported/w3c/web-platform-tests/XMLHttpRequest/send-timeout-events.htm as flaky on win
https://bugs.webkit.org/show_bug.cgi?id=150594
Unreviewed test gardening.
- platform/win/TestExpectations:
- 2:57 PM Changeset in webkit [191817] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Unexpected background color behind the Continue button in the DebuggerDashboardView
https://bugs.webkit.org/show_bug.cgi?id=150734
Reviewed by Brian Burg.
- UserInterface/Views/DebuggerDashboardView.css:
(.dashboard.debugger .navigation-bar .item.button):
(.dashboard.debugger .navigation-bar .item.button > .glyph):
- 2:49 PM Changeset in webkit [191816] by
-
- 31 edits in trunk/Source/JavaScriptCore
B3 should be able to compile a control flow diamond
https://bugs.webkit.org/show_bug.cgi?id=150720
Reviewed by Benjamin Poulain.
Adds support for Branch, Jump, Upsilon, and Phi. Adds some basic strength reduction for
comparisons and boolean-like operations.
- assembler/MacroAssembler.cpp:
(WTF::printInternal):
- assembler/MacroAssembler.h:
- b3/B3BasicBlockUtils.h:
(JSC::B3::replacePredecessor):
(JSC::B3::resetReachability):
- b3/B3CheckValue.h:
- b3/B3Common.h:
(JSC::B3::isRepresentableAsImpl):
(JSC::B3::isRepresentableAs):
- b3/B3Const32Value.cpp:
(JSC::B3::Const32Value::subConstant):
(JSC::B3::Const32Value::equalConstant):
(JSC::B3::Const32Value::notEqualConstant):
(JSC::B3::Const32Value::dumpMeta):
- b3/B3Const32Value.h:
- b3/B3Const64Value.cpp:
(JSC::B3::Const64Value::subConstant):
(JSC::B3::Const64Value::equalConstant):
(JSC::B3::Const64Value::notEqualConstant):
(JSC::B3::Const64Value::dumpMeta):
- b3/B3Const64Value.h:
- b3/B3ConstDoubleValue.cpp:
(JSC::B3::ConstDoubleValue::subConstant):
(JSC::B3::ConstDoubleValue::equalConstant):
(JSC::B3::ConstDoubleValue::notEqualConstant):
(JSC::B3::ConstDoubleValue::dumpMeta):
- b3/B3ConstDoubleValue.h:
- b3/B3ControlValue.cpp:
(JSC::B3::ControlValue::~ControlValue):
(JSC::B3::ControlValue::convertToJump):
(JSC::B3::ControlValue::dumpMeta):
- b3/B3ControlValue.h:
- b3/B3LowerToAir.cpp:
(JSC::B3::Air::LowerToAir::imm):
(JSC::B3::Air::LowerToAir::tryStackSlot):
(JSC::B3::Air::LowerToAir::tryUpsilon):
(JSC::B3::Air::LowerToAir::tryPhi):
(JSC::B3::Air::LowerToAir::tryBranch):
(JSC::B3::Air::LowerToAir::tryJump):
(JSC::B3::Air::LowerToAir::tryIdentity):
- b3/B3LoweringMatcher.patterns:
- b3/B3Opcode.h:
- b3/B3Procedure.cpp:
(JSC::B3::Procedure::resetReachability):
(JSC::B3::Procedure::dump):
- b3/B3ReduceStrength.cpp:
- b3/B3UpsilonValue.cpp:
(JSC::B3::UpsilonValue::dumpMeta):
- b3/B3UpsilonValue.h:
(JSC::B3::UpsilonValue::accepts): Deleted.
(JSC::B3::UpsilonValue::phi): Deleted.
(JSC::B3::UpsilonValue::UpsilonValue): Deleted.
- b3/B3Validate.cpp:
- b3/B3Value.cpp:
(JSC::B3::Value::subConstant):
(JSC::B3::Value::equalConstant):
(JSC::B3::Value::notEqualConstant):
(JSC::B3::Value::returnsBool):
(JSC::B3::Value::asTriState):
(JSC::B3::Value::effects):
- b3/B3Value.h:
- b3/B3ValueInlines.h:
(JSC::B3::Value::asInt32):
(JSC::B3::Value::isInt32):
(JSC::B3::Value::hasInt64):
(JSC::B3::Value::asInt64):
(JSC::B3::Value::isInt64):
(JSC::B3::Value::hasInt):
(JSC::B3::Value::asIntPtr):
(JSC::B3::Value::isIntPtr):
(JSC::B3::Value::hasDouble):
(JSC::B3::Value::asDouble):
(JSC::B3::Value::isEqualToDouble):
(JSC::B3::Value::hasNumber):
(JSC::B3::Value::representableAs):
(JSC::B3::Value::asNumber):
(JSC::B3::Value::stackmap):
- b3/air/AirArg.cpp:
(JSC::B3::Air::Arg::dump):
- b3/air/AirArg.h:
(JSC::B3::Air::Arg::resCond):
(JSC::B3::Air::Arg::doubleCond):
(JSC::B3::Air::Arg::special):
(JSC::B3::Air::Arg::isResCond):
(JSC::B3::Air::Arg::isDoubleCond):
(JSC::B3::Air::Arg::isSpecial):
(JSC::B3::Air::Arg::isGP):
(JSC::B3::Air::Arg::isFP):
(JSC::B3::Air::Arg::asResultCondition):
(JSC::B3::Air::Arg::asDoubleCondition):
(JSC::B3::Air::Arg::Arg):
- b3/air/AirCode.cpp:
(JSC::B3::Air::Code::resetReachability):
(JSC::B3::Air::Code::dump):
- b3/air/AirOpcode.opcodes:
- b3/air/opcode_generator.rb:
- b3/testb3.cpp:
(hiddenTruthBecauseNoReturnIsStupid):
(usage):
(JSC::B3::compile):
(JSC::B3::invoke):
(JSC::B3::compileAndRun):
(JSC::B3::test42):
(JSC::B3::testStoreLoadStackSlot):
(JSC::B3::testBranch):
(JSC::B3::testDiamond):
(JSC::B3::testBranchNotEqual):
(JSC::B3::testBranchFold):
(JSC::B3::testDiamondFold):
(JSC::B3::run):
(run):
(main):
- 2:37 PM WebKitNightlyElCapWorkaround edited by
- (diff)
- 2:37 PM Changeset in webkit [191815] by
-
- 30 edits1 add in trunk
[ES6] Add support for toStringTag
https://bugs.webkit.org/show_bug.cgi?id=150696
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
This patch adds support for Symbol.toStringTag. This is a simple
feature, if an object passed to Object.prototype.toString() has a
toStringTag we use the tag in the string rather than the class info.
Added a test that checks this works for all the default supported classes
along with the corresponding prototype and custom cases.
- runtime/ArrayIteratorPrototype.cpp:
(JSC::ArrayIteratorPrototype::finishCreation):
- runtime/CommonIdentifiers.h:
- runtime/JSArrayBufferPrototype.cpp:
(JSC::JSArrayBufferPrototype::finishCreation):
- runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::finishCreation):
- runtime/JSDataViewPrototype.h:
- runtime/JSModuleNamespaceObject.cpp:
(JSC::JSModuleNamespaceObject::finishCreation):
- runtime/JSONObject.cpp:
(JSC::JSONObject::finishCreation):
- runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::finishCreation):
- runtime/JSTypedArrayViewPrototype.cpp:
(JSC::typedArrayViewProtoGetterFuncToStringTag):
(JSC::JSTypedArrayViewPrototype::finishCreation):
- runtime/MapIteratorPrototype.cpp:
(JSC::MapIteratorPrototype::finishCreation):
- runtime/MapPrototype.cpp:
(JSC::MapPrototype::finishCreation):
- runtime/MathObject.cpp:
(JSC::MathObject::finishCreation):
- runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
- runtime/SetIteratorPrototype.cpp:
(JSC::SetIteratorPrototype::finishCreation):
- runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):
- runtime/SmallStrings.cpp:
(JSC::SmallStrings::SmallStrings):
(JSC::SmallStrings::initializeCommonStrings):
(JSC::SmallStrings::visitStrongReferences):
- runtime/SmallStrings.h:
(JSC::SmallStrings::objectStringStart):
- runtime/StringIteratorPrototype.cpp:
(JSC::StringIteratorPrototype::finishCreation):
- runtime/SymbolPrototype.cpp:
(JSC::SymbolPrototype::finishCreation):
- runtime/WeakMapPrototype.cpp:
(JSC::WeakMapPrototype::finishCreation):
- runtime/WeakSetPrototype.cpp:
(JSC::WeakSetPrototype::finishCreation):
- tests/modules/namespace.js:
- tests/stress/symbol-tostringtag.js: Added.
(toStr):
(strName):
(classes.string_appeared_here):
LayoutTests:
Symbol now has toStringTag as a member. Since Object.prototype.toString()
now does a Get on the object being stringed there are new console
error messages when accessing another window's properties.
- http/tests/history/cross-origin-replace-history-object-child-expected.txt:
- http/tests/security/cross-frame-access-custom-expected.txt:
- http/tests/security/cross-frame-access-history-get-expected.txt:
- http/tests/security/cross-frame-access-object-setPrototypeOf-expected.txt:
- js/Object-getOwnPropertyNames-expected.txt:
- js/script-tests/Object-getOwnPropertyNames.js:
- 2:34 PM Changeset in webkit [191814] by
-
- 2 edits in trunk/LayoutTests
http/tests/notifications/legacy/events.html flakily asserts on mac-wk2, updating expectations
https://bugs.webkit.org/show_bug.cgi?id=150736
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 2:21 PM Changeset in webkit [191813] by
-
- 2 edits in trunk/LayoutTests
Marking storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html as flaky on mac-wk1
https://bugs.webkit.org/show_bug.cgi?id=150735
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 2:13 PM Changeset in webkit [191812] by
-
- 2 edits in trunk/Source/WebKit2
Fix Mac CMake build after rr191810.
- PlatformMac.cmake:
Add RemoteObjectInvocation.mm.
- 2:02 PM Changeset in webkit [191811] by
-
- 2 edits in trunk/Source/WebCore
Fix Windows build.
- PlatformWin.cmake:
Add missing files.
- 1:38 PM Changeset in webkit [191810] by
-
- 7 edits2 copies in trunk/Source/WebKit2
Add a separate object that represents a remote object invocation
https://bugs.webkit.org/show_bug.cgi?id=150639
Reviewed by Tim Horton.
- Shared/API/Cocoa/RemoteObjectInvocation.h: Copied from Source/WebKit2/Shared/API/Cocoa/RemoteObjectRegistry.h.
(WebKit::RemoteObjectInvocation::interfaceIdentifier):
(WebKit::RemoteObjectInvocation::encodedInvocation):
- Shared/API/Cocoa/RemoteObjectInvocation.mm: Copied from Source/WebKit2/Shared/API/Cocoa/RemoteObjectRegistry.mm.
(WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
(WebKit::RemoteObjectInvocation::encode):
(WebKit::RemoteObjectInvocation::decode):
- Shared/API/Cocoa/RemoteObjectRegistry.h:
- Shared/API/Cocoa/RemoteObjectRegistry.messages.in:
- Shared/API/Cocoa/RemoteObjectRegistry.mm:
(WebKit::RemoteObjectRegistry::sendInvocation):
(WebKit::RemoteObjectRegistry::invokeMethod):
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
(-[_WKRemoteObjectRegistry _invokeMethod:]):
- Shared/API/Cocoa/_WKRemoteObjectRegistryInternal.h:
- WebKit2.xcodeproj/project.pbxproj:
- 1:16 PM Changeset in webkit [191809] by
-
- 2 edits in trunk/Source/WebKit2
Another speculative build fix.
- UIProcess/API/Cocoa/_WKElementAction.h:
- 1:13 PM Changeset in webkit [191808] by
-
- 2 edits in trunk/LayoutTests
Marking js/regress/ftl-object-sub.html as a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=150730
Unreviewed test gardening.
- 1:12 PM Changeset in webkit [191807] by
-
- 3 edits in trunk/Source/WebKit2
Speculative build fix.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/ios/WKContentViewInteraction.mm:
- 1:05 PM Changeset in webkit [191806] by
-
- 4 edits in trunk/Source/WebKit2
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
- UIProcess/API/mac/WKView.mm:
(-[WKView mouseMoved:]):
(-[WKView mouseDown:]):
(-[WKView mouseUp:]):
(-[WKView mouseDragged:]):
(-[WKView mouseEntered:]):
(-[WKView mouseExited:]):
(-[WKView otherMouseDown:]):
(-[WKView otherMouseDragged:]):
(-[WKView otherMouseUp:]):
(-[WKView rightMouseDown:]):
(-[WKView rightMouseDragged:]):
(-[WKView rightMouseUp:]):
(-[WKView _updateViewExposedRect]): Deleted.
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::mouseMoved):
(WebKit::WebViewImpl::mouseDown):
(WebKit::WebViewImpl::mouseUp):
(WebKit::WebViewImpl::mouseDragged):
Move mouse event handling.
- 12:38 PM Changeset in webkit [191805] by
-
- 9 edits in trunk/Source
Tapping and holding a link should have a share option
https://bugs.webkit.org/show_bug.cgi?id=150693
-and corresponding-
rdar://problem/21319702
Reviewed by Tim Horton.
Source/WebCore:
- English.lproj/Localizable.strings:
Source/WebKit2:
New _WKElementActionType called _WKElementActionTypeShare.
- UIProcess/API/Cocoa/_WKElementAction.h:
- UIProcess/API/Cocoa/_WKElementAction.mm:
(+[_WKElementAction _elementActionWithType:customTitle:assistant:]):
_WKElementActionTypeShare is part of the default actions for links.
- UIProcess/ios/WKActionSheetAssistant.h:
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant defaultActionsForLinkSheet:]):
Handle the sharing part!
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView actionSheetAssistant:shareElementWithURL:rect:]):
To support this in PDF, PDF need to create a _webSelectionAssistant.
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView web_initWithFrame:webView:]):
(-[WKPDFView actionSheetAssistant:openElementAtLocation:]):
(-[WKPDFView actionSheetAssistant:shareElementWithURL:rect:]):
(-[WKPDFView actionSheetAssistant:shouldIncludeAppLinkActionsForElement:]):
- 12:09 PM Changeset in webkit [191804] by
-
- 2 edits in trunk/Source/WebCore
Minor CGColor leaks seen on bots allocated in WebSystemBackdropLayer.mm
https://bugs.webkit.org/show_bug.cgi?id=150722
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-30
Reviewed by Andreas Kling.
- platform/graphics/ca/cocoa/WebSystemBackdropLayer.mm:
(-[WebLightSystemBackdropLayer init]):
(-[WebDarkSystemBackdropLayer init]):
- 11:55 AM Changeset in webkit [191803] by
-
- 2 edits in trunk/Source/WTF
Regression(r191673): Crash in RunLoopTimer::schedule()
https://bugs.webkit.org/show_bug.cgi?id=150723
Reviewed by Anders Carlsson.
We were crashing in RunLoopTimer::schedule() when iterating over the
SchedulePairHashSet. The reason is that we were passing this
SchedulePairHashSet from the main thread to a background thread, which
was not safe because the SchedulePair objects inside the HashSet were
not ThreadSafeRefCounted. This patch makes them ThreadSafeRefCounted.
- wtf/SchedulePair.h:
- 11:52 AM Changeset in webkit [191802] by
-
- 4 edits in trunk/Source/WebKit2
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Anders Carlsson.
- UIProcess/API/mac/WKView.mm:
(-[WKView _wantsKeyDownForEvent:]):
(-[WKView acceptsFirstMouse:]):
(-[WKView shouldDelayWindowOrderingForEvent:]):
(-[WKView validAttributesForMarkedText]):
(-[WKView _windowResizeMouseLocationIsInVisibleScrollerThumb:]):
(-[WKView drawRect:]):
(-[WKView isOpaque]):
(-[WKView mouseDownCanMoveWindow]):
(-[WKView viewDidHide]):
(-[WKView viewDidUnhide]):
(-[WKView _activeSpaceDidChange:]):
(-[WKView hitTest:]):
(-[WKView wantsUpdateLayer]):
(-[WKView canChangeFrameLayout:]):
(-[WKView printOperationWithPrintInfo:forFrame:]):
(+[WKView hideWordDefinitionWindow]):
- UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::wantsUpdateLayer):
(WebKit::WebViewImpl::mouseDownCanMoveWindow):
(WebKit::WebViewImpl::wantsKeyDownForEvent):
(WebKit::WebViewImpl::layerHostingView): Deleted.
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::isOpaque):
(WebKit::WebViewImpl::acceptsFirstMouse):
(WebKit::WebViewImpl::drawRect):
(WebKit::WebViewImpl::canChangeFrameLayout):
(WebKit::WebViewImpl::printOperationWithPrintInfo):
(WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
(WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
(WebKit::WebViewImpl::viewDidHide):
(WebKit::WebViewImpl::viewDidUnhide):
(WebKit::WebViewImpl::activeSpaceDidChange):
(WebKit::WebViewImpl::hitTest):
(WebKit::WebViewImpl::hideWordDefinitionWindow):
(WebKit::WebViewImpl::validAttributesForMarkedText):
Printing and random bits.
- 11:42 AM Changeset in webkit [191801] by
-
- 2 edits in trunk/Source/WebKit/mac
Fixed the build.
- Plugins/WebPluginController.mm:
(WebKit_TSUpdateCheck_alertDidEnd_returnCode_contextInfo_):
(WebKit_NSAlert_beginSheetModalForWindow_modalDelegate_didEndSelector_contextInfo_):
- 11:21 AM Changeset in webkit [191800] by
-
- 2 edits in trunk/Source/WebCore
[EFL] Fix the debug build after r191758
https://bugs.webkit.org/show_bug.cgi?id=150719
Reviewed by Alex Christensen.
- Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
(WebCore::IDBServer::MemoryIDBBackingStore::createObjectStore):
- 11:07 AM Changeset in webkit [191799] by
-
- 3 edits in trunk/Source/WebCore
Fixed the build.
- platform/graphics/Image.cpp:
(WebCore::Image::draw): Deleted an infinitely-recursive implementation that caused the
compiler to emit an error.
- platform/graphics/Image.h:
(WebCore::Image::draw): Made this pure virtual.
- 10:58 AM Changeset in webkit [191798] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (r191691): Unexpected "Share" context menu when right clicking around inspector
https://bugs.webkit.org/show_bug.cgi?id=150699
rdar://problem/23324522
Reviewed by Tim Horton.
Don't create a share menu item if we have nothing to share.
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::createShareMenuItem):
- 10:56 AM Changeset in webkit [191797] by
-
- 2 edits in trunk/Source/WebKit2
Initialize some new WebViewImpl members
- UIProcess/Cocoa/WebViewImpl.h:
Oh well.
- 10:21 AM Changeset in webkit [191796] by
-
- 2 edits in trunk/Source/WebKit2
Fix the build
- UIProcess/API/mac/WKView.mm:
- 10:17 AM Changeset in webkit [191795] by
-
- 4 edits2 adds in trunk
Modern IDB: IDBObjectStore.add() support.
https://bugs.webkit.org/show_bug.cgi?id=150711
Reviewed by Alex Christensen.
Source/WebCore:
Test: storage/indexeddb/modern/basic-add.html
- Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
(WebCore::IDBClient::IDBObjectStore::add):
- Modules/indexeddb/client/IDBTransactionImpl.cpp:
(WebCore::IDBClient::IDBTransaction::requestGetRecord):
LayoutTests:
- storage/indexeddb/modern/basic-add-expected.txt: Added.
- storage/indexeddb/modern/basic-add.html: Added.
- 10:12 AM Changeset in webkit [191794] by
-
- 3 edits in trunk/Source/WebKit2
Fix the build
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent):
- 10:05 AM Changeset in webkit [191793] by
-
- 7 edits in trunk/Tools
[Win] build-jsc and run-javascriptcore-tests do not work
https://bugs.webkit.org/show_bug.cgi?id=150700
Reviewed by Mark Lam.
Correct our build system so that it expects Windows to be using CMake,
and to build the correct sub-projects for our JSC helper scripts.
- Scripts/build-jsc: Make sure to build the testapi harness when building for Windows.
- Scripts/build-webkit: (1) Use the existing 'cmakeBasedPortName()' (2) Use File::Spec rather than hard-coding path delimeters. (3) Refer to Visual Studio 14.0, rather than the unsupported 12.0.
method rather than hard-coding the name based on conditional.
- Scripts/copy-webkitlibraries-to-product-directory: Don't try to grab LLVM libraries on Apple Windows build.
- Scripts/run-javascriptcore-tests:
(testapiPath): Use File::Spec rather than hard-coding path delimeters.
- Scripts/run-jsc: Ditto.
- Scripts/webkitdirs.pm:
(cmakeBasedPortName): Update to return the right value for the Apple
Windows port and the WinCairo port.
(isCMakeBuild): Expect CMake build for all Windows ports.
- 10:04 AM Changeset in webkit [191792] by
-
- 23 edits in trunk/Source/WebCore
Use modern for-loops in WebCore/dom.
https://bugs.webkit.org/show_bug.cgi?id=150664
Reviewed by Darin Adler.
No new tests because there is no behavior change.
- dom/AuthorStyleSheets.cpp:
(WebCore::AuthorStyleSheets::analyzeStyleSheetChange):
(WebCore::filterEnabledNonemptyCSSStyleSheets):
(WebCore::AuthorStyleSheets::activeStyleSheetsContains):
- dom/CheckedRadioButtons.cpp:
(WebCore::RadioButtonGroup::updateValidityForAllButtons):
- dom/ClientRectList.cpp:
(WebCore::ClientRectList::ClientRectList):
(WebCore::ClientRectList::~ClientRectList):
- dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore):
- dom/DOMNamedFlowCollection.cpp:
(WebCore::DOMNamedFlowCollection::DOMNamedFlowCollection):
(WebCore::DOMNamedFlowCollection::length):
(WebCore::DOMNamedFlowCollection::item):
(WebCore::DOMNamedFlowCollection::namedItem):
- dom/DOMStringList.cpp:
(WebCore::DOMStringList::contains):
- dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::~Document):
(WebCore::Document::removedLastRef):
(WebCore::Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale):
(WebCore::Document::updateHoverActiveState):
- dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::copyMarkers):
(WebCore::DocumentMarkerController::removeMarkers):
(WebCore::DocumentMarkerController::repaintMarkers):
(DocumentMarkerController::showMarkers):
- dom/ElementData.cpp:
(WebCore::UniqueElementData::findAttributeByName):
- dom/EventDispatcher.cpp:
(WebCore::EventPath::updateTouchLists):
(WebCore::EventPath::hasEventListeners):
- dom/EventListenerMap.cpp:
(WebCore::EventListenerMap::contains):
(WebCore::EventListenerMap::containsCapturing):
(WebCore::EventListenerMap::eventTypes):
(WebCore::EventListenerMap::add):
(WebCore::EventListenerMap::find):
(WebCore::copyListenersNotCreatedFromMarkupToTarget):
(WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
(WebCore::EventListenerIterator::EventListenerIterator):
- dom/EventTarget.cpp:
(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::getAttributeEventListener):
(WebCore::EventTarget::removeAllEventListeners):
- dom/IdTargetObserverRegistry.cpp:
(WebCore::IdTargetObserverRegistry::notifyObserversInternal):
- dom/MessagePort.cpp:
(WebCore::MessagePort::postMessage):
(WebCore::MessagePort::disentanglePorts):
- dom/MutationObserver.cpp:
(WebCore::MutationObserver::observe):
(WebCore::MutationObserver::deliver):
(WebCore::MutationObserver::deliverAllMutations):
- dom/NamedFlowCollection.cpp:
(WebCore::NamedFlowCollection::namedFlows):
(WebCore::NamedFlowCollection::createCSSOMSnapshot):
- dom/Node.cpp:
(WebCore::Node::notifyMutationObserversNodeWillDetach):
- dom/Range.cpp:
(WebCore::Range::processNodes):
(WebCore::Range::processAncestorsAndTheirSiblings):
(WebCore::Range::absoluteBoundingBox):
(WebCore::Range::collectSelectionRects):
- dom/ScriptRunner.cpp:
(WebCore::ScriptRunner::timerFired):
- dom/ScriptedAnimationController.cpp:
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
- dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::matches):
(WebCore::SelectorDataList::executeFastPathForIdSelector):
(WebCore::SelectorDataList::executeSingleMultiSelectorData):
(WebCore::SelectorDataList::executeCompiledSingleMultiSelectorData):
(WebCore::SelectorDataList::execute):
- dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
- 10:02 AM Changeset in webkit [191791] by
-
- 6 edits in trunk/Source/WebKit2
WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174
Reviewed by Darin Adler.
- UIProcess/API/mac/WKView.mm:
(-[WKView doCommandBySelector:]):
(-[WKView insertText:]):
(-[WKView insertText:replacementRange:]):
(-[WKView inputContext]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyUp:]):
(-[WKView keyDown:]):
(-[WKView flagsChanged:]):
(-[WKView setMarkedText:selectedRange:replacementRange:]):
(-[WKView unmarkText]):
(-[WKView selectedRange]):
(-[WKView hasMarkedText]):
(-[WKView markedRange]):
(-[WKView attributedSubstringForProposedRange:actualRange:]):
(-[WKView characterIndexForPoint:]):
(-[WKView firstRectForCharacterRange:actualRange:]):
(-[WKView selectedRangeWithCompletionHandler:]):
(-[WKView markedRangeWithCompletionHandler:]):
(-[WKView hasMarkedTextWithCompletionHandler:]):
(-[WKView attributedSubstringForProposedRange:completionHandler:]):
(-[WKView firstRectForCharacterRange:completionHandler:]):
(-[WKView characterIndexForPoint:completionHandler:]):
(-[WKView _superPerformKeyEquivalent:]):
(-[WKView _superKeyDown:]):
(extractUnderlines): Deleted.
(-[WKView _collectKeyboardLayoutCommandsForEvent:to:]): Deleted.
(-[WKView _interpretKeyEvent:completionHandler:]): Deleted.
(-[WKView NO_RETURN_DUE_TO_ASSERT]): Deleted.
(-[WKView _interpretKeyEvent:savingCommandsTo:]): Deleted.
(-[WKView _executeSavedKeypressCommands]): Deleted.
(-[WKView _doneWithKeyEvent:eventWasHandled:]): Deleted.
- UIProcess/API/mac/WKViewInternal.h:
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::doneWithKeyEvent):
(WebKit::extractUnderlines):
(WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent):
(WebKit::WebViewImpl::interpretKeyEvent):
(WebKit::WebViewImpl::doCommandBySelector):
(WebKit::WebViewImpl::insertText):
(WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
(WebKit::WebViewImpl::markedRangeWithCompletionHandler):
(WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
(WebKit::WebViewImpl::attributedSubstringForProposedRange):
(WebKit::WebViewImpl::firstRectForCharacterRange):
(WebKit::WebViewImpl::characterIndexForPoint):
(WebKit::WebViewImpl::inputContext):
(WebKit::WebViewImpl::unmarkText):
(WebKit::WebViewImpl::setMarkedText):
(WebKit::WebViewImpl::selectedRange):
(WebKit::WebViewImpl::hasMarkedText):
(WebKit::WebViewImpl::markedRange):
(WebKit::WebViewImpl::performKeyEquivalent):
(WebKit::WebViewImpl::keyUp):
(WebKit::WebViewImpl::keyDown):
(WebKit::WebViewImpl::flagsChanged):
(WebKit::WebViewImpl::executeSavedKeypressCommands):
- UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::doneWithKeyEvent):
Move NSTextInputClient implementation.
- 9:51 AM Changeset in webkit [191790] by
-
- 2 edits in branches/safari-601-branch/LayoutTests
Merged r188366.
- 6:25 AM Changeset in webkit [191789] by
-
- 11 edits2 copies4 moves in trunk/Source/WebCore
Make every port implement MainThreadSharedTimer instead of using global functions
https://bugs.webkit.org/show_bug.cgi?id=150498
Reviewed by Darin Adler.
Move MainThreadSharedTimer to its own files and add the common
implementation there.
- CMakeLists.txt: Add MainThreadSharedTimer.cpp.
- PlatformEfl.cmake: Update filenames.
- PlatformGTK.cmake: Ditto.
- PlatformMac.cmake: Ditto.
- PlatformWin.cmake: Ditto.
- platform/MainThreadSharedTimer.cpp: Copied from Source/WebCore/platform/efl/SharedTimerEfl.cpp.
(WebCore::MainThreadSharedTimer::singleton):
(WebCore::MainThreadSharedTimer::MainThreadSharedTimer):
(WebCore::MainThreadSharedTimer::setFiredFunction):
(WebCore::MainThreadSharedTimer::fired):
- platform/MainThreadSharedTimer.h: Copied from Source/WebCore/platform/gtk/SharedTimerGtk.cpp.
- platform/SharedTimer.h: Remove MainThreadSharedTimer
implementation and reindent the code.
(WebCore::SharedTimer::SharedTimer):
(WebCore::SharedTimer::~SharedTimer):
(WebCore::SharedTimer::invalidate):
- platform/ThreadTimers.cpp:
(WebCore::ThreadTimers::ThreadTimers): Use MainThreadSharedTimer::singleton().
(WebCore::ThreadTimers::setSharedTimer): Use a lambda function
instead of a pointer to a static method.
(WebCore::ThreadTimers::sharedTimerFired): Deleted.
- platform/ThreadTimers.h: Removed unsused static method sharedTimerFired.
- platform/cf/MainThreadSharedTimerCF.cpp: Renamed from Source/WebCore/platform/cf/SharedTimerCF.cpp.
(WebCore::applicationDidBecomeActive):
(WebCore::setupPowerObserver):
(WebCore::timerFired):
(WebCore::restartSharedTimer):
(WebCore::MainThreadSharedTimer::invalidate):
(WebCore::MainThreadSharedTimer::setFireInterval):
(WebCore::MainThreadSharedTimer::stop):
- platform/efl/MainThreadSharedTimerEfl.cpp: Renamed from Source/WebCore/platform/efl/SharedTimerEfl.cpp.
(WebCore::timerEvent):
(WebCore::MainThreadSharedTimer::stop):
(WebCore::MainThreadSharedTimer::setFireInterval):
(WebCore::MainThreadSharedTimer::invalidate):
- platform/gtk/MainThreadSharedTimerGtk.cpp: Renamed from Source/WebCore/platform/gtk/SharedTimerGtk.cpp.
(WebCore::MainThreadSharedTimer::setFireInterval):
(WebCore::MainThreadSharedTimer::stop):
(WebCore::MainThreadSharedTimer::invalidate):
- platform/win/MainThreadSharedTimerWin.cpp: Renamed from Source/WebCore/platform/win/SharedTimerWin.cpp.
(WebCore::TimerWindowWndProc):
(WebCore::initializeOffScreenTimerWindow):
(WebCore::queueTimerProc):
(WebCore::MainThreadSharedTimer::setFireInterval):
(WebCore::MainThreadSharedTimer::stop):
(WebCore::MainThreadSharedTimer::invalidate):
- workers/WorkerRunLoop.cpp: Update WorkerSharedTimer
implementation to use std::function instead of a pointer. Also
mark the class as final and the virtual implementations as override.
- 5:46 AM Changeset in webkit [191788] by
-
- 6 edits in trunk/Source
[GTK] Move the socket polling off the WorkQueue
https://bugs.webkit.org/show_bug.cgi?id=150593
Reviewed by Anders Carlsson.
Source/WebKit2:
Create the socket poll source in Connection::open and attach it to
the connection work queue context.
- Platform/IPC/Connection.h:
- Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::platformInvalidate):
(IPC::Connection::open):
Source/WTF:
It doesn't really belong to the WorkQueue, it's only used by the
WebKit2 connection, so it can be moved there.
- wtf/WorkQueue.h:
- wtf/glib/WorkQueueGLib.cpp:
(WTF::WorkQueue::registerSocketEventHandler): Deleted.
(WTF::WorkQueue::unregisterSocketEventHandler): Deleted.
- 5:12 AM Changeset in webkit [191787] by
-
- 8 edits in trunk/Source
[GTK] Use RunLoop::Timer instead of GMainLoopSource
https://bugs.webkit.org/show_bug.cgi?id=150592
Reviewed by Žan Doberšek.
Source/WebCore:
- platform/network/ResourceHandle.h:
- platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal):
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::cleanupSoupRequestOperation):
(WebCore::ResourceHandle::timeoutFired):
(WebCore::ResourceHandle::sendPendingRequest):
(WebCore::ResourceHandle::platformSetDefersLoading):
Source/WebKit2:
- Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::DownloadClient):
(WebKit::DownloadClient::didReceiveData):
(WebKit::DownloadClient::handleResponseLater):
- UIProcess/gtk/GestureController.cpp:
(WebKit::GestureController::DragGesture::begin):
(WebKit::GestureController::DragGesture::update):
(WebKit::GestureController::DragGesture::end):
(WebKit::GestureController::DragGesture::longPressFired):
(WebKit::GestureController::DragGesture::DragGesture):
(WebKit::GestureController::ZoomGesture::scaleChanged):
(WebKit::GestureController::ZoomGesture::ZoomGesture):
- UIProcess/gtk/GestureController.h:
- 4:28 AM Changeset in webkit [191786] by
-
- 7 edits in trunk/Source
[GTK] Use a persistent main loop source in RunLoop glib implementation
https://bugs.webkit.org/show_bug.cgi?id=150590
Reviewed by Žan Doberšek.
Source/WebKit2:
Use RunLoop::dispatch() instead of
GMainLoopSource::scheduleAndDeleteOnDestroy in a couple of simple
cases.
- NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
(WebKit::NetworkCache::runTaskInQueue):
- UIProcess/gtk/DragAndDropHandler.cpp:
(WebKit::DragAndDropHandler::dragLeave):
Source/WTF:
It's more efficient than creating and destroying a new source for
every dispatch and it simplifies the code.
- wtf/RunLoop.h:
- wtf/glib/MainThreadGLib.cpp:
(WTF::scheduleDispatchFunctionsOnMainThread): Use
RunLoop::dispatch() instead of GMainLoopSource::scheduleAndDeleteOnDestroy().
- wtf/glib/RunLoopGLib.cpp:
(WTF::RunLoop::RunLoop): Create and setup the persistent source.
(WTF::RunLoop::~RunLoop): Destroy the persistent source.
(WTF::RunLoop::stop): Stop the persistent source before stopping
the main loop.
(WTF::RunLoop::wakeUp): Make the persistent source active. We
no longer need to explicitly wakeup the context.
(WTF::RunLoop::TimerBase::TimerBase): Create and setup the
persistent source.
(WTF::RunLoop::TimerBase::~TimerBase): Destroy the persistent source.
(WTF::RunLoop::TimerBase::updateReadyTime): Set the ready time
according to the fire interval.
(WTF::RunLoop::TimerBase::start): Make the persistent source active.
(WTF::RunLoop::TimerBase::stop): Stop the persistent source.
(WTF::RunLoop::TimerBase::isActive): Return whether the
persistent source is active.
- 3:51 AM Changeset in webkit [191785] by
-
- 3 edits in trunk
[EFL] Add Shadow DOM feature
https://bugs.webkit.org/show_bug.cgi?id=150611
Reviewed by Csaba Osztrogonác.
- Source/cmake/OptionsEfl.cmake:
- Source/cmake/WebKitFeatures.cmake: Add ENABLE_SHADOW_DOM cmake variable.
- 1:48 AM Changeset in webkit [191784] by
-
- 2 edits in trunk/Tools
[JHBuild] Do not try to update the dependencies if jhbuild configuration hasn't changed
https://bugs.webkit.org/show_bug.cgi?id=150665
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2015-10-30
Reviewed by Csaba Osztrogonác.
We check it only to wipe the directory or not, but we are still
tryihng to update every module even when the configuration hasn't
changed. This is problematic because it makes the whole build fail
when any repository fails to checkout an already checked out
revision, because the server is down for example. This is even
more problematic for the bots that skip perfectly valid revisions.
It's still possible to force an update passing --force command
line argument.
- Scripts/update-webkit-libs-jhbuild:
(deleteJhbuildMd5): Delete the md5sum files if exist.
(runJhbuild): Return early if the md5sum files haven't
changed. Only write them after a successful build and delete them
if the build fails to ensure we don't skip next run.
- 1:31 AM Changeset in webkit [191783] by
-
- 5 edits in trunk/Tools
[GTK] Fix MacCLang build errors in Tools
https://bugs.webkit.org/show_bug.cgi?id=150031
Reviewed by Carlos Garcia Campos.
- TestWebKitAPI/PlatformWebView.h: Fix PlatformWindow typedef on OSX flavor of the GTK port.
- TestWebKitAPI/gtk/PlatformWebViewGtk.cpp: Include WKView.h for WKViewCreate().
- WebKitTestRunner/PlatformWebView.h: Fix PlatformWindow typedef on OSX flavor of the GTK port.
- WebKitTestRunner/gtk/PlatformWebViewGtk.cpp: Include WKView.h for WKViewCreate().
- 1:17 AM Changeset in webkit [191782] by
-
- 2 edits in trunk/Source/WTF
[GTK][Mac] fix WTF build
https://bugs.webkit.org/show_bug.cgi?id=150502
Reviewed by Alex Christensen.
- wtf/CMakeLists.txt: Add CommonCryptoSPI.h in the headers.
- 1:01 AM Changeset in webkit [191781] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION(r191776): EFL build broken.
https://bugs.webkit.org/show_bug.cgi?id=150713
Reviewed by Csaba Osztrogonác.
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::performPutOrAdd):