WebKit-https.git
7 years agoPlease clarify "pending" reporting at build.webkit.org/dashboard
ap@apple.com [Thu, 26 Dec 2013 18:01:50 +0000 (18:01 +0000)]
Please clarify "pending" reporting at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122191

Reviewed by Timothy Hatcher.

Reporting the count of pending runs didn't make a lot of sense - first, runs are
coalesced and sometimes even out of order, and second, buildbot's notion of pending
run was confusingly different from dashboard's.

Let's display how many SVN revisions are pending. This can be somewhat misleading
too, because some revisions (like those for other platforms) don't trigger builds,
but it's better than what we had.

This patch also lays the groundwork for displaying detailed information about
pending revisions.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus): Instead of
building pending status line directly, call newly added base class method.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus): Ditto.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView): Listen for events when new SVN revisions are landed, and update the view.
(BuildbotQueueView.prototype._appendPendingRevisionCount): Add a line for pending
SVN revisions. It uses a new style, StatusLineView.Status.NoBubble, because this
information is secondary, and doesn't need as much attention.
(BuildbotQueueView.prototype.revisionLinksForIteration): Build revisionURL through
Trac, not through Buildbot.
(BuildbotQueueView.prototype._newCommitsRecorded): Schedule an update, just like when
iterations are updated.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
Initialize a global webkitTrac object.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
Added a new style for messages without a bubble.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
Added a model class for Trac, which keeps track of SVN timeline, and notifies
listeners of changes. It uses an RSS interface to Trac, because there is no JSON one.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
(loadXML): Added a function to load XML asynchronouly, just like existing JSON.load.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
Removed tracRevisionURL() function. Now that we have a Trac object, it just makes
more sense to build trac URLs through it.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
Load Trac.js.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMake Text::createTextRenderer() take a const RenderStyle&.
akling@apple.com [Thu, 26 Dec 2013 18:00:39 +0000 (18:00 +0000)]
Make Text::createTextRenderer() take a const RenderStyle&.
<https://webkit.org/b/126136>

Nuke a FIXME about constifying a RenderStyle& local.

Reviewed by Anders Carlsson.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMove more inlines from RenderObject to RenderElement.
akling@apple.com [Thu, 26 Dec 2013 17:58:56 +0000 (17:58 +0000)]
Move more inlines from RenderObject to RenderElement.
<https://webkit.org/b/126134>

Lift some inline functions that use style() from RenderObject over
to RenderElement, making them branchless.

Reviewed by Anders Carlsson.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[WK2][CoordinatedGraphics] Removing duplicate scale information from WebVIew.cpp
thiago.lacerda@openbossa.org [Thu, 26 Dec 2013 15:04:22 +0000 (15:04 +0000)]
[WK2][CoordinatedGraphics] Removing duplicate scale information from WebVIew.cpp
https://bugs.webkit.org/show_bug.cgi?id=126243

Reviewed by Benjamin Poulain.

The scale factor of the WebView must reflect the same information present in
WebPageProxy.
Previously, in WebView.cpp, there was a m_contentScaleFactor member, which adds
information duplication and needs to be synchronizing with pageScaleFactor in
WebPageProxy. We can avoid this by just making WebView access and set WebPageProxy's
pageScaleFactor directly.

* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::WebView):
(WebKit::WebView::setContentScaleFactor):
(WebKit::WebView::transformToScene):
(WebKit::WebView::visibleContentsSize):
* UIProcess/CoordinatedGraphics/WebView.h:
(WebKit::WebView::contentScaleFactor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed build fix after r159526.
changseok.oh@collabora.com [Thu, 26 Dec 2013 09:24:36 +0000 (09:24 +0000)]
Unreviewed build fix after r159526.
isBoxValue is used at out of ENABLE_CSS_SHAPES gaurd. It causes a compile failure.
So I moved isBoxValue to out side of ENABLE_CSS_SHAPES.

* css/CSSParser.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSet m_pos as private in InlineIterator, and use getter and setter functions.
gyuyoung.kim@samsung.com [Thu, 26 Dec 2013 07:32:04 +0000 (07:32 +0000)]
Set m_pos as private in InlineIterator, and use getter and setter functions.
https://bugs.webkit.org/show_bug.cgi?id=125614

Reviewed by Alexey Proskuryakov.

InlineIterator has been exported m_pos as public directly though it is member variable.
This patch set it as private, and add getter/setter functions for it.

No new tests, no behavior changes.

* rendering/InlineIterator.h:
(WebCore::InlineIterator::setOffset):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::InlineBidiResolver::appendRun):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::appendRunsForObject):
(WebCore::constructBidiRunsForLine):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::matchedEndLine):
(WebCore::LineBreaker::nextSegmentBreak):
* rendering/line/BreakingContextInlineHeaders.h:
(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleFloat):
(WebCore::iteratorIsBeyondEndOfRenderCombineText):
(WebCore::ensureCharacterGetsLineBox):
(WebCore::BreakingContext::handleText):
(WebCore::checkMidpoints):
(WebCore::BreakingContext::handleEndOfLine):
* rendering/line/TrailingObjects.cpp:
(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Delete file.edc and file_*.png.
commit-queue@webkit.org [Thu, 26 Dec 2013 05:12:00 +0000 (05:12 +0000)]
[EFL] Delete file.edc and file_*.png.
https://bugs.webkit.org/show_bug.cgi?id=125134

Patch by Kim Byung Jun <bj1987.kim@samsung.com> on 2013-12-25
Reviewed by Gyuyoung Kim.

File_theme uses button form.

* platform/efl/DefaultTheme/CMakeLists.txt:
* platform/efl/DefaultTheme/default.edc:
* platform/efl/DefaultTheme/widget/file/file.edc: Removed.
* platform/efl/DefaultTheme/widget/file/file_focus.png: Removed.
* platform/efl/DefaultTheme/widget/file/file_hover.png: Removed.
* platform/efl/DefaultTheme/widget/file/file_normal.png: Removed.
* platform/efl/DefaultTheme/widget/file/file_press.png: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Activate keyboard homepage shortcut on efl minibrowser.
commit-queue@webkit.org [Thu, 26 Dec 2013 03:06:04 +0000 (03:06 +0000)]
[EFL] Activate keyboard homepage shortcut on efl minibrowser.
https://bugs.webkit.org/show_bug.cgi?id=124636

Patch by Jongwoo Choi <jw0330.choi@samsung.com> on 2013-12-25
Reviewed by Gyuyoung Kim.

* MiniBrowser/efl/main.c: Added.
(on_key_down): Add a homepage shortcut using Alt + Home key.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Nix] Adding createDragImageIconForCachedImageFilename method to DragImageNix
thiago.lacerda@openbossa.org [Thu, 26 Dec 2013 03:03:52 +0000 (03:03 +0000)]
[Nix] Adding createDragImageIconForCachedImageFilename method to DragImageNix
https://bugs.webkit.org/show_bug.cgi?id=126230

Reviewed by Daniel Bates.

Also returning nullptr in other functions that were returning 0 as a pointer.

* platform/nix/DragImageNix.cpp:
(WebCore::createDragImageFromImage):
(WebCore::createDragImageIconForCachedImage):
(WebCore::createDragImageIconForCachedImageFilename):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Nix] Fixing DragData::asFragment signature in DragDataNix.cpp
thiago.lacerda@openbossa.org [Thu, 26 Dec 2013 02:57:54 +0000 (02:57 +0000)]
[Nix] Fixing DragData::asFragment signature in DragDataNix.cpp
https://bugs.webkit.org/show_bug.cgi?id=126229

Reviewed by Daniel Bates.

* platform/nix/DragDataNix.cpp:
(WebCore::DragData::asFragment):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161080 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Nix] Building with DRAG_SUPPORT enabled
thiago.lacerda@openbossa.org [Thu, 26 Dec 2013 02:51:49 +0000 (02:51 +0000)]
[Nix] Building with DRAG_SUPPORT enabled
https://bugs.webkit.org/show_bug.cgi?id=126233

Reviewed by Daniel Bates.

* wtf/nix/FeatureDefinesNix.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRevision selection behavior at build.webkit.org/dashboard is annoying
ap@apple.com [Thu, 26 Dec 2013 00:33:36 +0000 (00:33 +0000)]
Revision selection behavior at build.webkit.org/dashboard is annoying
https://bugs.webkit.org/show_bug.cgi?id=126235

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype.revisionLinksForIteration): Make the whole message
selectable, not just the numbers in it.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(.selectable): Make selectable enable default behavior, not user-select:all.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r161033 and r161074.
commit-queue@webkit.org [Thu, 26 Dec 2013 00:29:42 +0000 (00:29 +0000)]
Unreviewed, rolling out r161033 and r161074.
http://trac.webkit.org/changeset/161033
http://trac.webkit.org/changeset/161074
https://bugs.webkit.org/show_bug.cgi?id=126240

Oliver says that a rollout would be better (Requested by ap on
#webkit).

Source/JavaScriptCore:

* API/JSObjectRef.cpp:
(JSObjectSetProperty):
* dfg/DFGOperations.cpp:
(JSC::DFG::operationPutByValInternal):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/Arguments.cpp:
(JSC::Arguments::putByIndex):
* runtime/ArrayPrototype.cpp:
(JSC::putProperty):
(JSC::arrayProtoFuncPush):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitiveByIndex):
* runtime/JSCell.cpp:
(JSC::JSCell::putByIndex):
* runtime/JSFunction.cpp:
(JSC::JSFunction::put):
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):
* runtime/JSONObject.cpp:
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC::JSObject::putByIndex):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::deleteProperty):
* runtime/JSObject.h:
(JSC::JSObject::putDirect):
* runtime/Lookup.h:
(JSC::putEntry):
(JSC::lookupPut):
* runtime/PutPropertySlot.h:
(JSC::PutPropertySlot::PutPropertySlot):
(JSC::PutPropertySlot::setNewProperty):
(JSC::PutPropertySlot::isCacheable):

Source/WebCore:

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject setValue:forKey:]):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::putByIndex):
* bridge/NP_jsobject.cpp:
(_NPN_SetProperty):

Source/WebKit/mac:

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit2:

* WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::NPJSObject::setProperty):

LayoutTests:

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoDatabaseProcess: Implement version changing
beidson@apple.com [Thu, 26 Dec 2013 00:29:03 +0000 (00:29 +0000)]
DatabaseProcess: Implement version changing
https://bugs.webkit.org/show_bug.cgi?id=126099

Reviewed by Sam Weinig.

Source/WebCore:

No new tests (No change in WebCore behavior).

* Modules/indexeddb/IDBTransactionBackend.cpp:
(WebCore::IDBTransactionBackend::commit): Update some logging.

* Modules/indexeddb/IDBTransactionBackendOperations.cpp:
(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform): Move some things that used to be in
  IDBServerConnectionLevelDB::changeDatabaseVersion to this cross-platform location.
* Modules/indexeddb/IDBTransactionBackendOperations.h:
(WebCore::IDBDatabaseBackend::VersionChangeOperation::transaction):

* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
(WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion): Move the actual updating of the database backend
  metadata to the VersionChangeOperation.

Source/WebKit2:

* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Add logging.
(WebKit::DatabaseProcessIDBConnection::openTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::beginTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::commitTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::resetTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::rollbackTransaction): Ditto.
(WebKit::DatabaseProcessIDBConnection::changeDatabaseVersion): Implement this!
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::shutdown): Clean up all requests, and also cleanup the backing store
  on the database queue.
(WebKit::UniqueIDBDatabase::shutdownBackingStore): Shutdown the backing store.
(WebKit::UniqueIDBDatabase::didShutdownBackingStore):
(WebKit::UniqueIDBDatabase::changeDatabaseVersion): Pass along the new version to the database queue.
(WebKit::UniqueIDBDatabase::didChangeDatabaseVersion):
(WebKit::UniqueIDBDatabase::changeDatabaseVersionInBackingStore): Set the new version in the backing store.
(WebKit::UniqueIDBDatabase::postMainThreadTask): Add a ref() to keep the database alive incase it is being
  shutdown on the main thread.
(WebKit::UniqueIDBDatabase::performNextMainThreadTask): Balance the ref() from postMainThreadTask, and
  accept an empty mainThreadTask queue.
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h: Add changeDatabaseVersion.

Flesh out SQLiteIDBTransaction to actually operation on a SQLiteTransaction in a real SQLiteDatabase:
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:
(WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::~SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::begin):
(WebKit::SQLiteIDBTransaction::commit):
(WebKit::SQLiteIDBTransaction::reset):
(WebKit::SQLiteIDBTransaction::rollback):
(WebKit::SQLiteIDBTransaction::inProgress):
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
(WebKit::SQLiteIDBTransaction::create):
(WebKit::SQLiteIDBTransaction::mode):

Rename m_metadataDB to m_sqliteDB,
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::openSQLiteDatabaseAtPath): Disable threading checks on the DB
  as work queues can change threads.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::changeDatabaseVersion): After validating the transaction, actually
  update the version number on disk.
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::~WebIDBServerConnection): Make sure to abort in-flight requests.
(WebKit::WebIDBServerConnection::changeDatabaseVersion):
(WebKit::WebIDBServerConnection::didChangeDatabaseVersion):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Mac] [WK2] http/tests/security/cross-frame-access-put.html fails
ap@apple.com [Thu, 26 Dec 2013 00:09:52 +0000 (00:09 +0000)]
[Mac] [WK2] http/tests/security/cross-frame-access-put.html fails
https://bugs.webkit.org/show_bug.cgi?id=116649

* platform/mac-wk2/TestExpectations: Removing an expectation for this old bug that
was no longer occurring. Failures on this test are now tracked via bug 126238.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161075 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoREGRESSION (r161033): http/tests/security/cross-frame-access-put.html fails
ap@apple.com [Wed, 25 Dec 2013 23:59:31 +0000 (23:59 +0000)]
REGRESSION (r161033): http/tests/security/cross-frame-access-put.html fails
https://bugs.webkit.org/show_bug.cgi?id=126238

* TestExpectations: Marking the test as failing for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoREGRESSION (Lazy tree creation): css3/calc/transitions-dependent.html is frequently...
ap@apple.com [Wed, 25 Dec 2013 23:54:17 +0000 (23:54 +0000)]
REGRESSION (Lazy tree creation): css3/calc/transitions-dependent.html is frequently failing
https://bugs.webkit.org/show_bug.cgi?id=126142

* TestExpectations: Marked it as flaky.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161073 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoDFG PhantomArguments shouldn't rely on a dead Phi graph
fpizlo@apple.com [Wed, 25 Dec 2013 23:44:57 +0000 (23:44 +0000)]
DFG PhantomArguments shouldn't rely on a dead Phi graph
https://bugs.webkit.org/show_bug.cgi?id=126218

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This change dramatically rationalizes our handling of PhantomArguments (i.e.
speculative elision of arguments object allocation).

It's now the case that if we decide that we can elide arguments allocation, we just
turn the arguments-creating node into a PhantomArguments and mark all locals that
it's stored to as being arguments aliases. Being an arguments alias and being a
PhantomArguments means basically the same thing: in DFG execution you have the empty
value, on OSR exit an arguments object is allocated in your place, and all operations
that use the value now just refer directly to the actual arguments in the call frame
header (or the arguments we know that we passed to the call, in case of inlining).

This means that we no longer have arguments simplification creating a dead Phi graph
that then has to be interpreted by the OSR exit logic. That sort of never made any
sense.

This means that PhantomArguments now has a clear story in SSA: basically SSA just
gets rid of the "locals" but everything else is the same.

Finally, this means that we can more easily get rid of forward exiting. As I was
working on the code to get rid of forward exiting, I realized that I'd have to
carefully preserve the special meanings of MovHint and SetLocal in the case of
PhantomArguments. It was really bizarre: even the semantics of MovHint were tied to
our specific treatment of PhantomArguments. After this change this is no longer the
case.

One of the really cool things about this change is that arguments reification now
just becomes a special kind of FlushFormat. This further unifies things: it means
that a MovHint(PhantomArguments) and a SetLocal(PhantomArguments) both have the same
meaning, since both of them dictate that the way we recover the local on exit is by
reifying arguments. Previously, the SetLocal(PhantomArguments) case needed some
special handling to accomplish this.

A downside of this approach is that we will now emit code to store the empty value
into aliased arguments variables, and we will even emit code to load that empty value
as well. As far as I can tell this doesn't cost anything, since PhantomArguments are
most profitable in cases where it allows us to simplify control flow and kill the
arguments locals entirely. Of course, this isn't an issue in SSA form since SSA form
also eliminates the locals.

* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
(JSC::DFG::ArgumentsSimplificationPhase::detypeArgumentsReferencingPhantomChild):
* dfg/DFGFlushFormat.cpp:
(WTF::printInternal):
* dfg/DFGFlushFormat.h:
(JSC::DFG::resultFor):
(JSC::DFG::useKindFor):
(JSC::DFG::dataFormatFor):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGValueSource.h:
(JSC::DFG::ValueSource::ValueSource):
(JSC::DFG::ValueSource::forFlushFormat):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::flushFormat):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):

LayoutTests:

Reviewed by Oliver Hunt.

Added a test for an obvious case that I don't think we had coverage for in
microbenchmarks. Of course, this case was already covered by more complex tests.

* js/regress/inline-arguments-aliased-access-expected.txt: Added.
* js/regress/inline-arguments-aliased-access.html: Added.
* js/regress/script-tests/inline-arguments-aliased-access.js: Added.
(foo):
(bar):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161072 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Fix CMake style errors in Source/WebKit2/PlatformGTK.cmake
mrobinson@webkit.org [Wed, 25 Dec 2013 20:39:32 +0000 (20:39 +0000)]
[GTK] [CMake] Fix CMake style errors in Source/WebKit2/PlatformGTK.cmake
https://bugs.webkit.org/show_bug.cgi?id=126221

Reviewed by Gustavo Noronha Silva.

* PlatformGTK.cmake: Fix CMake style errors.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161071 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Properly name the JavaScriptCore library
mrobinson@webkit.org [Wed, 25 Dec 2013 20:38:32 +0000 (20:38 +0000)]
[GTK] [CMake] Properly name the JavaScriptCore library
https://bugs.webkit.org/show_bug.cgi?id=126220

Reviewed by Gustavo Noronha Silva.

* Source/cmake/OptionsGTK.cmake: Set the JSC library name properly.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161070 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd a description about webkit-patch setup-git-clone to checkout.html
rniwa@webkit.org [Wed, 25 Dec 2013 19:24:07 +0000 (19:24 +0000)]
Add a description about webkit-patch setup-git-clone to checkout.html
https://bugs.webkit.org/show_bug.cgi?id=126217

Reviewed by Philippe Normand.

Added.

* building/checkout.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161069 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Clean up generated sources directories
mrobinson@webkit.org [Wed, 25 Dec 2013 19:07:36 +0000 (19:07 +0000)]
[GTK] [CMake] Clean up generated sources directories
https://bugs.webkit.org/show_bug.cgi?id=126216

Reviewed by Gustavo Noronha Silva.

.:

* Source/cmake/OptionsGTK.cmake: Pre-define the main derived sources directories
so that they definitions can be shared easily throughout the build system.

Source/WebCore:

* PlatformGTK.cmake: Use the new directory variables.

Source/WebKit:

* PlatformGTK.cmake: Use the new derived source variables.

Source/WebKit2:

* PlatformGTK.cmake: Use the new derived sources variables.
* UIProcess/API/gtk/tests/CMakeLists.txt: Ditto.

Tools:

* DumpRenderTree/PlatformGTK.cmake: Use the new derived sources variables.
* GtkLauncher/CMakeLists.txt: Ditto.
* MiniBrowser/gtk/CMakeLists.txt: Ditto.
* TestWebKitAPI/CMakeLists.txt: Now that the EFL and GTK+ forwarding header locations differ,
move the platform-specific includes to the EFL and GTK platform files. Also clean up forwarding
header generation into on target.
* TestWebKitAPI/PlatformEfl.cmake: Added EFL-specific locations to the include list.
* TestWebKitAPI/PlatformGTK.cmake: Added GTK-specific locations to the include list.
* WebKitTestRunner/CMakeLists.txt: Same as for TestWebKitAPI.
* WebKitTestRunner/PlatformEfl.cmake: Ditto.
* WebKitTestRunner/PlatformGTK.cmake: Ditto.
* gtk/generate-gtkdoc: Update to select the appropriate derived sources locations for
the cmake build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161068 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSupport <box> values parsing on 'clip-path' property
krit@webkit.org [Wed, 25 Dec 2013 19:03:50 +0000 (19:03 +0000)]
Support <box> values parsing on 'clip-path' property
https://bugs.webkit.org/show_bug.cgi?id=126147

Reviewed by Ryosuke Niwa.

Source/WebCore:

Support parsing of the background reference boxes, margin-box and bounding-box.
A box will be a reference box and define the origin for a basic shape.
If no basic shape is specified, the box defines the clipping path itself.
The specification text follows the changes to CSS Shapes now.

https://dvcs.w3.org/hg/FXTF/raw-file/3f213145303e/css-masking-1/index.html#the-clip-path

Existing parsing test have been extended to test box values as well.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseClipPath):
* css/CSSParser.h:
* css/CSSValueKeywords.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyClipPath::applyValue):

LayoutTests:

Add test to check different combinations of the reference boxes
content-box, padding-box, border-box, margin-box and bounding-box
with other clip-path values.

* fast/masking/parsing-clip-path-shape.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161067 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[iOS] Upstream WebCore/pdf changes
ddkilzer@apple.com [Wed, 25 Dec 2013 18:58:00 +0000 (18:58 +0000)]
[iOS] Upstream WebCore/pdf changes
http://webkit.org/b/126097

Reviewed by Sam Weinig.

