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

Timeline



Sep 13, 2015:

10:08 PM Changeset in webkit [189682] by Chris Dumez
  • 10 edits in trunk

Improve Node pre-insertion validation when the parent is a Document
https://bugs.webkit.org/show_bug.cgi?id=149109
<rdar://problem/22560436>

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/dom/nodes/Node-insertBefore-expected.txt:
  • web-platform-tests/dom/nodes/Node-replaceChild-expected.txt:
  • web-platform-tests/dom/nodes/append-on-Document-expected.txt:
  • web-platform-tests/dom/nodes/prepend-on-Document-expected.txt:

Source/WebCore:

Improve Node pre-insertion validation when the parent is a Document to
match the specification:
https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity
https://dom.spec.whatwg.org/#concept-node-replace

This affects the following API: Node.insertBefore(), Node.appendChild(),
Node.replaceChild().

WebKit current fails to do the following checks whenever the parent is a
Document from pre-insertion validation:

  1. If the inserted Node is a DocumentFragment, we should make sure it contains only one Element.

-> This is because a Document can have only one child that is an

Element [1].

2.a. If an Element is inserted, we should make sure it is not inserted

before a DocumentType.

2.b. If a DocumentType is inserted, we should make sure it is not

inserted after an Element.

-> This is because the DocType must come before the optional Element

child [1].

Firefox and Chrome already match the specification here. This patch
aligns WebKit's behavior with those browsers and the specification.

[1] https://dom.spec.whatwg.org/#node-trees

No new tests, already covered by existing W3C tests.

  • dom/ContainerNode.cpp:

(WebCore::checkAcceptChild):
(WebCore::checkAddChild):
(WebCore::checkReplaceChild):
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::appendChild):
(WebCore::containsConsideringHostElements): Deleted.
(WebCore::checkAcceptChildGuaranteedNodeTypes): Deleted.

  • dom/Document.cpp:

(WebCore::Document::canAcceptChild):
(WebCore::Document::cloneNodeInternal): Deleted.

  • dom/Document.h:
10:06 PM Changeset in webkit [189681] by Chris Dumez
  • 8 edits in trunk

Document.adoptNode() should be able to explicitly adopt a DocumentType node
https://bugs.webkit.org/show_bug.cgi?id=149097
LayoutTests/imported/w3c:

<rdar://problem/22549345>

Reviewed by Ryosuke Niwa.

Rebaseline W3C test now that a new check is passing.

  • web-platform-tests/dom/nodes/Document-adoptNode-expected.txt:

Source/WebCore:

<rdar://problem/22549345>

Reviewed by Ryosuke Niwa.

Document.adoptNode() should be able to explicitly adopt a DocumentType
node as per the latest DOM specification:
https://dom.spec.whatwg.org/#dom-document-adoptnode

Chrome and Firefox match the specidicaiton but WebKit was throwing a
NotSupportedError.

No new tests, already covered by existing test.

  • dom/Document.cpp:

(WebCore::Document::adoptNode): Deleted.

LayoutTests:

Reviewed by Ryosuke Niwa.

Rebaseline DOM3 tests, those seem to be outdated now.

  • dom/xhtml/level3/core/documentadoptnode10-expected.txt:
  • dom/xhtml/level3/core/documentadoptnode11-expected.txt:
  • dom/xhtml/level3/core/documentadoptnode12-expected.txt:
10:03 PM Changeset in webkit [189680] by Chris Dumez
  • 9 edits in trunk

Document.title does not behave according to specification
https://bugs.webkit.org/show_bug.cgi?id=149098

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/html/dom/documents/dom-tree-accessors/document.title-01-expected.txt:
  • web-platform-tests/html/dom/documents/dom-tree-accessors/document.title-02-expected.txt:

Source/WebCore:

Update Document.title to behave according to the latest DOM specification:
https://html.spec.whatwg.org/multipage/dom.html#document.title

In particular, the following Web-Exposed changes were made:

  1. The title Element should be the first title element in the document (in tree order) [1]. Previously, WebKit would use the first title Element *added* to the Document. Document.title returns the text content of the title Element so this change is web-exposed.
  2. If the title Element is replaced after the title has been set by the JS (via the document.title setter), we should update the value returned by the document.title getter. Previously, WebKit would set a flag if the title was explicitly set by JS via document.title setter and later title element changes would not override the title set by the JS. This behavior isn't specified and does not match the behavior of other browsers.

The new behavior is also consistent with the behavior of Firefox and
Chrome.

Some refactoring was made for the sake of clarity now that our
implementation has changed. See details below.

[1] https://html.spec.whatwg.org/multipage/dom.html#the-title-element-2

No new tests, already covered by existing tests.

  • dom/Document.cpp:

(WebCore::Document::updateTitleFromTitleElement):
New convenience method that calls updateTitle() with the text of the
document's current title Element. If there is no title Element, it
clears the title.

(WebCore::Document::updateTitleElement):
Method which updates the Document's title Element whenever a title
Element is added or removed from the Document. Once the title Element
is updated, it takes care of calling updateTitleFromTitleElement() to
update the Document's title.