* WebCore.xcodeproj/project.pbxproj: Added files to project.
* pdf/ios/PDFDocument.cpp: Added.
(WebCore::PDFDocumentParser::create):
(WebCore::PDFDocumentParser::document):
(WebCore::PDFDocumentParser::PDFDocumentParser):
(WebCore::PDFDocument::createParser):
* pdf/ios/PDFDocument.h: Added.
(WebCore::PDFDocument::create):
(WebCore::PDFDocument::PDFDocument):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161066 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, GTK build fix after r161063
philn@webkit.org [Wed, 25 Dec 2013 14:48:26 +0000 (14:48 +0000)]
Unreviewed, GTK build fix after r161063

* GNUmakefile.am: Use locally built .gir dependencies when
building the WebExtensions gir file.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161065 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Fix warnings when generating WebExtensions gobject-instrospection files
carlosgc@webkit.org [Wed, 25 Dec 2013 09:56:23 +0000 (09:56 +0000)]
[GTK] Fix warnings when generating WebExtensions gobject-instrospection files
https://bugs.webkit.org/show_bug.cgi?id=126225

Reviewed by Philippe Normand.

Add transfer annotation to webkit_web_page_get_dom_document() and
document webkit_web_page_get_main_frame().

* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Missing introspection information for WebExtensions
carlosgc@webkit.org [Wed, 25 Dec 2013 09:53:04 +0000 (09:53 +0000)]
[GTK] Missing introspection information for WebExtensions
https://bugs.webkit.org/show_bug.cgi?id=122407

Reviewed by Philippe Normand.

Generate WebKit2WebExtension-3.0.gir with the WebExtensions API
and move the DOM bindings API from WebKit2-3.0.gir to
WebKit2WebExtension-3.0.gir.

* GNUmakefile.am:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161063 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd a JSON interface for getting EWS queue status
ap@apple.com [Wed, 25 Dec 2013 09:13:47 +0000 (09:13 +0000)]
Add a JSON interface for getting EWS queue status
https://bugs.webkit.org/show_bug.cgi?id=126182

Reviewed by Ryosuke Niwa.

The current goal is to add an indicator of how many patches are in the queue, and
the JSON also includes some other information that was easy to add.

* QueueStatusServer/app.yaml: Updated version for deployment.

* QueueStatusServer/handlers/queuestatusjson.py: Added. Returns a JSON with some
bot and patch queue information.

* QueueStatusServer/index.yaml: Added an index for a new query that only returns
bot ids.

* QueueStatusServer/main.py: Map /queue-status-json/ directory to QueueStatusJSON
handler.

* QueueStatusServer/config: Added property svn:ignore.
* QueueStatusServer/filters: Added property svn:ignore.
* QueueStatusServer/loggers: Added property svn:ignore.
* QueueStatusServer/handlers: Added property svn:ignore.
* QueueStatusServer/model: Added property svn:ignore.
Ignore compiled *.pyc files in all directories they appear in when running locally.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161062 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r160959.
commit-queue@webkit.org [Tue, 24 Dec 2013 21:06:22 +0000 (21:06 +0000)]
Unreviewed, rolling out r160959.
http://trac.webkit.org/changeset/160959
https://bugs.webkit.org/show_bug.cgi?id=126222

Caused Windows build to fail (Requested by rfong on #webkit).

Source/WebCore:

* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::interrupt):

Source/WTF:

* wtf/ByteSpinLock.h:
(WTF::ByteSpinLock::lock):
* wtf/Threading.h:
* wtf/ThreadingPrimitives.h:
(WTF::pauseBriefly):
* wtf/ThreadingPthreads.cpp:
(WTF::yield):
* wtf/ThreadingWin.cpp:
(WTF::yield):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161060 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove the test expectations added after r161051 now that the changeset has been...
rniwa@webkit.org [Tue, 24 Dec 2013 21:00:30 +0000 (21:00 +0000)]
Remove the test expectations added after r161051 now that the changeset has been rolled out.

The assertion failure is tracked by https://webkit.org/b/126219.

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161059 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r161051.
rniwa@webkit.org [Tue, 24 Dec 2013 20:43:03 +0000 (20:43 +0000)]
Unreviewed, rolling out r161051.
http://trac.webkit.org/changeset/161051
https://bugs.webkit.org/show_bug.cgi?id=45994

Caused two DFG tests to hit assertions due to a separate bug

Source/WebCore:

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::status):
(WebCore::XMLHttpRequest::statusText):
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:

LayoutTests:

* http/tests/xmlhttprequest/exceptions-expected.txt:
* http/tests/xmlhttprequest/exceptions.html:
* http/tests/xmlhttprequest/status-after-abort-expected.txt:
* http/tests/xmlhttprequest/zero-length-response-expected.txt:
* js/dom/dfg-custom-getter-throw-expected.txt:
* js/dom/script-tests/dfg-custom-getter-throw-inlined.js:
(foo):
(bar):
* js/dom/script-tests/dfg-custom-getter-throw.js:
(foo):
(bar):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161058 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRename fast/regions/repaint/increasing-region-content-height.html to something more...
stavila@adobe.com [Tue, 24 Dec 2013 14:45:37 +0000 (14:45 +0000)]
Rename fast/regions/repaint/increasing-region-content-height.html to something more clear
https://bugs.webkit.org/show_bug.cgi?id=126209

Reviewed by Mihnea Ovidenie.

Renamed test file name to better reflect the scenario it tests.

* fast/regions/repaint/repaint-element-inside-relative-region-expected.txt: Renamed from LayoutTests/fast/regions/repaint/increasing-region-content-height-expected.txt.
* fast/regions/repaint/repaint-element-inside-relative-region.html: Renamed from LayoutTests/fast/regions/repaint/increasing-region-content-height.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161056 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSuppress assertions in js/dom/dfg-custom-getter-throw.html and js/dom/dfg-custom...
rniwa@webkit.org [Tue, 24 Dec 2013 09:36:13 +0000 (09:36 +0000)]
Suppress assertions in js/dom/dfg-custom-getter-throw.html and js/dom/dfg-custom-getter-throw-inlined.html for now.

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161055 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Crash while repainting an invalid region
mihnea@adobe.com [Tue, 24 Dec 2013 09:25:38 +0000 (09:25 +0000)]
[CSSRegions] Crash while repainting an invalid region
https://bugs.webkit.org/show_bug.cgi?id=126152

Reviewed by Daniel Bates.

Source/WebCore:

An invalid region, part of a dependency cycle, should not attempt to repaint content from
its associated named flow, otherwise there may be the case of an infinite repaint cycle,
resulting in a crash due to a stack overflow.

Test: fast/regions/repaint/invalid-region-repaint-crash.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::repaintIncludingDescendants):

LayoutTests:

* fast/regions/repaint/invalid-region-repaint-crash-expected.txt: Added.
* fast/regions/repaint/invalid-region-repaint-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161054 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago32-bit Mac build fix attempt after r161045.
rniwa@webkit.org [Tue, 24 Dec 2013 08:23:31 +0000 (08:23 +0000)]
32-bit Mac build fix attempt after r161045.

* WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::windowMap):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161053 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd a test for reattaching collapsed whitespace when siblings change style
rniwa@webkit.org [Tue, 24 Dec 2013 08:11:38 +0000 (08:11 +0000)]
Add a test for reattaching collapsed whitespace when siblings change style
https://bugs.webkit.org/show_bug.cgi?id=126053

Reviewed by Dan Bernstein.

Merge the test from https://chromium.googlesource.com/chromium/blink/+/dd5636728643ff958aebeaf064d38754b0d5904b
so that we may not introduce the same regression in WebKit.

* fast/css/collapsed-whitespace-reattach-in-style-recalc-expected.txt: Added.
* fast/css/collapsed-whitespace-reattach-in-style-recalc.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161052 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoXMLHttpRequest: status and statusText throw DOM Exception 11 when the state is UNSENT...
rniwa@webkit.org [Tue, 24 Dec 2013 08:05:56 +0000 (08:05 +0000)]
XMLHttpRequest: status and statusText throw DOM Exception 11 when the state is UNSENT or OPENED.
https://bugs.webkit.org/show_bug.cgi?id=45994

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Merged https://chromium.googlesource.com/chromium/blink/+/23c90460de16e04c5aba7ed942fba76cb79fdb9b.

Latest XHR spec says that XHR should return 0 and an empty string when it's in UNSENT or OPENED state
or error flag is set: http://www.w3.org/TR/2012/WD-XMLHttpRequest-20121206/#the-status-attribute

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::status):
(WebCore::XMLHttpRequest::statusText):
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:

LayoutTests:

Rebaselined and fixed tests as done in https://chromium.googlesource.com/chromium/blink/+/23c90460de16e04c5aba7ed942fba76cb79fdb9b.

* http/tests/xmlhttprequest/exceptions-expected.txt:
* http/tests/xmlhttprequest/exceptions.html:
* http/tests/xmlhttprequest/status-after-abort-expected.txt:
* http/tests/xmlhttprequest/zero-length-response-expected.txt:

* js/dom/dfg-custom-getter-throw-expected.txt:
* js/dom/script-tests/dfg-custom-getter-throw-inlined.js: Fixed the test.
(foo): Use responseText instead of status so that it throws when responseType is "arraybuffer".
(bar): Set responseType to "arraybuffer" to cause an exception to be thrown.
* js/dom/script-tests/dfg-custom-getter-throw.js: Ditto.
(foo):
(bar):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161051 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCrash in ReplaceSelectionCommand
rniwa@webkit.org [Tue, 24 Dec 2013 07:44:52 +0000 (07:44 +0000)]
Crash in ReplaceSelectionCommand
https://bugs.webkit.org/show_bug.cgi?id=126107

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/c1ebe5c1e808daf9db5e348a8d0ab32570b9f7a5
except the test since it doesn't reproduce the crash in WebKit.

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161050 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSource/WebKit: Roll out r161043. It broke 32-bit Mac builds.
aestes@apple.com [Tue, 24 Dec 2013 07:42:44 +0000 (07:42 +0000)]
Source/WebKit: Roll out r161043. It broke 32-bit Mac builds.

Source/WebKit/ios: Roll out r161043. It broke 32-bit Mac builds.

Source/WebKit/mac: Roll out r161043. It broke 32-bit Mac builds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161049 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Fix fast/regions/assert-flow-thread-compositing.html test description
mihnea@adobe.com [Tue, 24 Dec 2013 07:29:20 +0000 (07:29 +0000)]
[CSSRegions] Fix fast/regions/assert-flow-thread-compositing.html test description
https://bugs.webkit.org/show_bug.cgi?id=126203

Reviewed by Dirk Schulze.

Correct description of successful behaviour for fast/regions/assert-flow-thread-compositing.html.

* fast/regions/assert-flow-thread-compositing-expected.txt:
* fast/regions/assert-flow-thread-compositing.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161048 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL][CMAKE] Case insensitive string comparison of build type
jinwoo7.song@samsung.com [Tue, 24 Dec 2013 04:50:40 +0000 (04:50 +0000)]
[EFL][CMAKE] Case insensitive string comparison of build type
https://bugs.webkit.org/show_bug.cgi?id=126153

Reviewed by Daniel Bates.

Compare CMAKE_BUILD_TYPE with "debug" ignoring case.

* Source/cmake/OptionsEfl.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161047 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd the pseudo classes link and any-link to the Selector Code Generator
benjamin@webkit.org [Tue, 24 Dec 2013 03:28:58 +0000 (03:28 +0000)]
Add the pseudo classes link and any-link to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126196

Reviewed by Ryosuke Niwa.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLink):
* dom/Node.h:
(WebCore::Node::flagIsElement):
(WebCore::Node::flagIsLink):
Fix the type to match TrustedImm32.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161046 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
weinig@apple.com [Tue, 24 Dec 2013 03:28:01 +0000 (03:28 +0000)]
[WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
https://bugs.webkit.org/show_bug.cgi?id=126144

Reviewed by Anders Carlsson.

* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::shared):
* DatabaseProcess/DatabaseProcess.h:
* NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
(WebKit::NetworkBlobRegistry::shared):
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::shared):
(WebKit::NetworkProcess::downloadManager):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcessPlatformStrategies.cpp:
(WebKit::NetworkProcessPlatformStrategies::initialize):
* NetworkProcess/mac/RemoteNetworkingContext.mm:
(WebKit::privateBrowsingStorageSessionIdentifierBase):
* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::SyncMessageState::syncMessageStateMap):
(CoreIPC::Connection::SyncMessageState::syncMessageStateMapMutex):
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::shared):
* PluginProcess/PluginProcess.h:
* PluginProcess/mac/PluginProcessMac.mm:
(WebKit::fullscreenWindowTracker):
* Shared/ConnectionStack.cpp:
(WebKit::ConnectionStack::shared):
* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::initializedNetscapePluginModules):
* Shared/WebContextMenuItem.cpp:
(WebKit::WebContextMenuItem::separatorItem):
* Shared/WebPreferencesStore.cpp:
(WebKit::boolTestRunnerOverridesMap):
* Shared/mac/CookieStorageShim.cpp:
(WebKit::CookieStorageShim::shared):
* Shared/mac/CookieStorageShim.h:
(WebKit::CookieStorageShim::CookieStorageShim):
* UIProcess/Plugins/PluginProcessManager.cpp:
(WebKit::PluginProcessManager::shared):
* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/WebContext.cpp:
(WebKit::contexts):
* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::originKey):
(WebKit::WebDatabaseManagerProxy::originQuotaKey):
(WebKit::WebDatabaseManagerProxy::originUsageKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsNameKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsDisplayNameKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsExpectedUsageKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsCurrentUsageKey):
* UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorPageGroups::shared):
* UIProcess/WebPageGroup.cpp:
(WebKit::webPageGroupMap):
* UIProcess/WebPageProxy.cpp:
(WebKit::ExceededDatabaseQuotaRecords::shared):
(WebKit::WebPageProxy::executeEditCommand):
* UIProcess/WebProcessProxy.cpp:
(WebKit::globalPageMap):
* UIProcess/cf/WebBackForwardListCF.cpp:
(WebKit::SessionHistoryCurrentVersion):
(WebKit::createEmptySessionHistoryDictionary):
(WebKit::WebBackForwardList::createCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
(WebKit::extractBackForwardListEntriesFromArray):
* UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::standardUserAgent):
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
(WebKit::sharedDatabaseBackendMap):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::generateServerConnectionIdentifier):
* WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
(WebKit::WKDOMNodeCache):
(WebKit::WKDOMRangeCache):
* WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
(WebKit::domHandleCache):
* WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
(WebKit::domHandleCache):
* WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
(WebKit::allExtensions):
* WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
(WebKit::allWorlds):
* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::globalExceptionString):
* WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::windowMap):
* WebProcess/Storage/StorageNamespaceImpl.cpp:
(WebKit::localStorageNamespaceMap):
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::didBeginEditing):
(WebKit::WebEditorClient::respondToChangedContents):
(WebKit::WebEditorClient::respondToChangedSelection):
(WebKit::WebEditorClient::didEndEditing):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::shouldFallBack):
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::initialize):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:
* WebProcess/WebPage/WebBackForwardListProxy.cpp:
(WebKit::idToHistoryItemMap):
(WebKit::historyItemToIDMap):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::downloadManager):
* WebProcess/WebProcess.h:
* config.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161045 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd the experimental CSS code generator files to the remaining build systems
benjamin@webkit.org [Tue, 24 Dec 2013 03:23:20 +0000 (03:23 +0000)]
Add the experimental CSS code generator files to the remaining build systems
https://bugs.webkit.org/show_bug.cgi?id=126192

Reviewed by Sam Weinig.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161044 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
aestes@apple.com [Tue, 24 Dec 2013 02:07:30 +0000 (02:07 +0000)]
[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
https://bugs.webkit.org/show_bug.cgi?id=125746

Reviewed by David Kilzer.

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj: Added WebDatabaseManagerInternal.h
and iOS.xcconfig.

Source/WebKit/ios:

* WebCoreSupport/WebVisiblePosition.mm:
(-[WebVisiblePosition positionAtStartOrEndOfWord]): Changed a comment
to mention iOS rather than iPhone.

Source/WebKit/mac:

This is a straight upstreaming of the various PLATFORM(IOS) changes
made to Source/WebKit/ with the following modifications:

- Includes of <Cocoa/Cocoa.h> were generally replaced with an include
of <Foundation/Foundation.h> followed by an include of
<AppKit/AppKit.h> on non-iOS platforms. This assumes that nobody was
relying on <Cocoa/Cocoa.h>'s inclusion of <CoreData/CoreData.h>.

- Includes of <Cocoa/Cocoa.h> and <Foundation/Foundation.h> were
removed from files that include WebKitPrefix.h.

- Instances of 'iPhone (OS)' in comments were replaced with 'iOS', and
other sensitive terms were elided.

- Various PLATFORM(IOS) blocks were simplified. For instance:

    #if !PLATFORM(IOS)
    ...
    #endif
    #if PLATFORM(IOS)
    ...
    #endif

Was simplified to:

    #if !PLATFORM(IOS)
    ...
    #else
    ...
    #endif

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebKit.xcconfig:
* Configurations/iOS.xcconfig: Added.
* DOM/WebDOMOperations.mm:
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
* DefaultDelegates/WebDefaultEditingDelegate.m:
* DefaultDelegates/WebDefaultPolicyDelegate.m:
* DefaultDelegates/WebDefaultUIDelegate.h:
* DefaultDelegates/WebDefaultUIDelegate.m:
* History/WebBackForwardList.mm:
* History/WebHistory.mm:
* History/WebHistoryItem.mm:
* History/WebURLsWithTitles.m:
* Misc/WebCache.mm:
* Misc/WebDownload.mm:
* Misc/WebElementDictionary.mm:
* Misc/WebIconDatabase.mm:
* Misc/WebIconDatabaseInternal.h:
* Misc/WebKitNSStringExtras.mm:
* Misc/WebKitSystemBits.m:
* Misc/WebKitVersionChecks.h:
* Misc/WebKitVersionChecks.m:
* Misc/WebLocalizableStrings.mm:
* Misc/WebNSArrayExtras.h:
* Misc/WebNSArrayExtras.m:
* Misc/WebNSControlExtras.h:
* Misc/WebNSControlExtras.m:
* Misc/WebNSDictionaryExtras.h:
* Misc/WebNSDictionaryExtras.m:
* Misc/WebNSEventExtras.m:
* Misc/WebNSFileManagerExtras.mm:
* Misc/WebNSImageExtras.h:
* Misc/WebNSImageExtras.m:
* Misc/WebNSPasteboardExtras.mm:
* Misc/WebNSPrintOperationExtras.h:
* Misc/WebNSPrintOperationExtras.m:
* Misc/WebNSURLExtras.mm:
* Misc/WebNSViewExtras.m:
* Misc/WebNSWindowExtras.m:
* Panels/WebAuthenticationPanel.h:
* Panels/WebAuthenticationPanel.m:
* Panels/WebPanelAuthenticationHandler.m:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
* Plugins/WebJavaPlugIn.h:
* Plugins/WebPluginContainerCheck.mm:
* Plugins/WebPluginController.h:
* Plugins/WebPluginController.mm:
* Plugins/WebPluginDatabase.mm:
* Plugins/WebPluginPackage.mm:
* Plugins/WebPluginsPrivate.m:
* Storage/WebDatabaseManager.mm:
* Storage/WebDatabaseManagerClient.h:
* Storage/WebDatabaseManagerClient.mm:
* Storage/WebDatabaseManagerInternal.h: Added.
* Storage/WebStorageManager.mm:
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/WebAlternativeTextClient.h:
* WebCoreSupport/WebApplicationCache.mm:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebContextMenuClient.mm:
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebFrameNetworkingContext.h:
* WebCoreSupport/WebFrameNetworkingContext.mm:
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebGeolocationClient.mm:
* WebCoreSupport/WebJavaScriptTextInputPanel.m:
* WebCoreSupport/WebKeyGenerator.mm:
* WebCoreSupport/WebNotificationClient.mm:
* WebCoreSupport/WebOpenPanelResultListener.mm:
* WebCoreSupport/WebSecurityOrigin.mm:
* WebCoreSupport/WebSystemInterface.mm:
* WebKitPrefix.h:
* WebView/WebArchive.mm:
* WebView/WebClipView.h:
* WebView/WebDataSource.mm:
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebDelegateImplementationCaching.mm:
* WebView/WebDeviceOrientation.mm:
* WebView/WebDocumentInternal.h:
* WebView/WebDocumentLoaderMac.mm:
* WebView/WebDynamicScrollBarsViewInternal.h:
* WebView/WebFormDelegate.m:
* WebView/WebFrame.mm:
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
* WebView/WebHTMLRepresentation.mm:
* WebView/WebHTMLView.mm:
* WebView/WebHTMLViewInternal.h:
* WebView/WebPDFDocumentExtras.h:
* WebView/WebPDFDocumentExtras.mm:
* WebView/WebPDFRepresentation.h:
* WebView/WebPDFRepresentation.mm:
* WebView/WebPDFView.h:
* WebView/WebPDFView.mm:
* WebView/WebPreferences.mm:
* WebView/WebResource.mm:
* WebView/WebTextCompletionController.h:
* WebView/WebTextIterator.mm:
* WebView/WebView.mm:
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
* WebView/WebViewInternal.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161043 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd a test for submitting a form targeted at an iframe
rniwa@webkit.org [Tue, 24 Dec 2013 01:24:28 +0000 (01:24 +0000)]
Add a test for submitting a form targeted at an iframe
https://bugs.webkit.org/show_bug.cgi?id=126175

Reviewed by Alexey Proskuryakov.

Merge the test from https://chromium.googlesource.com/chromium/blink/+/9220cbdaae8413f3c8316c022f98579af120bf10
so that we may not introduce the same regression in WebKit.

* http/tests/misc/form-target-iframe-inline-expected.txt: Added.
* http/tests/misc/form-target-iframe-inline.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161042 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd the pseudo class :focus to the Selector Code Generator
benjamin@webkit.org [Tue, 24 Dec 2013 01:22:49 +0000 (01:22 +0000)]
Add the pseudo class :focus to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126189

Reviewed by Ryosuke Niwa.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFocused):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161041 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed build fix after r161033
ryuan.choi@samsung.com [Tue, 24 Dec 2013 01:17:07 +0000 (01:17 +0000)]
Unreviewed build fix after r161033