(WebCore::Document::titleElementAdded):
(WebCore::Document::titleElementRemoved):
(WebCore::Document::titleElementTextChanged):
New Document public API called by HTMLTitleElement / SVGTitleElement
whenever a title Element is added / removed from the Document or
whenever the title element's text has changed. These methods will
take care of calling updateTitleElement() / updateTitleFromTitleElement()
as necessary.
Previously, we would only have 2 methods:

  • setTitleElement() which would be called whenever a title Element was added to the document or when its text had changed. The name was confusing because it would not necessarily set the document's title Element and it would be used both for title element update and a simple title update. This method has been split into 2: titleElementAdded() and titleElementTextChanged().
  • removeTitle() which would be called whenever a title Element was removed. The naming was confusing because it would not necessarily remove the Document's title Element. This is now called titleElementRemoved().
  • html/HTMLTitleElement.cpp:

(WebCore::HTMLTitleElement::insertedInto):
Call the new titleElementAdded() instead of setTitleElement().

(WebCore::HTMLTitleElement::removedFrom):
Call the new titleElementRemoved() instead of removeTitle().

(WebCore::HTMLTitleElement::childrenChanged):
Call the new titleElementTextChanged() instead of
setTitleElement() / removeTitle() as we don't really want
to remove or add a title Element. We merely want to notify
the document that the title element text has changed in
case it is the current title Element of the Document.

(WebCore::HTMLTitleElement::computedTextWithDirection):
Rename textWithDirection() to computedTextWithDirection() to
make it clear it is not a simple getter and make it private
as it is only used to set the m_title member which caches the
computed text.

  • html/HTMLTitleElement.h:

Add new textWithDirection() getter which returns m_title. This
is needed so that Document can query the title of the Element.
Previously, HTMLTitleElement would pass directly m_title to
the Document when calling Document::setTitleElement().

  • svg/SVGTitleElement.cpp:

(WebCore::SVGTitleElement::insertedInto):
Call the new titleElementAdded() instead of setTitleElement().

(WebCore::SVGTitleElement::removedFrom):
Call the new titleElementRemoved() instead of removeTitle().

(WebCore::SVGTitleElement::childrenChanged):
Call the new titleElementTextChanged() instead of
setTitleElement().

9:18 PM Changeset in webkit [189679] by Chris Dumez
  • 8 edits in trunk

document.lastModified should use the user's local time zone
https://bugs.webkit.org/show_bug.cgi?id=149092
LayoutTests/imported/w3c:

<rdar://problem/22567705>

Reviewed by Ryosuke Niwa.

Rebaseline a couple of W3C tests now that more checks are passing.

  • web-platform-tests/html/dom/documents/resource-metadata-management/document-lastModified-01-expected.txt:
  • web-platform-tests/html/dom/documents/resource-metadata-management/document-lastModified-expected.txt:

Source/WebCore:

<rdar://problem/22567705>

Reviewed by Ryosuke Niwa.

document.lastModified should use the user's local time zone:
https://html.spec.whatwg.org/multipage/dom.html#dom-document-lastmodified

Chrome and Firefox comply with the specification but WebKit was using
UTC. This patch aligns WebKit's behavior with the specification and
other browsers.

No new tests, already covered by existing tests.

  • dom/Document.cpp:

(WebCore::Document::lastModified):
(WebCore::Document::setCookieURL): Deleted.

LayoutTests:

Reviewed by Ryosuke Niwa.

Update test so that it converts document.lastModified to UTF before
printing it. This is so that we can consistent layout tests results, no
matter the system's timezone.

  • http/tests/misc/last-modified-parsing-expected.txt:
  • http/tests/resources/last-modified.php:
8:07 PM Changeset in webkit [189678] by Gyuyoung Kim
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark fast/text/international/system-language/system-font-punctuation.html to *Missing* since r188377.
Additionally some tests have been passed since r188693. Removed the tests in TestExpectation.

  • platform/efl/TestExpectations:
8:04 PM Changeset in webkit [189677] by Chris Dumez
  • 15 edits
    2 deletes in trunk

Node.baseURI should not return null for detached nodes
https://bugs.webkit.org/show_bug.cgi?id=149104
<rdar://problem/22559535>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/dom/nodes/Node-baseURI-expected.txt:

Source/WebCore:

Node.baseURI should not return null for detached nodes. It should return
the node document's base URL. The node document is set when the node is
created so it is valid even if the node is detached [1]:
https://dom.spec.whatwg.org/#dom-node-baseuri

WebKit was traversing the ancestors to find the base URL, which only
works if the node is attached. Also, WebKit was taking into account
the xml:base attribute when computing the baseURI.

Both Chrome and Firefox already dropped support for xml:base:
https://code.google.com/p/chromium/issues/detail?id=341854
https://bugzilla.mozilla.org/show_bug.cgi?id=903372

Firefox complies with the specification. Chrome's baseURI still only
works for attached Nodes as their implementation still traverses the
DOM tree, despite dropping support for xml:base.

This patch drops support xml:base when computing Node.baseURI, as
Firefox, Chrome and the latest DOM specification do. It also makes
Node.baseURI work for detached Nodes by returning the base URL of the
node Document. This means we no longer have to traverse the Node's
ancestors in the DOM tree. This is consistent with the behavior of
Firefox and the latest DOM specification.