* ewk/ewk_view.cpp:
(ewk_view_js_object_add): Passed thisObject to constructor of PutPropertySlot.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove boolean argument from Element::setChildrenAffectBy* methods
rniwa@webkit.org [Tue, 24 Dec 2013 00:48:29 +0000 (00:48 +0000)]
Remove boolean argument from Element::setChildrenAffectBy* methods
https://bugs.webkit.org/show_bug.cgi?id=126183

Reviewed by Daniel Bates.

Merge https://chromium.googlesource.com/chromium/blink/+/066ef2fa78336b2b65052cb17cb81b367fe7dbbf

These functions are never called with false.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* dom/Element.cpp:
(WebCore::Element::setChildrenAffectedByActive):
(WebCore::Element::setChildrenAffectedByDrag):
* dom/Element.h:
(WebCore::Element::setChildrenAffectedByHover):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161037 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix the iOS build after r161013 and r160672.
timothy_horton@apple.com [Tue, 24 Dec 2013 00:20:47 +0000 (00:20 +0000)]
Fix the iOS build after r161013 and r160672.

* Shared/mac/RemoteLayerTreePropertyApplier.mm:
(WebKit::updateCustomAppearance):
* Shared/mac/RemoteLayerTreeTransaction.mm:
* WebCore.exp.in:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::updateCustomAppearance):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161035 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed build fix for EFL after r161007
ryuan.choi@samsung.com [Tue, 24 Dec 2013 00:12:51 +0000 (00:12 +0000)]
Unreviewed build fix for EFL after r161007

* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
(WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
Changed the timeout parameter to std::chrono::milliseconds

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161034 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRefactor PutPropertySlot to be aware of custom properties
oliver@apple.com [Tue, 24 Dec 2013 00:11:25 +0000 (00:11 +0000)]
Refactor PutPropertySlot to be aware of custom properties
https://bugs.webkit.org/show_bug.cgi?id=126187

Reviewed by msaboff.

Source/JavaScriptCore:

Refactor PutPropertySlot, making the constructor take the thisValue
used as a target.  This results in a wide range of boilerplate changes
to pass the new parameter.

* API/JSObjectRef.cpp:
(JSObjectSetProperty):
* dfg/DFGOperations.cpp:
(JSC::DFG::operationPutByValInternal):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/Arguments.cpp:
(JSC::Arguments::putByIndex):
* runtime/ArrayPrototype.cpp:
(JSC::putProperty):
(JSC::arrayProtoFuncPush):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitiveByIndex):
* runtime/JSCell.cpp:
(JSC::JSCell::putByIndex):
* runtime/JSFunction.cpp:
(JSC::JSFunction::put):
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):
* runtime/JSONObject.cpp:
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC::JSObject::putByIndex):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::deleteProperty):
* runtime/JSObject.h:
(JSC::JSObject::putDirect):
* runtime/Lookup.h:
(JSC::putEntry):
(JSC::lookupPut):
* runtime/PutPropertySlot.h:
(JSC::PutPropertySlot::PutPropertySlot):
(JSC::PutPropertySlot::setCustomProperty):
(JSC::PutPropertySlot::thisValue):
(JSC::PutPropertySlot::isCacheable):

Source/WebCore:

Update the bindings code generation and custom objects
to the new function signatures

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/objc/WebScriptObject.mm:
(-[WebScriptObject setValue:forKey:]):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::putByIndex):
* bridge/NP_jsobject.cpp:
(_NPN_SetProperty):

Source/WebKit/mac:

Update for new method signatures.

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):

Source/WebKit2:

Update for new method signatures.

* WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::NPJSObject::setProperty):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161033 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix the build after r161031
benjamin@webkit.org [Mon, 23 Dec 2013 23:57:39 +0000 (23:57 +0000)]
Fix the build after r161031

I enabled ENABLE_CSS_SELECTOR_JIT by accident.

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

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161032 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd class matching to the Selector Code Generator
benjamin@webkit.org [Mon, 23 Dec 2013 23:47:05 +0000 (23:47 +0000)]
Add class matching to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126176

Source/JavaScriptCore:

Reviewed by Antti Koivisto and Oliver Hunt.

Add test and branch based on BaseIndex addressing for x86_64.
Fast loops are needed to compete with clang on tight loops.

* assembler/MacroAssembler.h:
* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::branch64):
(JSC::MacroAssemblerX86_64::branchPtr):
* assembler/X86Assembler.h:
(JSC::X86Assembler::cmpq_rm):

Source/WebCore:

Reviewed by Antti Koivisto.

Add selector matching based on classname to the Selector Compiler.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementDataMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasClasses):
* dom/ElementData.h:
(WebCore::ElementData::classNamesMemoryOffset):
* dom/SpaceSplitString.h:
(WebCore::SpaceSplitStringData::sizeMemoryOffset):
(WebCore::SpaceSplitStringData::tokensMemoryOffset):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161031 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[iOS] Upstream WebCore/storage changes
dbates@webkit.org [Mon, 23 Dec 2013 23:28:53 +0000 (23:28 +0000)]
[iOS] Upstream WebCore/storage changes
https://bugs.webkit.org/show_bug.cgi?id=125913

Reviewed by David Kilzer.

* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::openDatabase): Added iOS-specific code.
(WebCore::StorageAreaSync::sync): Ditto.
* storage/StorageTracker.cpp:
(WebCore::StorageTracker::openTrackerDatabase): Ditto.
(WebCore::StorageTracker::syncImportOriginIdentifiers): Ditto.
(WebCore::StorageTracker::syncFileSystemAndTrackerDatabase): Ditto.
(WebCore::StorageTracker::syncSetOriginDetails): Ditto.
(WebCore::StorageTracker::syncDeleteAllOrigins): Ditto.
(WebCore::StorageTracker::syncDeleteOrigin): Ditto.
(WebCore::StorageTracker::databasePathForOrigin): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161029 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix the iOS build following <http://trac.webkit.org/changeset/160236>
dbates@webkit.org [Mon, 23 Dec 2013 23:25:31 +0000 (23:25 +0000)]
Fix the iOS build following <trac.webkit.org/changeset/160236>
(https://bugs.webkit.org/show_bug.cgi?id=125239)

* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned): Substitute view() for &view().
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo): Fix indentation of closing brace.
* rendering/RenderLayerCompositor.cpp: Include MainFrame.h.
(WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles): Check that page->mainFrame().view()
is non-null; also add explicit #else clause.
(WebCore::RenderLayerCompositor::ensureRootLayer): Fix up main frame check.
* rendering/RenderTheme.h:
(WebCore::RenderTheme::paintFileUploadIconDecorations): Substitute rect for r.
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintTextFieldDecorations): Use .get() to access underlying NeverDestroyed item.
(WebCore::RenderThemeIOS::systemFont):
* rendering/RenderView.cpp:
(WebCore::fixedPositionOffset): Substitute frameView.scrollOffset() for frameView->scrollOffset().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161028 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMinor optimization in FrameSelection::setNonDirectionalSelectionIfNeeded()
rniwa@webkit.org [Mon, 23 Dec 2013 23:13:21 +0000 (23:13 +0000)]
Minor optimization in FrameSelection::setNonDirectionalSelectionIfNeeded()
https://bugs.webkit.org/show_bug.cgi?id=126108

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/237b987c324e2e389a9e0350293bfaf16a5e201d

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161026 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse isDocumentFragment() instead of comparing nodeType() with Node::DOCUMENT_FRAGMENT...
rniwa@webkit.org [Mon, 23 Dec 2013 22:51:21 +0000 (22:51 +0000)]
Use isDocumentFragment() instead of comparing nodeType() with Node::DOCUMENT_FRAGMENT_NODE
https://bugs.webkit.org/show_bug.cgi?id=126178

Reviewed by Antti Koivisto.

Inspired by https://chromium.googlesource.com/chromium/blink/+/a622cb80af2bfb0c5d91123cbcfa4fa72a06554c

Use inline Node::isDocumentFragment() instead of virtual nodeType().

* dom/ContainerNode.cpp:
(WebCore::collectChildrenAndRemoveFromOldParent):
* dom/Document.cpp:
(WebCore::Document::canReplaceChild):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161024 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoTry to fix the build after r161017
mrobinson@webkit.org [Mon, 23 Dec 2013 22:41:10 +0000 (22:41 +0000)]
Try to fix the build after r161017

* gtk/common.py:
(is_cmake_build): Instead of checking whether the return value of build_path
of the CMakeCache.txt file is None, check if a file actually exists at that path.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161023 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK][WK2] Simplify ProcessExecutablePathGtk
zandobersek@gmail.com [Mon, 23 Dec 2013 22:07:40 +0000 (22:07 +0000)]
[GTK][WK2] Simplify ProcessExecutablePathGtk
https://bugs.webkit.org/show_bug.cgi?id=126173

Reviewed by Martin Robinson.

Don't store process name strings in global variables -- each of the names is only used in the relevant
function, so the string can be directly passed into the findWebKitProcess function call.

Simplify the findWebKitProcess function. Make the execDirectory variable static so that g_getenv is only
called once, as it's not expected for the WEBKIT_EXEC_PATH environment variable to change during the runtime.

Introduce the getExecutablePath helper function that gets the current executable path and, if non-null, returns
the directory path of that executable. The helper function preserves the small performance improvement of querying
and processing the executable path only once.
The return value of getExecutablePath is stored in a static variable and is used to construct the process path
if the executable path was successfully retrieved.

* Shared/gtk/ProcessExecutablePathGtk.cpp:
(WebKit::getExecutablePath):
(WebKit::findWebKitProcess):
(WebKit::executablePathOfWebProcess):
(WebKit::executablePathOfPluginProcess):
(WebKit::executablePathOfNetworkProcess):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161020 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed build fix for GTK and EFL after r161007.
zandobersek@gmail.com [Mon, 23 Dec 2013 22:05:22 +0000 (22:05 +0000)]
Unreviewed build fix for GTK and EFL after r161007.

* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
Use std::chrono::milliseconds instead of double for the timeout parameter to
CoreIPC::Connection::waitForAndDispatchImmediately.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161018 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Add support for generating gtkdoc
gns@gnome.org [Mon, 23 Dec 2013 22:01:12 +0000 (22:01 +0000)]
[GTK] [CMake] Add support for generating gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=116376

Reviewed by Martin Robinson.

.:

* Source/PlatformGTK.cmake: Added. New custom target that depends on a custom command
which calls our generate-gtkdoc script. It uses a docs-build.stamp for simplicity,
like the autotools build.

Source/WebKit2:

* PlatformGTK.cmake: make generated API files go to DerivedSources/WebKit2, to
match the autotools build and gtkdoc.py's expectation.

Tools:

* gtk/common.py: look for files in the directories used by the cmake build as well.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161017 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Build the WebKit2 GObject API tests
mrobinson@webkit.org [Mon, 23 Dec 2013 21:49:43 +0000 (21:49 +0000)]
[GTK] [CMake] Build the WebKit2 GObject API tests
https://bugs.webkit.org/show_bug.cgi?id=125683

Reviewed by Daniel Bates.

.:

* Source/PlatformGTK.cmake: Load the WebKit2 tests file if necessary.
* Source/cmake/FindATSPI.cmake: Added.
* Source/cmake/OptionsGTK.cmake: Look for AT-SPI, but don't fail if it isn't found.

Source/WebKit2:

* UIProcess/API/gtk/tests/CMakeLists.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161016 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Build the WebKit1 GObject API tests
mrobinson@webkit.org [Mon, 23 Dec 2013 21:48:46 +0000 (21:48 +0000)]
[GTK] [CMake] Build the WebKit1 GObject API tests
https://bugs.webkit.org/show_bug.cgi?id=125684

Reviewed by Daniel Bates.

.:

* Source/PlatformGTK.cmake: Added.

Source/WebKit/gtk:

* tests/CMakeLists.txt: Added.
* tests/testapplicationcache.c: Use the WTF config.h instead of including the autotools configuration directly.
* tests/testatk.c: Ditto.
* tests/testatkroles.c: Ditto.
* tests/testcontextmenu.c: Ditto.
* tests/testcopyandpaste.c: Ditto.
* tests/testdomdocument.c: Ditto.
* tests/testdomdomwindow.c: Ditto.
* tests/testdomnode.c: Ditto.
* tests/testdownload.c: Ditto.
* tests/testfavicondatabase.c: Ditto.
* tests/testglobals.c: Ditto.
* tests/testhittestresult.c: Ditto.
* tests/testhttpbackend.c: Ditto.
* tests/testkeyevents.c: Ditto.
* tests/testloading.c: Ditto.
* tests/testmimehandling.c: Ditto.
* tests/testnetworkrequest.c: Ditto.
* tests/testnetworkresponse.c: Ditto.
* tests/testwebbackforwardlist.c: Ditto.
* tests/testwebdatasource.c: Ditto.
* tests/testwebframe.c: Ditto.
* tests/testwebhistoryitem.c: Ditto.
* tests/testwebinspector.c: Ditto.
* tests/testwebplugindatabase.c: Ditto.
* tests/testwebresource.c: Ditto.
* tests/testwebsettings.c: Ditto.
* tests/testwebview.c: Ditto.
* tests/testwindow.c: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161015 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoClear ScratchBuffer::m_lastLayerSize when clearing the scratch buffer.
ryumiel@company100.net [Mon, 23 Dec 2013 21:39:23 +0000 (21:39 +0000)]
Clear ScratchBuffer::m_lastLayerSize when clearing the scratch buffer.
https://bugs.webkit.org/show_bug.cgi?id=126150

Reviewed by Simon Fraser.

Since ScratchBuffer::clearScratchBuffer only clears m_lastRadius,
ShadowBlur doesn't draw shadow into the re-created scratch buffer if it
tries to draw shadow without blurRadius.

Clear m_lastLayerSize to empty is enought to ensure that there is no
drawn contents in the scratch buffer.

No new tests due to the flaky nature of reproducing the issue.

* platform/graphics/ShadowBlur.cpp:
(WebCore::ScratchBuffer::clearScratchBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161014 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoREGRESSION (r160672): Random remote layers are getting shadows
timothy_horton@apple.com [Mon, 23 Dec 2013 21:09:44 +0000 (21:09 +0000)]
REGRESSION (r160672): Random remote layers are getting shadows
https://bugs.webkit.org/show_bug.cgi?id=126126

Reviewed by Anders Carlsson.

In http://trac.webkit.org/changeset/160672, we unconditionally
check m_properties.customAppearance without regard for whether it
has ever been initialized. This would result in sending an uninitialized
custom appearance to the UI process, which could end up requesting a shadow.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
Initialize LayerProperties to the CoreAnimation defaults.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::PlatformCALayerRemote):
Remove wrongly-placed default initialization of contentsScale;
there's no reason to send it across the wire for every new layer
if it's left at the default.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161013 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agosvg/animations/getCurrentTime-pause-unpause.html is flaky
ap@apple.com [Mon, 23 Dec 2013 20:25:45 +0000 (20:25 +0000)]
svg/animations/getCurrentTime-pause-unpause.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=124933

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd id matching to the Selector Code Generator
benjamin@webkit.org [Mon, 23 Dec 2013 20:21:28 +0000 (20:21 +0000)]
Add id matching to the Selector Code Generator
https://bugs.webkit.org/show_bug.cgi?id=126154

Reviewed by Antti Koivisto.

Compile matching for #id selectors. IDs are Atomic String so it is just a matter
of comparing the pointers.

No attempt is made at optimizing for the double #id case because such problem
do not really happen outside tests.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementDataMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasId):
* dom/Element.h:
(WebCore::Element::elementDataMemoryOffset):
* dom/ElementData.h:
(WebCore::ElementData::idForStyleResolutionMemoryOffset):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUpdate custom setter implementations to perform type checks
oliver@apple.com [Mon, 23 Dec 2013 19:51:38 +0000 (19:51 +0000)]
Update custom setter implementations to perform type checks
https://bugs.webkit.org/show_bug.cgi?id=126171

Reviewed by Daniel Bates.

Source/JavaScriptCore:

Modify the setter function signature to take encoded values
as we're changing the setter usage everywhere anyway.

* runtime/Lookup.h:
(JSC::putEntry):

Source/WebCore:

Update the bindings code generator for setters so that they perform a real
type check.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateAttributeEventListenerCall):
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
(WebCore::setJSTestInterfaceImplementsStr2):
(WebCore::setJSTestInterfaceImplementsStr3):
(WebCore::setJSTestInterfaceImplementsNode):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalNode):
* bindings/scripts/test/JS/JSTestInterface.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::setJSTestObjConstructorStaticStringAttr):
(WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
(WebCore::setJSTestObjEnumAttr):
(WebCore::setJSTestObjByteAttr):
(WebCore::setJSTestObjOctetAttr):
(WebCore::setJSTestObjShortAttr):
(WebCore::setJSTestObjUnsignedShortAttr):
(WebCore::setJSTestObjLongAttr):
(WebCore::setJSTestObjLongLongAttr):
(WebCore::setJSTestObjUnsignedLongLongAttr):
(WebCore::setJSTestObjStringAttr):
(WebCore::setJSTestObjTestObjAttr):
(WebCore::setJSTestObjXMLObjAttr):
(WebCore::setJSTestObjCreate):
(WebCore::setJSTestObjReflectedStringAttr):
(WebCore::setJSTestObjReflectedIntegralAttr):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedURLAttr):
(WebCore::setJSTestObjReflectedCustomIntegralAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjTypedArrayAttr):
(WebCore::setJSTestObjAttrWithGetterException):
(WebCore::setJSTestObjAttrWithSetterException):
(WebCore::setJSTestObjStringAttrWithGetterException):
(WebCore::setJSTestObjStringAttrWithSetterException):
(WebCore::setJSTestObjCustomAttr):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjConditionalAttr1):
(WebCore::setJSTestObjConditionalAttr2):
(WebCore::setJSTestObjConditionalAttr3):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjAnyAttribute):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
(WebCore::setJSTestObjStrawberry):
(WebCore::setJSTestObjStrictFloat):
(WebCore::setJSTestObjId):
(WebCore::setJSTestObjReplaceableAttribute):
(WebCore::setJSTestObjNullableLongSettableAttribute):
(WebCore::setJSTestObjNullableStringValue):
(WebCore::setJSTestObjAttributeWithReservedEnumType):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::setJSTestTypedefsUnsignedLongLongAttr):
(WebCore::setJSTestTypedefsImmutableSerializedScriptValue):
(WebCore::setJSTestTypedefsAttrWithGetterException):
(WebCore::setJSTestTypedefsAttrWithSetterException):
(WebCore::setJSTestTypedefsStringAttrWithGetterException):
(WebCore::setJSTestTypedefsStringAttrWithSetterException):
* bindings/scripts/test/JS/JSTestTypedefs.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161009 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoREGRESSION (r160847): fast/dynamic/paused-event-dispatch.html is failing
rniwa@webkit.org [Mon, 23 Dec 2013 19:43:08 +0000 (19:43 +0000)]
REGRESSION (r160847): fast/dynamic/paused-event-dispatch.html is failing
https://bugs.webkit.org/show_bug.cgi?id=126163

Unreviewed. Try increasing the timeouts after r160896.

* fast/dynamic/paused-event-dispatch.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse std::chrono::milliseconds for message wait timeouts in WebKit2
andersca@apple.com [Mon, 23 Dec 2013 19:34:27 +0000 (19:34 +0000)]
Use std::chrono::milliseconds for message wait timeouts in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126168

Reviewed by Sam Weinig.

* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::waitForMessage):
* Platform/CoreIPC/Connection.h:
(CoreIPC::Connection::waitForAndDispatchImmediately):
* UIProcess/API/mac/WKView.mm:
(-[WKView forceAsyncDrawingAreaSizeUpdate:]):
(-[WKView waitForAsyncDrawingAreaSizeUpdate]):
* UIProcess/DrawingAreaProxy.cpp:
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::didUpdateBackingStoreStateTimeout):
(WebKit::DrawingAreaProxy::waitForPossibleGeometryUpdate):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::waitForDidUpdateViewState):
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoInclude <condition_variable>, not <thread>.
andersca@apple.com [Mon, 23 Dec 2013 19:04:11 +0000 (19:04 +0000)]
Include <condition_variable>, not <thread>.

* Platform/CoreIPC/Connection.h:
* Shared/BlockingResponseMap.h:
* UIProcess/API/mac/WKPrintingView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161005 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRevert accidental Localizable.string change after r161003.
lforschler@apple.com [Mon, 23 Dec 2013 18:49:50 +0000 (18:49 +0000)]
Revert accidental Localizable.string change after r161003.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161004 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSource/JavaScriptCore: <rdar://problem/15682948> Update copyright strings
lforschler@apple.com [Mon, 23 Dec 2013 18:45:18 +0000 (18:45 +0000)]
Source/JavaScriptCore: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

* Info.plist:
* JavaScriptCore.vcxproj/JavaScriptCore.resources/Info.plist:

Source/WebCore: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein

* Info.plist:

Source/WebKit/mac: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

* Info.plist:

Source/WebKit2: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein

* DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist:
* DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist:
* DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist:
* Info.plist:
* NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist:
* NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist:
* NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist:
* NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist:
* PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
* PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
* PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
* WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
* WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
* WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist:
* WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:

WebKitLibraries: <rdar://problem/15682948> Update copyright strings

Reviewed by Dan Bernstein.