This patch does not drop the SVGElement.xmlbase attribute yet. However,
we should probably consider making this change as well given that:

  • The SVG2 specification dropped it
  • Chrome dropped it.
  • It no longers impacts Node.baseURI

[1] https://www.w3.org/Bugs/Public/show_bug.cgi?id=20976

No new tests, already covered by existing test.

  • dom/Document.cpp:

(WebCore::Document::setContent): Deleted.

  • dom/Document.h:

(WebCore::Document::inputCursor): Deleted.

  • dom/DocumentType.cpp:

(WebCore::DocumentType::nodeName): Deleted.

  • dom/DocumentType.h:
  • dom/Element.cpp:

(WebCore::Element::imageSourceURL): Deleted.
(WebCore::Element::rendererIsNeeded): Deleted.
(WebCore::Element::createElementRenderer): Deleted.
(WebCore::Element::insertedInto): Deleted.

  • dom/Element.h:
  • dom/Node.cpp:

(WebCore::Node::baseURI):

  • dom/Node.h:
  • svg/SVGElement.idl:

LayoutTests:

  • dom/xhtml/level3/core/nodegetbaseuri03-expected.txt:

Rebaseline outdated DOM3 test.

  • svg/custom/image-base-uri-expected.txt: Removed.
  • svg/custom/image-base-uri.svg: Removed.

Drop outdated SVG test. SVG2 no longer support xml:base.

7:42 PM Changeset in webkit [189676] by Chris Dumez
  • 14 edits in trunk

CharacterData API parameters should not be optional
https://bugs.webkit.org/show_bug.cgi?id=149101
<rdar://problem/22546954>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline W3C tests now that more checks are passing.

  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/dom/nodes/CharacterData-appendData-expected.txt:
  • web-platform-tests/dom/nodes/CharacterData-substringData-expected.txt:

Source/WebCore:

CharacterData API parameters should not be optional as per the DOM
specification:
https://dom.spec.whatwg.org/#characterdata

The parameters are also mandatory in Firefox and Chrome. However,
those parameters are optional in WebKit. When DOMString parameters
were omitted, we would use the "undefined" string instead. When
unsigned long parameters were omitted, we would use 0 instead.
This patch aligns our behavior with the specification and other
major browsers.

No new tests, already covered by existing tests.

  • dom/CharacterData.cpp:

(WebCore::CharacterData::appendData):

  • dom/CharacterData.h:
  • dom/CharacterData.idl:
  • dom/Element.cpp:

(WebCore::Element::mergeWithNextTextNode):

  • dom/Node.cpp:

(WebCore::Node::normalize):

  • xml/parser/XMLDocumentParser.cpp:

(WebCore::XMLDocumentParser::exitText):

LayoutTests:

Update existing test to reflect our web-exposed behavior change.

  • fast/dom/non-numeric-values-numeric-parameters-expected.txt:
  • fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
7:36 PM Changeset in webkit [189675] by Gyuyoung Kim
  • 29 edits in trunk/Source

Remove all uses of PassRefPtr in crypto, storage, and history
https://bugs.webkit.org/show_bug.cgi?id=149091

Reviewed by Andreas Kling.

Source/WebCore:

  • crypto/CryptoKeyPair.cpp:

(WebCore::CryptoKeyPair::CryptoKeyPair):

  • crypto/CryptoKeyPair.h:

(WebCore::CryptoKeyPair::create):

  • crypto/SubtleCrypto.h:

(WebCore::SubtleCrypto::create):

  • crypto/gnutls/CryptoKeyRSAGnuTLS.cpp:

(WebCore::CryptoKeyRSA::create):

  • crypto/keys/CryptoKeyAES.cpp:

(WebCore::CryptoKeyAES::generate):

  • crypto/keys/CryptoKeyAES.h:
  • crypto/keys/CryptoKeyHMAC.cpp:

(WebCore::CryptoKeyHMAC::generate):

  • crypto/keys/CryptoKeyHMAC.h:
  • crypto/keys/CryptoKeyRSA.h:
  • crypto/mac/CryptoKeyRSAMac.cpp:

(WebCore::CryptoKeyRSA::create):

  • history/BackForwardController.cpp:

(WebCore::BackForwardController::BackForwardController):

  • history/BackForwardController.h:
  • history/HistoryItem.cpp:

(WebCore::HistoryItem::setStateObject):
(WebCore::HistoryItem::setFormData):

  • history/HistoryItem.h:

(WebCore::HistoryItem::stateObject):

  • loader/EmptyClients.cpp:
  • page/Page.cpp:

(WebCore::Page::Page):

  • storage/Storage.cpp:

(WebCore::Storage::create):
(WebCore::Storage::Storage):

  • storage/Storage.h:
  • storage/StorageArea.h:
  • storage/StorageMap.cpp:

(WebCore::StorageMap::copy):
(WebCore::StorageMap::setItem):
(WebCore::StorageMap::setItemIgnoringQuota):
(WebCore::StorageMap::removeItem):

  • storage/StorageMap.h:
  • storage/StorageNamespace.h:

Source/WebKit:

  • Storage/StorageNamespaceImpl.cpp:

(WebCore::StorageNamespaceImpl::storageArea):

  • Storage/StorageNamespaceImpl.h:

Source/WebKit2:

  • WebProcess/Storage/StorageNamespaceImpl.cpp:

(WebKit::StorageNamespaceImpl::storageArea):

  • WebProcess/Storage/StorageNamespaceImpl.h:
12:13 PM Changeset in webkit [189674] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

Define HAVE_LINK_PREVIEW in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=149099

Reviewed by Sam Weinig.

  • Platform/spi/ios/UIKitSPI.h:
  • UIProcess/WKImagePreviewViewController.mm:
  • config.h:
10:14 AM WebKitGTK/2.10.x edited by philip.chimento@gmail.com
Clarify [Stable], as discussed on … (diff)
7:02 AM WebKitGTK/2.10.x edited by Michael Catanzaro
Propose r189673 (diff)
7:01 AM Changeset in webkit [189673] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

Webkit Gujarati Translations
https://bugs.webkit.org/show_bug.cgi?id=139530

Unreviewed.

Patch by Ankit Patel <ankit@redhat.com> on 2015-09-13

  • gu.po:

Sep 12, 2015:

11:46 PM Changeset in webkit [189672] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

Another test fix after r189670.

Unreviewed.

  • platform/mac-wk1/TestExpectations:
11:19 PM Changeset in webkit [189671] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

Test fix after r189670.

Unreviewed.

  • platform/mac/TestExpectations:
9:10 PM Changeset in webkit [189670] by mmaxfield@apple.com
  • 5 edits
    8 moves
    5 adds in trunk/LayoutTests

[Cocoa] Add system-language-specific tests
https://bugs.webkit.org/show_bug.cgi?id=148775

Reviewed by Alexey Proskuryakov.

This patch adds (or rewrites) tests to take advantage of our new ability to mock
the system language for testing (https://bugs.webkit.org/show_bug.cgi?id=148671).

It tests these patches:
https://bugs.webkit.org/show_bug.cgi?id=148164
https://bugs.webkit.org/show_bug.cgi?id=147504
https://bugs.webkit.org/show_bug.cgi?id=147862
https://bugs.webkit.org/show_bug.cgi?id=147964

  • fast/text/international/system-language/arabic-glyph-cache-fill-combine-expected.html: Renamed from LayoutTests/fast/text/arabic-glyph-cache-fill-combine-expected.html.
  • fast/text/international/system-language/arabic-glyph-cache-fill-combine.html: Renamed from LayoutTests/fast/text/arabic-glyph-cache-fill-combine.html.
  • fast/text/international/system-language/han-quotes-expected-mismatch.html: Added.
  • fast/text/international/system-language/han-quotes.html: Added.
  • fast/text/international/system-language/hindi-system-font-punctuation-expected.html: Renamed from LayoutTests/fast/text/hindi-system-font-punctuation-expected.html.
  • fast/text/international/system-language/hindi-system-font-punctuation.html: Renamed from LayoutTests/fast/text/hindi-system-font-punctuation.html.
  • fast/text/international/system-language/system-font-punctuation.html: Renamed from LayoutTests/fast/text/system-font-punctuation.html.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios-simulator/fast/text/international/system-language/system-font-punctuation-expected.txt: Renamed from LayoutTests/platform/ios-simulator/fast/text/system-font-punctuation-expected.txt.
  • platform/mac/TestExpectations:
  • platform/mac/fast/text/international/system-language/system-font-punctuation-expected.txt: Renamed from LayoutTests/platform/mac/fast/text/system-font-punctuation-expected.txt.
  • platform/win/TestExpectations:
  • platform/win/fast/text/international/system-language/system-font-punctuation-expected.txt: Renamed from LayoutTests/platform/win/fast/text/system-font-punctuation-expected.txt.
8:47 PM Changeset in webkit [189669] by mmaxfield@apple.com
  • 19 edits
    3 adds in trunk

[Cocoa] Allow testing with the system language
https://bugs.webkit.org/show_bug.cgi?id=148671

Reviewed by Anders Carlsson and Alexey Proskuryakov.

Source/WebKit2:

This patch adds two new SPI functions for setting and retrieving a vector of
override languages to/from the WKContextConfiguration. The implementation of
these functions holds state inside WebProcessPoolConfiguration. Then, when
we launch a process, the WebProcessProxy will inject these override languages
into the ProcessLauncher::LaunchOptions so that the ProcessLauncher can
inject these languages into the XPC Bootstrap message. Then, in the Web
Process's main(), the XPC Boostrap message is read, and the platform
languages are set via NSUserDefaults setting a volatile domain.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(main): Set the volatile domain with NSUserDefaults.

  • UIProcess/API/APIProcessPoolConfiguration.cpp:

(API::ProcessPoolConfiguration::copy):

  • UIProcess/API/APIProcessPoolConfiguration.h: Hold state for the override

languages.

  • UIProcess/API/C/WKContextConfigurationRef.cpp:

(WKContextConfigurationCopyOverrideLanguages): SPI.
(WKContextConfigurationSetOverrideLanguages): Ditto.

  • UIProcess/API/C/WKContextConfigurationRef.h:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService): Inject the languages into the XPC Bootstrap
message.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getLaunchOptions): Inject the override languages
into the ProcessLauncher::LaunchOptions.

Tools:

React to tests marked with language=lang1,lang2,etc in their header.
Once this information is parsed, pass it to
WKContextConfigurationSetOverrideLanguages().

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize): Don't clobber the language
list.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Call
WKContextConfigurationSetOverrideLanguages().
(WTR::updateTestOptionsFromTestHeader): Inspect the language option.

  • WebKitTestRunner/TestOptions.h:
  • WebKitTestRunner/ios/PlatformWebViewIOS.mm:

(WTR::PlatformWebView::viewSupportsOptions): Cause a differing language
option to restart the web process.

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::viewSupportsOptions): Ditto.

LayoutTests:

Add a test for the declarative form of setting the system language.

  • fast/text/international/system-language/declarative-language-expected.txt: Added.
  • fast/text/international/system-language/declarative-language.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/mac/TestExpectations:
7:31 PM Changeset in webkit [189668] by mmaxfield@apple.com
  • 16 edits
    1 move in trunk/Tools

[WKTR] Allow changing the WKContextConfiguration between successive tests
https://bugs.webkit.org/show_bug.cgi?id=148833

Reviewed by Tim Horton.

Previously, we were creating a single WKContext and it lived for the life of the entire test runner.
However, there are certain tests which require specifying options in this object. This patch makes
our existing code for recreating the test runner web view also recreate the WKContext.

As such, our options to the view are now options to the WKContextConfiguration. This patch renames the
class.

  • WebKitTestRunner/ContextConfigurationOptions.h: Renamed from Tools/WebKitTestRunner/ViewOptions.h.
  • WebKitTestRunner/PlatformWebView.h:

(WTR::PlatformWebView::options):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):
(WTR::TestController::generateContextConfiguration):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::ensureViewSupportsOptionsForTest):
(WTR::updateContextConfigurationOptionsFromTestHeader):
(WTR::TestController::contextConfigurationOptionsForTest):
(WTR::TestController::platformCreateWebView):
(WTR::TestController::platformCreateOtherPage):
(WTR::updateViewOptionsFromTestHeader): Deleted.
(WTR::TestController::viewOptionsForTest): Deleted.

  • WebKitTestRunner/TestController.h:

(WTR::TestController::injectedBundlePath):
(WTR::TestController::testPluginDirectory):

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
  • WebKitTestRunner/cocoa/TestControllerCocoa.mm:

(WTR::TestController::platformCreateWebView):
(WTR::TestController::platformCreateOtherPage):

  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/efl/TestControllerEfl.cpp:

(WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
(WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.

  • WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/gtk/TestControllerGtk.cpp:

(WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
(WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.

  • WebKitTestRunner/ios/PlatformWebViewIOS.mm:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/ios/TestControllerIOS.mm:

(WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
(WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
(WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.

6:15 PM WebKitGTK/2.10.x edited by Michael Catanzaro
Propose more translation updates (diff)
6:14 PM Changeset in webkit [189667] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

Updated Spanish translation
https://bugs.webkit.org/show_bug.cgi?id=145550

Unreviewed.

Patch by Francisco Serrador <fserrador@gmail.com> on 2015-09-12

  • es.po:
6:11 PM Changeset in webkit [189666] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

Updated Slovenian translation
https://bugs.webkit.org/show_bug.cgi?id=123080

Unreviewed.

Patch by Matej Urbančič <mateju@svn.gnome.org> on 2015-09-12

  • sl.po:
6:08 PM Changeset in webkit [189665] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

Webkit Tamil translations updated
https://bugs.webkit.org/show_bug.cgi?id=139478

Unreviewed.

Patch by Shantha kumar <shkumar@redhat.com> on 2015-09-12

  • ta.po:
4:59 PM WebKitGTK/2.10.x edited by Michael Catanzaro
Propose r189663, r189664 (diff)
4:56 PM Changeset in webkit [189664] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

[l10n] Updated Bulgarian translation
https://bugs.webkit.org/show_bug.cgi?id=142611

Unreviewed.

Patch by Zahari Yurukov <zahari.yurukov@gmail.com> on 2015-09-12

  • bg.po:
4:54 PM Changeset in webkit [189663] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

[l10n] Updated Polish translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=148475

Unreviewed.

Patch by Piotr Drąg <piotrdrag@gmail.com> on 2015-09-12

  • pl.po:
4:27 PM Changeset in webkit [189662] by Michael Catanzaro
  • 1 edit in trunk/Source/WebCore/platform/gtk/po/ChangeLog

[GTK] [l10n] Updated Turkish translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=148362

Unreviewed.

Patch by Muhammet Kara <muhammetk@gmail.com> on 2015-09-12

  • tr.po: Added.
4:21 PM WebKitGTK/2.10.x edited by Michael Catanzaro
Propose r189661 (diff)
4:20 PM Changeset in webkit [189661] by Michael Catanzaro
  • 1 edit
    1 add in trunk/Source/WebCore/platform/gtk/po

[GTK] [l10n] Updated Turkish translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=148362

Unreviewed.

  • tr.po: Added.
2:52 PM Changeset in webkit [189660] by Chris Dumez
  • 15 edits in trunk

window.EventTarget should exist
https://bugs.webkit.org/show_bug.cgi?id=149085
<rdar://problem/22546774>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/dom/interface-objects-expected.txt:
  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:

Drop [NoInterfaceObject] for the EventTarget interface to match Chrome,
Firefox and the specification:
https://dom.spec.whatwg.org/#interface-eventtarget

No new tests, already covered by existing tests.

  • dom/EventTarget.idl:

LayoutTests:

Update / rebaseline existing test as window.EventTarget now exists.

  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
2:49 PM Changeset in webkit [189659] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS] Allow UDP networking
https://bugs.webkit.org/show_bug.cgi?id=149081
rdar://problem/22291743

Reviewed by Sam Weinig.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
1:52 PM Changeset in webkit [189658] by fpizlo@apple.com
  • 3 edits
    1 add in trunk/Source/JavaScriptCore

REGRESSION(r189585): run-perf-tests Speedometer fails with a console error
https://bugs.webkit.org/show_bug.cgi?id=149066

Reviewed by Michael Saboff.

The bug here was that the new IC code was calling actionForCell() more than once. That's
illegal, since when actionForCell() returns RetryCacheLater, it means that it changed some
object's Structure. The Repatch code was doing things like "if (actionForCell(blah) ==
AttemptToCache)" in more than one place, so that if the first such expression was false, then
we'd fall through to the next one. It's possible for the first call to return RetryCacheLater,
in which case our view of the world just got clobbered and we need to return, and then the
second call will probably return AttemptToCache because it *thinks* that we had bailed the last
time and we're now in a future IC invocation.

The solution is to cache the actionForCell() result. This is a bit tricky, because we need to
do this after we check if we're in a proxy.

Debugging bugs like these requires adding ad hoc bisection code in various places. We already
had the basic hooks for this. This patch makes those hooks a bit more useful. In the case of
the LLInt->JIT tier-up hooks, it adds a CodeBlock* argument so that we can bisect based on the
CodeBlock. In the case of Repatch, it puts the Options::forceICFailure() check in a helper
function that also takes ExecState*, which allows us to bisect on either CodeBlock or
CodeOrigin.

  • jit/Repatch.cpp:

(JSC::actionForCell):
(JSC::forceICFailure):
(JSC::tryCacheGetByID):
(JSC::tryCachePutByID):
(JSC::tryRepatchIn):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::shouldJIT):
(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::entryOSR):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • tests/stress/retry-cache-later.js:
12:02 PM Changeset in webkit [189657] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk/Source/WebKit2

Web Inspector: Extract InspectorFrontendAPI dispatching from WebInspectorUI
https://bugs.webkit.org/show_bug.cgi?id=149089

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-09-12
Reviewed by Brian Burg.

  • CMakeLists.txt:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebInspectorFrontendAPIDispatcher.cpp: Added.

(WebKit::WebInspectorFrontendAPIDispatcher::WebInspectorFrontendAPIDispatcher):
(WebKit::WebInspectorFrontendAPIDispatcher::reset):
(WebKit::WebInspectorFrontendAPIDispatcher::frontendLoaded):
(WebKit::WebInspectorFrontendAPIDispatcher::dispatchCommand):
(WebKit::WebInspectorFrontendAPIDispatcher::dispatchMessageAsync):
(WebKit::WebInspectorFrontendAPIDispatcher::evaluateExpressionOnLoad):

  • WebProcess/WebPage/WebInspectorFrontendAPIDispatcher.h: Added.
  • WebProcess/WebPage/WebInspectorUI.cpp:

(WebKit::WebInspectorUI::WebInspectorUI):
(WebKit::WebInspectorUI::establishConnection):
(WebKit::WebInspectorUI::frontendLoaded):
(WebKit::WebInspectorUI::setDockSide):
(WebKit::WebInspectorUI::setDockingUnavailable):
(WebKit::WebInspectorUI::showConsole):
(WebKit::WebInspectorUI::showResources):
(WebKit::WebInspectorUI::showMainResourceForFrame):
(WebKit::WebInspectorUI::startPageProfiling):
(WebKit::WebInspectorUI::stopPageProfiling):
(WebKit::WebInspectorUI::didSave):
(WebKit::WebInspectorUI::didAppend):
(WebKit::WebInspectorUI::sendMessageToFrontend):
(WebKit::WebInspectorUI::evaluateCommandOnLoad): Deleted.
(WebKit::WebInspectorUI::evaluateExpressionOnLoad): Deleted.
(WebKit::WebInspectorUI::evaluatePendingExpressions): Deleted.

  • WebProcess/WebPage/WebInspectorUI.h:

(WebKit::WebInspectorUI::evaluateCommandOnLoad): Deleted.

11:53 AM Changeset in webkit [189656] by ap@apple.com
  • 1 edit
    2 adds
    1 delete in branches/safari-601-branch/LayoutTests

Re-add Mavericks result with the correct path.

  • platform/mac-mavericks/platform/mac/accessibility: Added.
  • platform/mac-mavericks/platform/mac/accessibility/selection-sync-expected.txt: Added.
  • platform/mac-mavericks/platform/mac/accessibilityselection-sync-expected.txt: Removed.
11:31 AM Changeset in webkit [189655] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Web Inspector: Move Already Generic Inspector Page Context Menu to Generic Setup
https://bugs.webkit.org/show_bug.cgi?id=149088

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-09-12
Reviewed by Brian Burg.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::getContextMenuFromProposedMenu):
(WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::getContextMenuFromProposedMenu): Deleted.
(WebKit::WebInspectorProxy::platformCreateInspectorPage):

10:44 AM Changeset in webkit [189654] by BJ Burg
  • 24 edits in trunk/Source

Web Inspector: disambiguate inspected/frontend controllers and pages in backend code
https://bugs.webkit.org/show_bug.cgi?id=149071

Reviewed by Joseph Pecoraro.

Source/WebCore:

Be consistent about prefixing pages, inspector controllers, and window controllers
with either "frontend" or "inspected", as appropriate. This change makes obvious some bugs
in the frontend connection code, which are tracked by https://webkit.org/b/149006.

No new tests, no behavior change.

  • WebCore.order:
  • inspector/InspectorClient.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::inspectedPageDestroyed):
(WebCore::InspectorController::show):
(WebCore::InspectorController::close):

  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
(WebCore::InspectorFrontendClientLocal::~InspectorFrontendClientLocal):
(WebCore::InspectorFrontendClientLocal::canAttachWindow):
(WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
(WebCore::InspectorFrontendClientLocal::changeAttachedWindowWidth):
(WebCore::InspectorFrontendClientLocal::openInNewTab):
(WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
(WebCore::InspectorFrontendClientLocal::showMainResourceForFrame):
(WebCore::InspectorFrontendClientLocal::isUnderTest):

  • inspector/InspectorFrontendClientLocal.h:
  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::freePage):

  • loader/EmptyClients.h:

Source/WebKit/ios:

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::inspectedPageDestroyed): Renamed.
(WebInspectorClient::openLocalFrontend): Renamed.
(WebInspectorClient::closeLocalFrontend): Renamed.
(WebInspectorClient::inspectorDestroyed): Deleted.
(WebInspectorClient::openInspectorFrontend): Deleted.
(WebInspectorClient::closeInspectorFrontend): Deleted.
(WebInspectorClient::showInspectorIndication):
(WebInspectorClient::hideInspectorIndication):
(WebInspectorClient::didSetSearchingForNode):
(WebInspectorFrontendClient::WebInspectorFrontendClient):

Source/WebKit/mac:

Be consistent about prefixing pages, inspector controllers, and window controllers
with either "frontend" or "inspected", as appropriate. This change makes obvious some bugs
in the frontend connection code, which are tracked by https://webkit.org/b/149006.

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

(WebInspectorClient::WebInspectorClient): Renamed.
(WebInspectorClient::inspectedPageDestroyed): Renamed.
(WebInspectorClient::openLocalFrontend): Renamed.
(WebInspectorClient::closeLocalFrontend): Renamed.
(WebInspectorClient::didSetSearchingForNode):
(WebInspectorFrontendClient::WebInspectorFrontendClient):
(WebInspectorFrontendClient::attachAvailabilityChanged):
(WebInspectorFrontendClient::canAttach):
(WebInspectorFrontendClient::frontendLoaded):
(WebInspectorFrontendClient::startWindowDrag):
(WebInspectorFrontendClient::bringToFront):
(WebInspectorFrontendClient::closeWindow):
(WebInspectorFrontendClient::disconnectFromBackend):
(WebInspectorFrontendClient::attachWindow):
(WebInspectorFrontendClient::detachWindow):
(WebInspectorFrontendClient::setAttachedWindowHeight):
(WebInspectorFrontendClient::setToolbarHeight):
(WebInspectorFrontendClient::updateWindowTitle):
(WebInspectorFrontendClient::save):
(WebInspectorFrontendClient::append):
(-[WebInspectorWindowController init]):
(-[WebInspectorWindowController initWithInspectedWebView:isUnderTest:]):
(-[WebInspectorWindowController dealloc]):
(-[WebInspectorWindowController frontendWebView]):
(-[WebInspectorWindowController close]):
(-[WebInspectorWindowController showWindow:]):
(-[WebInspectorWindowController setAttachedWindowHeight:]):
(-[WebInspectorWindowController destroyInspectorView]):
(-[WebInspectorWindowController webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
(WebInspectorClient::inspectorDestroyed): Deleted.
(WebInspectorClient::openInspectorFrontend): Deleted.
(WebInspectorClient::closeInspectorFrontend): Deleted.
(-[WebInspectorWindowController webView]): Deleted.

  • WebInspector/WebInspector.h:
  • WebInspector/WebInspector.mm:

(-initWithInspectedWebView:): Renamed.
(-inspectedWebViewClosed): Renamed.
(-showWindow):
(-close:):
(-evaluateInFrontend:script:):
(-releaseFrontend):
(-initWithWebView:): Deleted.
(-webViewClosed): Deleted.

  • WebView/WebView.mm:

(-[WebView _close]):
(-[WebView inspector]):

Source/WebKit/win:

Be consistent about prefixing pages, inspector controllers, and window controllers
with either "frontend" or "inspected", as appropriate. This change makes obvious some bugs
in the frontend connection code, which are tracked by https://webkit.org/b/149006.

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorClient::inspectedPageDestroyed): Renamed.
(WebInspectorClient::openLocalFrontend): Renamed.
(WebInspectorClient::closeLocalFrontend): Renamed.
(WebInspectorClient::inspectorDestroyed): Deleted.
(WebInspectorClient::openInspectorFrontend): Deleted.
(WebInspectorClient::closeInspectorFrontend): Deleted.

(WebInspector::createInstance):
(WebInspector::WebInspector):
(WebInspector::inspectedWebViewClosed): Renamed.
(WebInspector::show):
(WebInspector::close):
(WebInspector::isJavaScriptProfilingEnabled):
(WebInspector::setJavaScriptProfilingEnabled):
(WebInspector::evaluateInFrontend):
(WebInspector::webViewClosed): Deleted.

(WebView::close):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::inspectedPageDestroyed): Renamed.
(WebKit::WebInspectorClient::openLocalFrontend): Renamed.
(WebKit::WebInspectorClient::closeLocalFrontend): Renamed.
(WebKit::WebInspectorClient::inspectorDestroyed): Deleted.
(WebKit::WebInspectorClient::openInspectorFrontend): Deleted.
(WebKit::WebInspectorClient::closeInspectorFrontend): Deleted.

  • WebProcess/WebCoreSupport/WebInspectorClient.h:
10:33 AM Changeset in webkit [189653] by Chris Dumez
  • 7 edits in trunk

ChildNode.replaceWith() without argument should replace the node with an empty DocumentFragment
https://bugs.webkit.org/show_bug.cgi?id=149073
<rdar://problem/22547801>

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/dom/nodes/ChildNode-replaceWith-expected.txt:

Source/WebCore:

ChildNode.replaceWith() without argument should replace the node with
an empty DocumentFragment, as per the specification:
https://dom.spec.whatwg.org/#dom-childnode-replacewith
https://dom.spec.whatwg.org/#converting-nodes-into-a-node

Previously, WebKit did not do anything in this case. This patch fixes
it.

No new tests, already covered by existing test.

  • dom/Node.cpp:

(WebCore::Node::replaceWith):

LayoutTests:

Fix / rebaseline test now that our behavior has changed.

  • fast/dom/ChildNode-replaceWith-expected.txt:
  • fast/dom/ChildNode-replaceWith.html:
8:58 AM Changeset in webkit [189652] by ap@apple.com
  • 9 edits
    1 copy in branches/safari-601-branch/LayoutTests

Roll out r189649, and just have custom results for Mavericks instead.

  • platform/mac-mavericks/platform/mac/accessibilityselection-sync-expected.txt: Copied from LayoutTests/platform/mac/accessibility/selection-sync-expected.txt.
  • platform/mac/accessibility/removing-textarea-after-edit-crash-expected.txt:
  • platform/mac/accessibility/removing-textarea-after-edit-crash.html:
  • platform/mac/accessibility/select-element-selection-with-optgroups.html:
  • platform/mac/accessibility/selected-rows-table.html:
  • platform/mac/accessibility/selection-notification-focus-change.html:
  • platform/mac/accessibility/selection-sync-expected.txt:
  • platform/mac/accessibility/selection-sync.html:
  • platform/mac/accessibility/setting-attributes-is-asynchronous.html:
1:47 AM Changeset in webkit [189651] by Gyuyoung Kim
  • 12 edits in trunk/Source

Remove all uses of PassRefPtr in WebCore/plugins
https://bugs.webkit.org/show_bug.cgi?id=149055

Reviewed by Darin Adler.

  • plugins/DOMMimeType.cpp:

(WebCore::DOMMimeType::DOMMimeType):
(WebCore::DOMMimeType::enabledPlugin):

  • plugins/DOMMimeType.h:

(WebCore::DOMMimeType::create):

  • plugins/DOMMimeTypeArray.cpp:

(WebCore::DOMMimeTypeArray::item):

  • plugins/DOMMimeTypeArray.h:
  • plugins/DOMPlugin.cpp:

(WebCore::DOMPlugin::item):

  • plugins/DOMPlugin.h:
  • plugins/DOMPluginArray.cpp:

(WebCore::DOMPluginArray::item):

  • plugins/DOMPluginArray.h:
  • plugins/PluginViewBase.h:

(WebCore::PluginViewBase::bindingInstance):

1:45 AM Changeset in webkit [189650] by Gyuyoung Kim
  • 11 edits in trunk/Source/WebCore

Remove all uses of PassRefPtr in WebCore/accessibility and WebCore/fileapi
https://bugs.webkit.org/show_bug.cgi?id=149059

Reviewed by Darin Adler.

  • accessibility/AXObjectCache.cpp:
  • accessibility/AccessibilityObject.cpp:

(WebCore::rangeClosestToRange):
(WebCore::AccessibilityObject::rangeOfStringClosestToRangeInDirection):
(WebCore::AccessibilityObject::selectionRange):
(WebCore::AccessibilityObject::selectText):

  • accessibility/AccessibilityObject.h:
  • accessibility/ios/AXObjectCacheIOS.mm:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper _convertToDOMRange:]):
(-[WebAccessibilityObjectWrapper textMarkerForPosition:]):

  • accessibility/mac/AXObjectCacheMac.mm:
  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper _textMarkerForIndex:]):

  • fileapi/FileList.h:

(WebCore::FileList::append):

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore::BlobBuilder::append):

  • fileapi/WebKitBlobBuilder.h:
Note: See TracTimeline for information about the timeline view.