* win/tools/scripts/COPYRIGHT-END-YEAR:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161003 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoConvert ThreadCondition in WebKit2 over to std::condition_variable
andersca@apple.com [Mon, 23 Dec 2013 18:36:54 +0000 (18:36 +0000)]
Convert ThreadCondition in WebKit2 over to std::condition_variable
https://bugs.webkit.org/show_bug.cgi?id=126161

Reviewed by Sam Weinig.

* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::waitForMessage):
(CoreIPC::Connection::processIncomingMessage):
* Platform/CoreIPC/Connection.h:
* Shared/BlockingResponseMap.h:
(BlockingResponseMap::waitForResponse):
(BlockingResponseMap::didReceiveResponse):
(BlockingResponseMap::cancel):
* UIProcess/API/mac/WKPrintingView.h:
* UIProcess/API/mac/WKPrintingView.mm:
(pageDidDrawToPDF):
(-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
(prepareDataForPrintingOnSecondaryThread):
(-[WKPrintingView knowsPageRange:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161002 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r160945.
commit-queue@webkit.org [Mon, 23 Dec 2013 18:27:20 +0000 (18:27 +0000)]
Unreviewed, rolling out r160945.
http://trac.webkit.org/changeset/160945
https://bugs.webkit.org/show_bug.cgi?id=126164

Seems to have broken multiple canvas tests (Requested by ap on
#webkit).

PerformanceTests:

* Canvas/reuse.html: Removed.

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Removed.
* platform/graphics/cg/ImageBufferBackingStoreCache.h: Removed.
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::createIOSurface):
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::~ImageBuffer):

LayoutTests:

* fast/canvas/canvas-backing-store-reuse-expected.txt: Removed.
* fast/canvas/canvas-backing-store-reuse.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161001 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAudioSessionManager should be MediaSessionManager
eric.carlson@apple.com [Mon, 23 Dec 2013 18:24:06 +0000 (18:24 +0000)]
AudioSessionManager should be MediaSessionManager
https://bugs.webkit.org/show_bug.cgi?id=126087

Reviewed by Jer Noble.

No new tests, no change in functionality.

* WebCore.xcodeproj/project.pbxproj: Change file names.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): MediaSessionManagerToken::create() takes a client
    interface instead of the media type.
* html/HTMLMediaElement.h:

* platform/audio/AudioSessionListener.h: Include <wtf/Noncopyable.h>.

AudioSessionManager.* -> MediaSessionManager.*
* platform/audio/AudioSessionManager.cpp: Removed.
* platform/audio/AudioSessionManager.h: Removed.
* platform/audio/MediaSessionManager.cpp: Copied from Source/WebCore/platform/audio/AudioSessionManager.cpp.
(MediaSessionManagerToken::create):
(MediaSessionManagerToken::MediaSessionManagerToken):
(MediaSessionManagerToken::~MediaSessionManagerToken):
(MediaSessionManager::sharedManager):
(MediaSessionManager::MediaSessionManager):
(MediaSessionManager::has):
(MediaSessionManager::count):
(MediaSessionManager::addToken):
(MediaSessionManager::removeToken):
(MediaSessionManager::updateSessionState):
* platform/audio/MediaSessionManager.h: Copied from Source/WebCore/platform/audio/AudioSessionManager.h.

* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::AudioDestinationMac): MediaSessionManagerToken::create() takes a
    client interface instead of the media type.
* platform/audio/mac/AudioDestinationMac.h:

* platform/audio/mac/AudioSessionMac.cpp:
* platform/audio/mac/AudioSessionManagerMac.cpp: Removed.
* platform/audio/mac/MediaSessionManagerMac.cpp: Copied from Source/WebCore/platform/audio/mac/AudioSessionManagerMac.cpp.
(MediaSessionManager::updateSessionState):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@161000 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout tests editing/selection/5057506.html and editing/selection/5057506-2.html
ap@apple.com [Mon, 23 Dec 2013 18:09:02 +0000 (18:09 +0000)]
Layout tests editing/selection/5057506.html and editing/selection/5057506-2.html
frequently time out on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=124437

* platform/mac-wk2/TestExpectations: Marked the latter test accordingly. It used
to me marked as image failure, but I don't see this happen recently on the dashboard.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160999 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agowebkit gtk 2.2.3 stable tarball compilation error
zandobersek@gmail.com [Mon, 23 Dec 2013 16:28:48 +0000 (16:28 +0000)]
webkit gtk 2.2.3 stable tarball compilation error
https://bugs.webkit.org/show_bug.cgi?id=125987

Reviewed by Gustavo Noronha Silva.

Only try including <gdk/gdkwayland.h> and using GDK_IS_WAYLAND_DISPLAY if the Wayland support has been
enabled and when not compiling with GTK+ 2 (which occurs when building for libPlatformGtk2).

* platform/graphics/GLContext.cpp:
(WebCore::GLContext::createContextForWindow):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160997 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Clean up compiler optimizations flags for libWTF, libJSC
zandobersek@gmail.com [Mon, 23 Dec 2013 15:55:02 +0000 (15:55 +0000)]
[GTK] Clean up compiler optimizations flags for libWTF, libJSC
https://bugs.webkit.org/show_bug.cgi?id=126157

Reviewed by Gustavo Noronha Silva.

Source/JavaScriptCore:

* GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets
overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).

Source/WTF:

* GNUmakefile.am: Remove the -fstrict-aliasing and -O3 compiler flags for libWTF.la. -O3 gets
overridden by -O2 that's listed in CXXFLAGS (or -O0 in case of debug builds) and -fstrict-aliasing
is enabled when -O2 is used (and shouldn't be enabled in debug builds anyway).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160996 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CMake] Fix typo from r160812
mrobinson@webkit.org [Mon, 23 Dec 2013 14:46:53 +0000 (14:46 +0000)]
[CMake] Fix typo from r160812
https://bugs.webkit.org/show_bug.cgi?id=126145

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Fix typo when detecting the type of library.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160995 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago.: https://bugs.webkit.org/show_bug.cgi?id=125511
mrobinson@webkit.org [Mon, 23 Dec 2013 14:45:44 +0000 (14:45 +0000)]
.: https://bugs.webkit.org/show_bug.cgi?id=125511

[GTK][CMake] libtool-compatible soversion calculation
Reviewed by Gustavo Noronha Silva.

* Source/cmake/OptionsGTK.cmake: Specify the appropriate libtool triples and use
the CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE macro to specify the library-specific
version information.
* Source/cmake/WebKitHelpers.cmake: Add some helpful macros.

Source/JavaScriptCore: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the
library-specific version information.

Source/WebKit: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the
library-specific version information.

Source/WebKit2: [GTK][CMake] libtool-compatible soversion calculation
https://bugs.webkit.org/show_bug.cgi?id=125511

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Use the POPULATE_LIBRARY_VERSION macro and the
library-specific version information.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160994 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] [CMake] Generate pkg-config files
gns@gnome.org [Mon, 23 Dec 2013 13:35:00 +0000 (13:35 +0000)]
[GTK] [CMake] Generate pkg-config files
https://bugs.webkit.org/show_bug.cgi?id=125685

Reviewed by Martin Robinson.

.:

* Source/cmake/OptionsGTK.cmake: set variables used for filling in the values in the
pkg-config files.

Source/JavaScriptCore:

* PlatformGTK.cmake: Added. Generate javascriptcoregtk-3.0.pc.

Source/WebKit:

* PlatformGTK.cmake: generate webkitgtk-3.0.pc.

Source/WebKit2:

* PlatformGTK.cmake: generate webkit2gtk.pc.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160993 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GStreamer] video/audio seeking is not unified.
commit-queue@webkit.org [Mon, 23 Dec 2013 13:15:07 +0000 (13:15 +0000)]
[GStreamer] video/audio seeking is not unified.
https://bugs.webkit.org/show_bug.cgi?id=125852

Patch by Piotr Grad <p.grad@samsung.com> on 2013-12-23
Reviewed by Philippe Normand.

This bug is fixing regression with seeking audio/video elements and unifies seeking
in MediaPlayerPrivateGStreamer.

Test: media/video-seek-with-negative-playback.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::seekIncludingRate):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160992 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK][WK2] WebGL is not working with GLES
changseok.oh@collabora.com [Mon, 23 Dec 2013 10:18:51 +0000 (10:18 +0000)]
[GTK][WK2] WebGL is not working with GLES
https://bugs.webkit.org/show_bug.cgi?id=126138

Reviewed by Martin Robinson.

m_texture has been unnecessarily regenerated. It's generated in GraphicsContext3D
constructor for offscreen rendering. And m_compositorTexture is used by only Mac port.
They create it in their GraphicsContext3D constructor so that we don't need to recreate it
in GC3DOpenGLES::reshapeFBOs.

No new tests since no functionality changed.

* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::~GraphicsContext3D):
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
* platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160991 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Mon, 23 Dec 2013 09:22:08 +0000 (09:22 +0000)]
Unreviewed EFL gardening

Rebaseline tests after 160908.

* platform/efl/TestExpectations:
* platform/efl/editing/inserting/break-blockquote-after-delete-expected.png: Added.
* platform/efl/editing/inserting/break-blockquote-after-delete-expected.txt: Added.
* platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.txt:
* platform/efl/fast/dynamic/011-expected.txt:
* platform/efl/fast/forms/formmove3-expected.txt:
* platform/efl/fast/forms/preserveFormDuringResidualStyle-expected.txt:
* platform/efl/fast/invalid/001-expected.txt:
* platform/efl/fast/invalid/003-expected.txt:
* platform/efl/fast/invalid/004-expected.txt:
* platform/efl/fast/invalid/007-expected.txt:
* platform/efl/fast/invalid/019-expected.txt:
* platform/efl/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
* platform/efl/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
* platform/efl/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
* platform/efl/fast/ruby/ruby-base-merge-block-children-crash-expected.txt:
* platform/efl/tables/mozilla/bugs/bug113235-1-expected.txt:
* platform/efl/tables/mozilla/bugs/bug647-expected.txt:
* platform/efl/tables/mozilla/other/wa_table_tr_align-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160990 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Build with network process unconditionally
carlosgc@webkit.org [Mon, 23 Dec 2013 09:07:46 +0000 (09:07 +0000)]
[GTK] Build with network process unconditionally
https://bugs.webkit.org/show_bug.cgi?id=126128

Reviewed by Martin Robinson.

.:

* Source/autotools/SetupAutomake.m4: Remove network process
conditional for Makefiles.
* Source/autotools/SetupWebKitFeatures.m4: Remove network process
feature.

Source/WebKit2:

Build always with the network process enabled and decide whether
to use it or not using an environment variable. This makes a lot
easier to work on the network process and also to switch between
using it or not.

* GNUmakefile.am: Make sure we always include the WebKit2Prefix.h.
* UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext): Use the network process when
WEBKIT_USE_NETWORK_PROCESS environment variable is present.
* WebKit2Prefix.h: Always enable network process for GTK port.

Tools:

* Scripts/webkitperl/FeatureList.pm: Remove network-process
feature command line option.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160989 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[WK2] Implement platform specific Resource Response for SOUP
brian.holt@samsung.com [Mon, 23 Dec 2013 08:41:08 +0000 (08:41 +0000)]
[WK2] Implement platform specific Resource Response for SOUP
https://bugs.webkit.org/show_bug.cgi?id=125422

Reviewed by Martin Robinson.

SOUP specific Resource Response implementation for the Network
Process.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::continueWillSendRequest):
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160988 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] run-gtk-tests should always run glib tests with -k option
carlosgc@webkit.org [Mon, 23 Dec 2013 08:21:12 +0000 (08:21 +0000)]
[GTK] run-gtk-tests should always run glib tests with -k option
https://bugs.webkit.org/show_bug.cgi?id=126132

Reviewed by Philippe Normand.

With -k command line option, gtester continues running all other
test cases after a failure.

* Scripts/run-gtk-tests:
(TestRunner._run_test_glib): Use -k option when runing glib tests
to not stop on failure.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160987 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work correctly...
commit-queue@webkit.org [Mon, 23 Dec 2013 06:20:59 +0000 (06:20 +0000)]
[WK2][SOUP] WebContext::allowSpecificHTTPSCertificateForHost does not work correctly when m_usesNetworkProcess is false
https://bugs.webkit.org/show_bug.cgi?id=125564

Reviewed Carlos Garcia Campos.

WebContext::allowSpecificHTTPSCertificateForHost should send
AllowSpecificHTTPSCertificateForHost to the web process when
m_usesNetworkProcess is false. Also we shouldn't guard
WebProcess::allowSpecificHTTPSCertificateForHost with
!ENABLE(NETWORK_PROCESS) because we need this method when
m_usesNetworkProcess is false.

Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-22

* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:
* WebProcess/soup/WebProcessSoup.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160986 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK][CMake] Integrate GResource for inspector files (and others?)
mrobinson@webkit.org [Mon, 23 Dec 2013 06:08:44 +0000 (06:08 +0000)]
[GTK][CMake] Integrate GResource for inspector files (and others?)
https://bugs.webkit.org/show_bug.cgi?id=125569

Reviewed by Gustavo Noronha Silva.

Source/WebInspectorUI:

* GNUmakefile.am: Use the new generation script instead of generating with
shell scripting in the makefile.

Source/WebKit2:

* GNUmakefile.am: Use the newly added static WebKit2InspectorGResourceBundle.xml
instead of generating the same file each time.
* PlatformGTK.cmake: Add support for building the GResource bundles into WebKit2.
* UIProcess/API/gtk/WebKit2InspectorGResourceBundle.xml: Added.

Tools:

* gtk/generate-inspector-gresource-manifest.py: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160985 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSmall build fix for GTK+ with the CMake build
mrobinson@webkit.org [Mon, 23 Dec 2013 04:40:05 +0000 (04:40 +0000)]
Small build fix for GTK+ with the CMake build

* CMakeLists.txt: Remove duplicate include directory and add missing directories
necessary for GTK+.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160984 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCreate a skeleton for CSS Selector code generation
benjamin@webkit.org [Mon, 23 Dec 2013 00:45:25 +0000 (00:45 +0000)]
Create a skeleton for CSS Selector code generation
https://bugs.webkit.org/show_bug.cgi?id=126044

Source/JavaScriptCore:

Reviewed by Antti Koivisto and Gavin Barraclough.

* assembler/LinkBuffer.h:
Add a new owner UID for code compiled for CSS.
Export the symbols needed to link code from WebCore.

Source/WebCore:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-22
Reviewed by Antti Koivisto and Gavin Barraclough.

Add CSSCompiler, which provides the basic infrastructure to compile
CSS Selectors on x86_64.

Compilation happens in two phases.
1) The various matching and relation of each CSSSelector is aggregated into units
   matching a single element: SelectorFragment.
   SelectorFragment also knows about the relations between different fragments,
   and contains all the information to generate the code for a particular element.
2) The compiler then goes over the fragments, and generate code based on the information
   of each fragment.

It the current state, SelectorCompiler only compiles the tag matching selectors and
any of the relation between selectors.

Depending on the relation and position of a fragment, failure on traversal or matching
does not necessarily causes the complete selector. A failure can cause matching to
resume from the parent or the sibling of a previously visisted node.
The implementation of this is done through the BacktrackingAction. In case of failure,
the next starting state is setup and the program counter jumps back to the appropriate
starting point.

When backtracking, the method used to save the starting point depends on the type
of backtracking.
The child/parent relation (">") is very common so it uses an additional register to keep
the next starting point (m_descendantBacktrackingStart).
The indirect sibling relation ("~") is much less common and uses the stack to save
the next starting point.

* WebCore.xcodeproj/project.pbxproj:
* cssjit/SelectorCompiler.cpp: Added.
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::compileSelector):
(WebCore::SelectorCompiler::fragmentRelationForSelectorRelation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):
(WebCore::SelectorCompiler::updateChainStates):
(WebCore::SelectorCompiler::isFirstAncestor):
(WebCore::SelectorCompiler::isFirstAdjacent):
(WebCore::SelectorCompiler::isAfterChildRelation):
(WebCore::SelectorCompiler::solveBacktrackingAction):
(WebCore::SelectorCompiler::requiresAdjacentTail):
(WebCore::SelectorCompiler::requiresDescendantTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::computeBacktrackingInformation):
(WebCore::SelectorCompiler::testIsElementFlagOnNode):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToParentElement):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateParentElementTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAncestorTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToPreviousAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateIndirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAdjacentBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDescendantBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateBacktrackingTailsIfNeeded):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):
* cssjit/SelectorCompiler.h: Added.
(WebCore::SelectorCompilationStatus::SelectorCompilationStatus):
(WebCore::SelectorCompilationStatus::operator Status):
(WebCore::SelectorCompiler::simpleSelectorCheckerFunction):
(WebCore::SelectorCompiler::selectorCheckerFunctionWithCheckingContext):
* dom/Element.cpp:
(WebCore::Element::setChildrenAffectedByDirectAdjacentRules):
(WebCore::Element::setChildrenAffectedByForwardPositionalRules):
* dom/Element.h:
(WebCore::Element::tagQNameMemoryOffset):
(WebCore::Element::setChildrenAffectedByForwardPositionalRules):
* dom/Node.h:
(WebCore::Node::parentNodeMemoryOffset):
(WebCore::Node::previousSiblingMemoryOffset):
(WebCore::Node::nodeFlagsMemoryOffset):
(WebCore::Node::flagIsElement):
* dom/QualifiedName.h:
(WebCore::QualifiedName::QualifiedNameImpl::localNameMemoryOffset):
(WebCore::QualifiedName::QualifiedNameImpl::namespaceMemoryOffset):
(WebCore::QualifiedName::implMemoryOffset):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160983 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Crash when trying to select content from invalid region
mihnea@adobe.com [Sun, 22 Dec 2013 18:15:41 +0000 (18:15 +0000)]
[CSSRegions] Crash when trying to select content from invalid region
https://bugs.webkit.org/show_bug.cgi?id=126113

Reviewed by Antti Koivisto.

Source/WebCore:

After fix for https://bugs.webkit.org/show_bug.cgi?id=120769, positionForPoint for a region attempts to use the associated named flow to perform its task.
However, this should happen only when the region is valid. If the region is invalid, part of a dependency cycle, positionForPoint should behave as usual
for a block instead of a region, otherwise it may run into an infinite loop due to cyclic dependencies and a crash will occur.

This patch ensures that positionForPoint region specifie behaviour is followed only if the region is valid - not part of a dependency cycle.

Test: fast/regions/selection/invalid-region-selection-crash.html

* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::positionForPoint):

LayoutTests:

* fast/regions/selection/invalid-region-selection-crash-expected.txt: Added.
* fast/regions/selection/invalid-region-selection-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160979 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Clean-up selection tests a bit
mihnea@adobe.com [Sun, 22 Dec 2013 18:03:03 +0000 (18:03 +0000)]
[CSSRegions] Clean-up selection tests a bit
https://bugs.webkit.org/show_bug.cgi?id=126135

Reviewed by Dirk Schulze.

Move function clearSelection in helper.js. Combine checkResult() from position-for-point* and position-for-point-1*
into a single function, checkSelectionResult() and  move it into helper.js too.

* fast/regions/resources/helper.js:
* fast/regions/selection/position-for-point-1-vert-lr.html:
* fast/regions/selection/position-for-point-1-vert-rl.html:
* fast/regions/selection/position-for-point-1.html:
* fast/regions/selection/position-for-point-vert-lr.html:
* fast/regions/selection/position-for-point-vert-rl.html:
* fast/regions/selection/position-for-point.html:
* fast/regions/selection/selecting-text-through-different-region-flows.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160978 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoURTBF after r160971 to try to make EFL build again.
barraclough@apple.com [Sun, 22 Dec 2013 16:45:31 +0000 (16:45 +0000)]
URTBF after r160971 to try to make EFL build again.

Patch by Csaba Osztrogon√°c <ossy@webkit.org> on 2013-12-22

* WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
(WebKit::internalError):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160977 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLast URTBF after r160971 to make EFL build happy.
ossy@webkit.org [Sun, 22 Dec 2013 16:33:41 +0000 (16:33 +0000)]
Last URTBF after r160971 to make EFL build happy.

* TestWebKitAPI/efl/PlatformWebView.cpp:
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160976 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoURTBF after r160971 to try to make EFL build again.
ossy@webkit.org [Sun, 22 Dec 2013 15:45:57 +0000 (15:45 +0000)]
URTBF after r160971 to try to make EFL build again.

* WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
(WebKit::internalError):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160975 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed. Fix GTK+ build after r160971 and r160969.
carlosgc@webkit.org [Sun, 22 Dec 2013 09:09:01 +0000 (09:09 +0000)]
Unreviewed. Fix GTK+ build after r160971 and r160969.

* GNUmakefile.list.am:
* UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
(webkit_file_chooser_request_select_files):
* UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
(didReceiveWebViewMessageFromInjectedBundle):
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestCreate):
* UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
* UIProcess/API/gtk/WebKitWebResource.cpp:
(webkit_web_resource_get_data):
* UIProcess/soup/WebSoupRequestManagerClient.h:
* WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
(WebKit::internalError):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160974 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoStart refactoring Filter code to reuse CachedSVGDocument for clipPath
krit@webkit.org [Sun, 22 Dec 2013 07:01:57 +0000 (07:01 +0000)]
Start refactoring Filter code to reuse CachedSVGDocument for clipPath
https://bugs.webkit.org/show_bug.cgi?id=126069

Reviewed by Andreas Kling.

Smaller refactoring of the CSS filter style resolver code. Previously the code
requested the FilterOperations list from RenderStyle and compared the content
in this list with an internal map. Then the resource loading was triggered.
With the refactoring we do not request the list from RenderStyle anymore but
rely on the hash map data entirely.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::loadPendingSVGDocuments):
* platform/graphics/filters/FilterOperation.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@160973 268f45cc-cd09-0410-ab3c-d52691b4dbfc