WebKit-https.git
8 years agoBuild fix. Use internal pcre on glib, make gnutls a dependency of
kov@webkit.org [Fri, 2 Dec 2011 18:30:58 +0000 (18:30 +0000)]
Build fix. Use internal pcre on glib, make gnutls a dependency of
glib-networking, unset AR_FLAGS for jhbuild builds, and run jhbuild
in non-interactive mode.

* Scripts/update-webkitgtk-libs:
* gtk/jhbuild.modules:
* gtk/run-with-jhbuild:

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

8 years agoFix for Python 2.6
aroben@apple.com [Fri, 2 Dec 2011 18:26:31 +0000 (18:26 +0000)]
Fix for Python 2.6

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunUnitTests.countFailures): Removed the flags parameter to re.split, which was only added
in Python 2.7, and used whitespace instead of start-of-string/end-of-string markers when
searching for "Tests that timed out:" etc. This makes our check less strict, but it
shouldn't matter given the kinds of content we parse.

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

8 years agoFix names of failed/timed out tests in run-api-tests output
aroben@apple.com [Fri, 2 Dec 2011 18:19:40 +0000 (18:19 +0000)]
Fix names of failed/timed out tests in run-api-tests output

Fixes <http://webkit.org/b/73663> run-api-tests prints suite names twice for failed or timed
out tests

We were ending up with the suite name doubled (e.g., "WebKit2.WebKit2.MouseMoveAfterCrash").

Reviewed by Simon Fraser.

* Scripts/run-api-tests:
(runTest): Don't prepend the suite name to $test. It's already been prepended at the start
of this function.

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

8 years ago[GTK] generate-gtkdoc should respect build type
mrobinson@webkit.org [Fri, 2 Dec 2011 18:17:17 +0000 (18:17 +0000)]
[GTK] generate-gtkdoc should respect build type
https://bugs.webkit.org/show_bug.cgi?id=73296

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(buildAutotoolsProject): Pass the --debug to the generate-gtkdoc script.
* gtk/common.py: If --build is passed give preference to the Debug build directory.

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

8 years ago[nrwt] fix wdiff output
tony@chromium.org [Fri, 2 Dec 2011 18:11:45 +0000 (18:11 +0000)]
[nrwt] fix wdiff output
https://bugs.webkit.org/show_bug.cgi?id=73604

Reviewed by Adam Barth.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.wdiff_text):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_wdiff_text):

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

8 years agoTeach build.webkit.org to display how many unit tests failed or timed out
aroben@apple.com [Fri, 2 Dec 2011 18:01:31 +0000 (18:01 +0000)]
Teach build.webkit.org to display how many unit tests failed or timed out

Fixes <http://webkit.org/b/73659> It's hard to tell how many unit tests are failing on
build.webkit.org

We now display something like "5 unit tests failed or timed out". Eventually we might want
to split out how many failure vs. timeouts there were.

Reviewed by Darin Adler.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(TestWithFailureCount): Moved this class up to the top of the file so it is before any other
classes that may want to subclass it.
(RunUnitTests): Changed to inherit from TestWithFailureCount.
(RunUnitTests.countFailures): Added. Counts the number of tests following the "Tests that
timed out:" and "Tests that failed:" lines, if present.

* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(StubStdio):
(StubRemoteCommand):
Added these two stub classes to mimic buildbot's RemoteCommand and log classes.

(RunUnitTestsTest.assertFailures): Helper method to check that we interpreted the results of
the test run correctly.

(RunUnitTestsTest.test_no_failures_or_timeouts):
(RunUnitTestsTest.test_one_failure):
(RunUnitTestsTest.test_multiple_failures):
(RunUnitTestsTest.test_one_timeout):
(RunUnitTestsTest.test_multiple_timeouts):
(RunUnitTestsTest.test_multiple_failures_and_timeouts):
Test various cases.

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

8 years agoTeach prepare-ChangeLog to treat master.cfg as a Python file
aroben@apple.com [Fri, 2 Dec 2011 18:00:43 +0000 (18:00 +0000)]
Teach prepare-ChangeLog to treat cfg as a Python file

Fixes <http://webkit.org/b/73658> prepare-ChangeLog doesn't show modified classes/functions
in buildbot's master.cfg

Reviewed by Darin Adler.

* Scripts/prepare-ChangeLog:
(get_function_line_ranges): Use get_function_line_ranges_for_python if the filename is
master.cfg.

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

8 years agoUnreviewed, rolling out r101805.
darin@apple.com [Fri, 2 Dec 2011 17:49:02 +0000 (17:49 +0000)]
Unreviewed, rolling out r101805.
http://trac.webkit.org/changeset/101805
https://bugs.webkit.org/show_bug.cgi?id=73670

Many canvas tests started failing due to the isEmpty change
(Requested by darin on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-02

Source/WebCore:

* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::boundingRect):
(WebCore::Path::fastBoundingRect):
(WebCore::Path::isEmpty):

LayoutTests:

* platform/chromium-mac/svg/custom/path-moveto-only-rendering-expected.png: Removed.
* platform/chromium-mac/svg/custom/path-moveto-only-rendering-expected.txt: Removed.
* platform/chromium-mac/svg/custom/subpaths-moveto-only-rendering-expected.png: Removed.
* platform/chromium-mac/svg/custom/subpaths-moveto-only-rendering-expected.txt: Removed.
* platform/chromium-mac/svg/custom/zero-path-square-cap-rendering2-expected.txt: Copied from LayoutTests/svg/custom/zero-path-square-cap-rendering2-expected.txt.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering2-expected.txt: Copied from LayoutTests/svg/custom/zero-path-square-cap-rendering2-expected.txt.
* platform/chromium/test_expectations.txt:
* platform/mac/svg/custom/path-moveto-only-rendering-expected.png: Removed.
* platform/mac/svg/custom/path-moveto-only-rendering-expected.txt: Removed.
* platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.png: Removed.
* platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.txt: Removed.
* platform/win/svg/custom/path-moveto-only-rendering-expected.png: Removed.
* platform/win/svg/custom/path-moveto-only-rendering-expected.txt: Removed.
* platform/win/svg/custom/subpaths-moveto-only-rendering-expected.png: Removed.
* platform/win/svg/custom/subpaths-moveto-only-rendering-expected.txt: Removed.
* svg/custom/path-moveto-only-rendering.svg: Removed.
* svg/custom/subpaths-moveto-only-rendering.svg: Removed.
* svg/custom/zero-path-square-cap-rendering2-expected.txt:

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

8 years ago[WebKit2][gtk] Add 'enable-dns-prefetching' property to WebKitSettings
commit-queue@webkit.org [Fri, 2 Dec 2011 17:44:27 +0000 (17:44 +0000)]
[WebKit2][gtk] Add 'enable-dns-prefetching' property to WebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=73414

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-12-02
Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty): Add new set function.
(webKitSettingsGetProperty): Add new get function.
(webkit_settings_class_init): Register new property.
(webkit_settings_get_enable_dns_prefetching): API to get 'enable-dns-prefetching' property.
(webkit_settings_set_enable_dns_prefetching): API to set 'enable-dns-prefetching' property.
* UIProcess/API/gtk/WebKitSettings.h: Expose new public API's.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new APIs to gtk-doc sections file.
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings): Add new tests.

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

8 years ago[GTK] Create a wrapper script that knows how to install jhbuild and run commands...
mrobinson@webkit.org [Fri, 2 Dec 2011 17:44:05 +0000 (17:44 +0000)]
[GTK] Create a wrapper script that knows how to install jhbuild and run commands with it
https://bugs.webkit.org/show_bug.cgi?id=73669

Reviewed by Gustavo Noronha Silva.

Add a wrapper script that knows how to install jhbuild and also to wrap commands
in the jhbuild shell.

* Scripts/webkitdirs.pm:
(runAutogenForAutotoolsProject): Use the new wrapper script.
(mustReRunAutogen): Ditto.
(buildAutotoolsProject): Ditto.
* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkDriver.cmd_line): Ditto.
* gtk/run-with-jhbuild: Added.

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

8 years ago[Mac] Reference count threading violation in FormDataStreamMac.mm
darin@apple.com [Fri, 2 Dec 2011 17:42:54 +0000 (17:42 +0000)]
[Mac] Reference count threading violation in FormDataStreamMac.mm
https://bugs.webkit.org/show_bug.cgi?id=73627

Reviewed by Sam Weinig.

Shows up as a crash during existing layout test runs so no new tests are required.

* platform/network/mac/FormDataStreamMac.mm:
(WebCore::streamFieldsMap): Replaced getStreamFormDataMap with this.
Use an NSMapTable instead of a HashMap because we need to remove items from this
on a non-main thread.
(WebCore::associateStreamWithResourceHandle): Use NSMapGet instead of
HashMap::contains here.
(WebCore::formCreate): FormStreamFields now stores a RefPtr to the form data.
Added the code to fill that in. Did it in a more modern way to avoid the leakRef
and adoptRef that were used before. Replaced the code that set up the stream
form data map entry with code that sets an entry in the streamFieldsMap.
(WebCore::formFinishFinalizationOnMainThread): Added. Contains the work of
finalization that must be done on the main thread, specifically, destroying the
fields structure that contains objects with RefPtr in them. We can't touch these
reference counts on non-main threads.
(WebCore::formFinalize): Changed this to use NSMapRemove on the streamFieldsMap.
Added a callOnMainThread to finish the finalization.
(WebCore::setHTTPBody): Removed the leakRef, no longer needed, that used to be
balanced by an adoptRef in formCreate.
(WebCore::httpBodyFromStream): Changed to use NSMapGet.

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=73520
antti@apple.com [Fri, 2 Dec 2011 17:42:04 +0000 (17:42 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=73520
REGRESSION(r101524): Article titles invisible until hover on blaze.com

Source/WebCore:

Reviewed by Darin Adler.

We need to invalidate the matched declaration cache when new web fonts are loaded.
Fonts in the cached RenderStyles may not be valid anymore.

Also renamed m_matchStyleDeclarationCache -> m_matchedStyleDeclarationCache.

Test reduction by the Reduction Fairy (aka kling).

Test: fast/css/font-face-cache-bug.html

* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
(WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
(WebCore::CSSStyleSelector::invalidateMatchedDeclarationCache):
* css/CSSStyleSelector.h:

LayoutTests:

Reviewed by Darin Adler.

Test reduction by the Reduction Fairy (aka kling).

* fast/css/font-face-cache-bug-expected.txt: Added.
* fast/css/font-face-cache-bug.html: Added.

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

8 years ago[GTK] Add glib, glib-networking, gnutls and libsoup to jhbuild
kov@webkit.org [Fri, 2 Dec 2011 17:41:04 +0000 (17:41 +0000)]
[GTK] Add glib, glib-networking, gnutls and libsoup to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=73664

Reviewed by Martin Robinson.

This patch adds our HTTP library and its main dependencies; this
should not affect layout or rendering.

* gtk/jhbuild.modules:

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

8 years agoMediaControls should use MediaController if present.
jer.noble@apple.com [Fri, 2 Dec 2011 17:35:54 +0000 (17:35 +0000)]
MediaControls should use MediaController if present.
https://bugs.webkit.org/show_bug.cgi?id=71410

Reviewed by Eric Carlson.

No new tests; covered by existing tests.

Add support for individual media controls to control the MediaController of their associated
HTMLMediaElement, if present.

The video spec requires that UA provided media controls be implemented in terms of their
HTMLMediaElement's MediaController, if present.  So for each of the media controls, modify
their constructor to take a Document* instead of an HTMLMediaElement, and add an setter
taking a MediaControllerInterface.

Now that MediaControls have an abstract interface instead of an HTMLMediaElement, use toParentMediaElement
to find the controllingVideoElement.
* accessibility/AccessibilityMediaControls.cpp:
(WebCore::AccessibilityMediaControlsContainer::controllingVideoElement):

Pass the MediaController or the HTMLMediaElement when setting up the elements controls.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::createMediaControls):
(WebCore::HTMLMediaElement::setMediaController):

The following functions have only constructor changes:
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlElement::MediaControlElement):
(WebCore::MediaControlPanelElement::MediaControlPanelElement):
(WebCore::MediaControlPanelElement::create):
(WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
(WebCore::MediaControlTimelineContainerElement::create):
(WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
(WebCore::MediaControlVolumeSliderContainerElement::create):
(WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
(WebCore::MediaControlStatusDisplayElement::create):
(WebCore::MediaControlInputElement::MediaControlInputElement):
(WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
(WebCore::MediaControlMuteButtonElement::defaultEventHandler):
(WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement):
(WebCore::MediaControlPanelMuteButtonElement::create):
(WebCore::MediaControlVolumeSliderMuteButtonElement::MediaControlVolumeSliderMuteButtonElement):
(WebCore::MediaControlVolumeSliderMuteButtonElement::create):
(WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
(WebCore::MediaControlPlayButtonElement::create):
(WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
(WebCore::MediaControlSeekForwardButtonElement::MediaControlSeekForwardButtonElement):
(WebCore::MediaControlSeekForwardButtonElement::create):
(WebCore::MediaControlSeekBackButtonElement::MediaControlSeekBackButtonElement):
(WebCore::MediaControlSeekBackButtonElement::create):
(WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement):
(WebCore::MediaControlRewindButtonElement::create):
(WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement):
(WebCore::MediaControlReturnToRealtimeButtonElement::create):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
(WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
(WebCore::MediaControlTimelineElement::create):
(WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement):
(WebCore::MediaControlVolumeSliderElement::create):
(WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
(WebCore::MediaControlFullscreenVolumeSliderElement::MediaControlFullscreenVolumeSliderElement):
(WebCore::MediaControlFullscreenVolumeSliderElement::create):
(WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
(WebCore::MediaControlFullscreenButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMinButtonElement::MediaControlFullscreenVolumeMinButtonElement):
(WebCore::MediaControlFullscreenVolumeMinButtonElement::create):
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::MediaControlFullscreenVolumeMaxButtonElement):
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::create):
(WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
(WebCore::MediaControlTimeRemainingDisplayElement::create):
(WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement):
(WebCore::MediaControlCurrentTimeDisplayElement::create):
(WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement):
* html/shadow/MediaControlRootElement.cpp:
(WebCore::MediaControlRootElement::MediaControlRootElement):
(WebCore::MediaControls::create):
(WebCore::MediaControlRootElement::create):
* html/shadow/MediaControlRootElement.h:
* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::MediaControls):
* html/shadow/MediaControls.h:

The following functions now call MediaControllerInterface instead of HTMLMediaElement directly:
* html/shadow/MediaControlElements.h:
(WebCore::MediaControlStatusDisplayElement::update):
(WebCore::MediaControlMuteButtonElement::updateDisplayType):
(WebCore::MediaControlPlayButtonElement::defaultEventHandler):
(WebCore::MediaControlPlayButtonElement::updateDisplayType):
(WebCore::MediaControlSeekButtonElement::startTimer):
(WebCore::MediaControlSeekButtonElement::stopTimer):
(WebCore::MediaControlSeekButtonElement::nextRate):
(WebCore::MediaControlSeekButtonElement::seekTimerFired):
(WebCore::MediaControlRewindButtonElement::defaultEventHandler):
(WebCore::MediaControlReturnToRealtimeButtonElement::defaultEventHandler):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
(WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
(WebCore::MediaControlTimelineElement::defaultEventHandler):
(WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
(WebCore::MediaControlFullscreenVolumeMinButtonElement::defaultEventHandler):
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::defaultEventHandler):
* html/shadow/MediaControlRootElement.cpp:
(WebCore::MediaControlRootElement::reset):
(WebCore::MediaControlRootElement::playbackStarted):
(WebCore::MediaControlRootElement::playbackProgressed):
(WebCore::MediaControlRootElement::playbackStopped):
(WebCore::MediaControlRootElement::updateTimeDisplay):
(WebCore::MediaControlRootElement::loadedMetadata):
(WebCore::MediaControlRootElement::changedVolume):
(WebCore::MediaControlRootElement::enteredFullscreen):
(WebCore::MediaControlRootElement::showVolumeSlider):
(WebCore::MediaControlRootElement::defaultEventHandler):
(WebCore::MediaControlRootElement::startHideFullscreenControlsTimer):
(WebCore::MediaControlRootElement::hideFullscreenControlsTimerFired):
* html/shadow/MediaControlRootElementChromium.cpp:
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
(WebCore::MediaControls::create):
(WebCore::MediaControlRootElementChromium::create):
(WebCore::MediaControlRootElementChromium::reset):
(WebCore::MediaControlRootElementChromium::playbackStarted):
(WebCore::MediaControlRootElementChromium::playbackProgressed):
(WebCore::MediaControlRootElementChromium::playbackStopped):
(WebCore::MediaControlRootElementChromium::updateTimeDisplay):
(WebCore::MediaControlRootElementChromium::defaultEventHandler):
(WebCore::MediaControlRootElementChromium::changedVolume):
(WebCore::MediaControlRootElementChromium::showVolumeSlider):
* html/shadow/MediaControlRootElementChromium.h:

The following functions set the current MediaControllerInterface.
* html/shadow/MediaControlRootElement.cpp:
(WebCore::MediaControlRootElement::setMediaController):
* html/shadow/MediaControlElements.h:
(WebCore::MediaControlElement::setMediaController):
(WebCore::MediaControlElement::mediaController):
(WebCore::MediaControlInputElement::setMediaController):
(WebCore::MediaControlInputElement::mediaController):
* html/shadow/MediaControlRootElementChromium.cpp:
(WebCore::MediaControlRootElementChromium::setMediaController):

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

8 years agoUnreviewed, rolling out r101801.
commit-queue@webkit.org [Fri, 2 Dec 2011 17:07:26 +0000 (17:07 +0000)]
Unreviewed, rolling out r101801.
http://trac.webkit.org/changeset/101801
https://bugs.webkit.org/show_bug.cgi?id=73667

Build is still broken (Requested by Ossy on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-02

* assembler/SH4Assembler.h:

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

8 years agoChanges to localStorageDatabasePath don't have any effect on Windows
sfalken@apple.com [Fri, 2 Dec 2011 17:04:45 +0000 (17:04 +0000)]
Changes to localStorageDatabasePath don't have any effect on Windows
https://bugs.webkit.org/show_bug.cgi?id=73606
<rdar://problem/10491296>

Reviewed by Darin Adler.

* WebView.cpp:
(WebView::notifyPreferencesChanged): Propagate local storage path change to m_page's settings.

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

8 years agoUnreviewed, skip failing websocket test on GTK.
philn@webkit.org [Fri, 2 Dec 2011 17:01:34 +0000 (17:01 +0000)]
Unreviewed, skip failing websocket test on GTK.

* platform/gtk/Skipped: Skip http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html

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

8 years agoPrepare to deploy pass and peek types in the HashMap class
darin@apple.com [Fri, 2 Dec 2011 16:50:32 +0000 (16:50 +0000)]
Prepare to deploy pass and peek types in the HashMap class
https://bugs.webkit.org/show_bug.cgi?id=73477

Reviewed by Adam Roben.

This patch adds private typedefs inside the HashMap class,
and uses them as appropriate. A future patch will actually
tie those typedefs to hash traits, which will allow us to
make HashMap work with OwnPtr mapped values and to optimize
how HashMap works with RefPtr mapped values.

Also changed the hash translator and adapter struct templates
to use template functions to simplify them and make them more
flexible.

Also removed some unused template arguments.

This goes out of its way to not change behavior. Future patches
will change the peek type to be a reference type, which will
reduce reference count churn a bit for hash tables with RefPtr
mapped values, and then do further optimizations for RefPtr
and OwnPtr by getting types from the hash traits.

* wtf/HashMap.h: Added MappedPassInType, MappedPassOutType,
and MappedPeekType typedefs, and used them for the arguments
and return types of the get, set, add, take, and inlineAdd
functions.
(WTF::HashMapTranslator): Changed this struct template to take
fewer arguments, and changed its member functions to be
function templates instead. This allows the compiler to
determine types more flexibly and also simplifies use of it.
(WTF::HashMapTranslatorAdapter): Ditto.
(WTF::HashMap::find): Updated to use new HashMapTranslatorAdapter.
Also reduced the arguments passed to the HashTable function template.
(WTF::HashMap::contains): Ditto.
(WTF::HashMap::inlineAdd): Ditto. Also take MappedPassInType.
(WTF::HashMap::set): Ditto.
(WTF::HashMap::add): Ditto.
(WTF::HashMap::inlineGet): Ditto, but return MappedPeekType.
(WTF::HashMap::get): Ditto.
(WTF::HashMap::take): Ditto, but return MappedPassOutType and use
that type in the implementation.
(WTF::deleteAllValues): Removed unneeded template arguments from
call to deleteAllPairSeconds.
(WTF::deleteAllKeys): Removed unneeded template arguments from
call to deleteAllPairFirsts.

* wtf/HashSet.h:
(WTF::IdentityExtractor): Changed this to be a struct rather than
a struct template, and replaced the extract function with a function
template. This allows the compiler to deduce the type.
(WTF::HashSetTranslatorAdapter): Changed this struct template to take
fewer arguments, and changed its member functions to be
function templates instead. This allows the compiler to
determine types more flexibly and also simplifies use of it.
(WTF::HashSet::find): Updated to use new HashSetTranslatorAdapter.
Also reduced the arguments passed to the HashTable function template.
(WTF::HashSet::contains): Ditto.
(WTF::HashSet::add): Ditto.

* wtf/HashTable.h:
(WTF::IdentityHashTranslator): Changed this struct template to take
fewer arguments, and changed its member functions to be
function templates instead. This allows the compiler to
determine types more flexibly and also simplifies use of it.
(WTF::HashTable::add): Reduced arguments passed to the function template.
(WTF::HashTable::find): Ditto, also reversed the template arguments so the
translator comes first so the compiler can deduce the other type.
(WTF::HashTable::contains): Ditto.
(WTF::HashTable::lookup): Ditto.
(WTF::HashTable::lookupForWriting): Ditto.
(WTF::HashTable::checkKey): Ditto.
(WTF::HashTable::fullLookupForWriting): Ditto.
(WTF::HashTable::add): Ditto.
(WTF::HashTable::addPassingHashCode): Ditto.
(WTF::HashTable::find): Ditto.
(WTF::HashTable::contains): Ditto.

* wtf/ListHashSet.h:
(WTF::ListHashSetNodeHashFunctions): Changed this struct template to take
fewer arguments, and changed its member functions to be function templates
instead. This allows the compiler to determine types more flexibly and
also simplifies use of it.
(WTF::ListHashSet::find): Reduced the arguments passed to the HashTable
functon template.
(WTF::ListHashSetTranslatorAdapter): Changed this struct template in the
same way we changed ListHashSetNodeHashFunctions above.
(WTF::ListHashSetTranslatorAdapter::equal):
(WTF::::contains):
(WTF::::add):
(WTF::::insertBefore):

* wtf/RefPtrHashMap.h: Updated comments. Removed the
RefPtrHashMapRawKeyTranslator struct template; we can use the
HashMapTranslator struct template from HashMap.h instead now that
it is more flexible. Added MappedPassInType, MappedPassOutType,
and MappedPeekType typedefs, and used them for the arguments
and return types of the get, inlineGet, set, add, take, and inlineAdd
functions. Changed the name of the RawKeyTranslator type to
Translator since it's now a class that can handle both raw keys
and conventional keys.
(WTF::HashMap::find): Changed to use Translator instead of RawKeyTranslator.
Reduced the arguments passed to the HashTable function template.
(WTF::HashMap::contains): Ditto.
(WTF::HashMap::inlineAdd): Ditto. Also take MappedPassInType.
(WTF::HashMap::set): Ditto.
(WTF::HashMap::add): Ditto.
(WTF::HashMap::inlineGet): Ditto, but return MappedPeekType.
(WTF::HashMap::get): Ditto.
(WTF::HashMap::take): Ditto, but return MappedPassOutType and use
that type in the implementation.
(WTF::deleteAllValues): Removed unneeded template arguments from
call to deleteAllPairSeconds.
(WTF::deleteAllKeys): Removed unneeded template arguments from
call to deleteAllPairFirsts.

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

8 years agoREGRESSION (r91125): Polyline tool in google docs is broken
commit-queue@webkit.org [Fri, 2 Dec 2011 16:37:36 +0000 (16:37 +0000)]
REGRESSION (r91125): Polyline tool in google docs is broken
https://bugs.webkit.org/show_bug.cgi?id=65796

Source/WebCore:

Patch by Stephen Chenney <schenney@chromium.org> on 2011-12-02
Reviewed by Darin Adler.

Work around a bug in CoreGraphics, that caused incorrect bounds for paths
consisting only of move-to elements. This causes problems in SVG, when the enormous
bounds prevented the drawing of things behind.

Tests: svg/custom/path-moveto-only-rendering.svg
       svg/custom/subpaths-moveto-only-rendering.svg

* platform/graphics/cg/PathCG.cpp:
(WebCore::PathIsEmptyOrSingleMoveTester::PathIsEmptyOrSingleMoveTester): Class to
test for isEmpty accoridng ot the same rules as other platforms.
(WebCore::PathIsEmptyOrSingleMoveTester::isEmpty): Query the result
(WebCore::PathIsEmptyOrSingleMoveTester::testPathElement): Path iterator method
(WebCore::PathHasOnlyMoveToTester::PathHasOnlyMoveToTester): Class to test whether a
path contains only move-to elements, and hence should have null bounds.
(WebCore::PathHasOnlyMoveToTester::hasOnlyMoveTo): Query the result
(WebCore::PathHasOnlyMoveToTester::testPathElement): Path iterator method.
(WebCore::Path::boundingRect): Modified to check for move-to only paths
(WebCore::Path::fastBoundingRect): Modified to check for move-to only paths
(WebCore::Path::isEmpty): Now uses the method that matches other platforms.

LayoutTests:

Work around a bug in CoreGraphics, that caused incorrect bounds for paths
consisting only of move-to elements. This causes problems in SVG, when the enormous
bounds prevented the drawing of things behind.

Will revert expectation file when expectations are stable.

Patch by Stephen Chenney <schenney@chromium.org> on 2011-12-02
Reviewed by Darin Adler.

* platform/chromium-mac/svg/custom/zero-path-square-cap-rendering2-expected.txt: Removed.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering2-expected.txt: Removed.
* platform/mac/svg/custom/path-moveto-only-rendering-expected.png: Added.
* platform/mac/svg/custom/path-moveto-only-rendering-expected.txt: Added.
* platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.png: Added.
* platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.
* platform/win/svg/custom/path-moveto-only-rendering-expected.png: Added.
* platform/win/svg/custom/path-moveto-only-rendering-expected.txt: Added.
* platform/win/svg/custom/subpaths-moveto-only-rendering-expected.png: Added.
* platform/win/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.
* svg/custom/path-moveto-only-rendering.svg: Added.
* svg/custom/subpaths-moveto-only-rendering.svg: Added.
* svg/custom/zero-path-square-cap-rendering2-expected.txt: Modified text output
* platform/chromium/test_expectations.txt: Added flakiness for new tests from this patch

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

8 years ago[Qt][WK2] Set event timestamps on custom input events
abecsi@webkit.org [Fri, 2 Dec 2011 16:36:36 +0000 (16:36 +0000)]
[Qt][WK2] Set event timestamps on custom input events

Reviewed by Simon Hausmann.

Since r101791 WebEventFactoryQt uses input event timestamps for WebEvents,
thus set the timestamp on the custom events as well.

* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::handleHoverLeaveEvent):
(QtWebPageEventHandler::handleHoverMoveEvent):
* UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:
(WebKit::WebPopupMenuProxyQtDesktop::showPopupMenu):

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

8 years agoTeach check-webkit-style how to check the syntax of JSON files
aroben@apple.com [Fri, 2 Dec 2011 16:33:56 +0000 (16:33 +0000)]
Teach check-webkit-style how to check the syntax of JSON files

Fixes <http://webkit.org/b/73590> check-webkit-style doesn't flag JSON syntax errors

I previously landed this patch as r101711, but the new tests failed on Snow Leopard. This
patch is identical to that one except for two change: assertIn(a, b) (which is new to Python
2.7) has been replaced with assertTrue(a in b), and the test_missing_closing_brace test has
been removed, since its output differs by platform.

Reviewed by Darin Adler.

* Scripts/webkitpy/style/checker.py:
(_all_categories): Added JSONChecker's categories to the set of all categories.
(FileType): Added a JSON type. Incremented other types.
(CheckerDispatcher._file_type): Use the JSON file type for .json files.
(CheckerDispatcher._create_checker): Use a JSONChecker for JSON files.

* Scripts/webkitpy/style/checker_unittest.py:
(CheckerDispatcherDispatchTest.assert_checker_json): Added this helper method.
(CheckerDispatcherDispatchTest.test_json_paths): Added. Based on test_python_paths.

* Scripts/webkitpy/style/checkers/jsonchecker.py: Added. (I didn't name this just "json",
which would have matched our other checkers, because I couldn't figure out how to call
"json.loads" without hitting namespace conflicts.)
(JSONChecker.__init__): Turn of line filtering so that we always check the whole file, not
just the modified lines from a patch.
(JSONChecker.check): Try to parse the lines as JSON. Mark an error if there was an
exception.
(JSONChecker.line_number_from_json_exception): Parse the json modules exception message to
try to extract a line number.

* Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Added.
(MockErrorHandler.__init__):
(MockErrorHandler.turn_off_line_filtering):
(MockErrorHandler.__call__):
Helper class. Copied from xml_unittest.py.

(JSONCheckerTest.test_line_number_from_json_exception): Test the
line_number_from_json_exception helper method.

(JSONCheckerTest.assert_no_error):
(JSONCheckerTest.assert_error):
Helper methods to assert that we did or didn't get an error.

(JSONCheckerTest.mock_handle_style_error): Helper method.

(JSONCheckerTest.test_conflict_marker):
(JSONCheckerTest.test_single_quote):
(JSONCheckerTest.test_init):
(JSONCheckerTest.test_no_error):
Test various cases.

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

8 years ago[GTK] Also run DumpRenderTree under jhbuild
kov@webkit.org [Fri, 2 Dec 2011 16:30:42 +0000 (16:30 +0000)]
[GTK] Also run DumpRenderTree under jhbuild
https://bugs.webkit.org/show_bug.cgi?id=73646

Reviewed by Martin Robinson.

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkDriver.cmd_line):

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

8 years agoMacroAssemblerSH4 does not implement readCallTarget
ossy@webkit.org [Fri, 2 Dec 2011 16:30:31 +0000 (16:30 +0000)]
MacroAssemblerSH4 does not implement readCallTarget
https://bugs.webkit.org/show_bug.cgi?id=73434

Patch by Zoltan Herczeg <zherczeg@webkit.org> on 2011-12-02
Reviewed by Csaba Osztrogon√°c.

* assembler/SH4Assembler.h:
(JSC::SH4Assembler::readCallTarget): Support for SH4.

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

8 years ago[Qt] fast/forms/select/listbox-in-multi-column.html fails
ossy@webkit.org [Fri, 2 Dec 2011 16:17:11 +0000 (16:17 +0000)]
[Qt] fast/forms/select/listbox-in-multi-column.html fails
https://bugs.webkit.org/show_bug.cgi?id=73660

* platform/qt/Skipped: Skip fast/forms/select/listbox-in-multi-column.html until fix.

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

8 years ago2011-12-02 Alejandro G. Castro <alex@igalia.com>
alex@webkit.org [Fri, 2 Dec 2011 16:16:07 +0000 (16:16 +0000)]
2011-12-02  Alejandro G. Castro  <alex@igalia.com>

        [GTK] Fix TextureMapperCairo compilation
        https://bugs.webkit.org/show_bug.cgi?id=73655

        Reviewed by Martin Robinson.

        * GNUmakefile.am: The variables need the USE part in the name.
        * configure.ac: We can not define the variable twice.

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

8 years ago[Chromium] Unreviewed expectation fix after r101787.
apavlov@chromium.org [Fri, 2 Dec 2011 16:14:29 +0000 (16:14 +0000)]
[Chromium] Unreviewed expectation fix after r101787.

* platform/chromium/svg/css/getComputedStyle-basic-expected.txt:

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

8 years agoUnreviewed, rolling out r101794.
vsevik@chromium.org [Fri, 2 Dec 2011 15:51:38 +0000 (15:51 +0000)]
Unreviewed, rolling out r101794.
http://trac.webkit.org/changeset/101794
https://bugs.webkit.org/show_bug.cgi?id=73656

Broke win build (Requested by vsevik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-02

* bindings/js/ScriptCallStackFactory.cpp:
* bindings/js/ScriptCallStackFactory.h:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateFunctionCallback):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjInternal::customArgsAndExceptionCallback):
* bindings/v8/ScriptCallStackFactory.cpp:
* bindings/v8/ScriptCallStackFactory.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:
* inspector/WorkerInspectorController.h:
* page/Console.cpp:
(WebCore::Console::shouldCaptureFullStackTrace):
* page/Console.h:

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

8 years agoUnreviewed, revert r101347.
commit-queue@webkit.org [Fri, 2 Dec 2011 15:32:05 +0000 (15:32 +0000)]
Unreviewed, revert r101347.
https://bugs.webkit.org/show_bug.cgi?id=73580

It breaks the linking of Tools/ targets due to missing functions.

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-12-02

.:

* Source/cmake/OptionsEfl.cmake:

Source/WebCore:

* PlatformEfl.cmake:
* platform/graphics/GraphicsLayer.cpp:
* platform/graphics/GraphicsLayer.h:
* platform/graphics/efl/GraphicsLayerEfl.cpp: Added.
(WebCore::GraphicsLayer::create):
(WebCore::GraphicsLayerEfl::GraphicsLayerEfl):
(WebCore::GraphicsLayerEfl::~GraphicsLayerEfl):
(WebCore::GraphicsLayerEfl::setNeedsDisplay):
(WebCore::GraphicsLayerEfl::setNeedsDisplayInRect):
* platform/graphics/efl/GraphicsLayerEfl.h: Added.
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::solveCubicBezierFunction):
(WebCore::solveStepsFunction):

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

8 years agoUnreviewed, updated chromium test expectations.
vsevik@chromium.org [Fri, 2 Dec 2011 15:27:57 +0000 (15:27 +0000)]
Unreviewed, updated chromium test expectations.

* platform/chromium/fast/events/offsetX-offsetY-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/events/offsetX-offsetY-expected.txt.

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

8 years agoWeb Inspector: Extract default call stack creation and check for front-end from console.
vsevik@chromium.org [Fri, 2 Dec 2011 15:24:04 +0000 (15:24 +0000)]
Web Inspector: Extract default call stack creation and check for front-end from console.
https://bugs.webkit.org/show_bug.cgi?id=73566

Reviewed by Yury Semikhatsky.

* bindings/js/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStack):
* bindings/js/ScriptCallStackFactory.h:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateFunctionCallback):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjInternal::customArgsAndExceptionCallback):
* bindings/v8/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStack):
* bindings/v8/ScriptCallStackFactory.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
* inspector/WorkerInspectorController.h:
(WebCore::WorkerInspectorController::hasFrontend):
* page/Console.cpp:
* page/Console.h:

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

8 years agoUnreviewed, skip some new GTK multicol failures because of bug 73653.
philn@webkit.org [Fri, 2 Dec 2011 15:17:50 +0000 (15:17 +0000)]
Unreviewed, skip some new GTK multicol failures because of bug 73653.

* platform/gtk/Skipped:

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

8 years agoRemove instrumentation tracking a fixed bug
gavinp@chromium.org [Fri, 2 Dec 2011 15:15:43 +0000 (15:15 +0000)]
Remove instrumentation tracking a fixed bug
https://bugs.webkit.org/show_bug.cgi?id=73471

The underlying bug is fixed (bug 72068), and this instrumentation was intrusive and using
memory, plus the conditional compilation made me sad.

Reviewed by Nate Chapin.

No new tests.

* dom/ScriptElement.cpp:
(WebCore::ScriptElement::ScriptElement):
(WebCore::ScriptElement::requestScript):
(WebCore::ScriptElement::stopLoadRequest):
(WebCore::ScriptElement::notifyFinished):
* dom/ScriptElement.h:
* dom/ScriptRunner.cpp:
(WebCore::ScriptRunner::queueScriptForExecution):

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

8 years ago[Qt] [WK2] Use input event timestamps in WebEvents if available
abecsi@webkit.org [Fri, 2 Dec 2011 14:45:44 +0000 (14:45 +0000)]
[Qt] [WK2] Use input event timestamps in WebEvents if available
https://bugs.webkit.org/show_bug.cgi?id=73647

Reviewed by Simon Hausmann.

Qt5 input events already have a native timestamp, use this timestamp
in WebEventFactory instead of WTF::currentTime if it is available.

* Shared/qt/WebEventFactoryQt.cpp:
(WebKit::currentTimeForEvent):
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebWheelEvent):
(WebKit::WebEventFactory::createWebKeyboardEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* Shared/qt/WebEventFactoryQt.h:

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

8 years agoWeb Inspector: Split view works weirdly in network panel when resizing, showing/hidin...
vsevik@chromium.org [Fri, 2 Dec 2011 14:44:42 +0000 (14:44 +0000)]
Web Inspector: Split view works weirdly in network panel when resizing, showing/hiding main element.
https://bugs.webkit.org/show_bug.cgi?id=73650

Reviewed by Pavel Feldman.

* inspector/front-end/SplitView.js:
(WebInspector.SplitView.prototype._updateResizer):
(WebInspector.SplitView.prototype.hideMainElement):
(WebInspector.SplitView.prototype.showMainElement):
(WebInspector.SplitView.prototype.onResize):
(WebInspector.SplitView.prototype._restoreSidebarWidth):

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

8 years agoUnreviewed, rolling out r101783.
vsevik@chromium.org [Fri, 2 Dec 2011 14:15:40 +0000 (14:15 +0000)]
Unreviewed, rolling out r101783.
http://trac.webkit.org/changeset/101783
https://bugs.webkit.org/show_bug.cgi?id=73652

Broke chromium win build. (Requested by vsevik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-02

* WebCore.gyp/WebCore.gyp:
* WebCore.gyp/scripts/action_derivedsourcesallinone.py:
(main):
* WebCore.gypi:
* bindings/scripts/generate-bindings.pl:
* page/DOMWindow.idl:
* webaudio/DOMWindowWebAudio.idl: Removed.

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

8 years ago[Qt][WK2] Split the QtWebPageProxy into PageClient and QtPageProxy
jesus@webkit.org [Fri, 2 Dec 2011 13:37:20 +0000 (13:37 +0000)]
[Qt][WK2] Split the QtWebPageProxy into PageClient and QtPageProxy
https://bugs.webkit.org/show_bug.cgi?id=66668

Reviewed by Simon Hausmann.

Split QtPageClient out of QtWebPageProxy.
This client will live in QQuickWebViewPrivate and communicate directly
with QtWebPageProxy and QtWebPageEventHandler. The functions that need
anything else than these entities will need to call the proper implementation
through QtWebPageProxy itself.
With this we have a clear separation between PageClient and PageProxy, having
two well defined and separated entities for hooking our clients with our API layer (QtWebPageProxy)
and for hooking the WebPageProxy with our client implementations (QtPageClient).
As a positive side-effect we have a cleaner QtWebPageProxy.

* Target.pri:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
* UIProcess/API/qt/qquickwebview_p_p.h:
* UIProcess/qt/QtPageClient.cpp: Added.
(QtPageClient::QtPageClient):
(QtPageClient::~QtPageClient):
(QtPageClient::createDrawingAreaProxy):
(QtPageClient::setViewNeedsDisplay):
(QtPageClient::pageDidRequestScroll):
(QtPageClient::processDidCrash):
(QtPageClient::didRelaunchProcess):
(QtPageClient::didChangeContentsSize):
(QtPageClient::didChangeViewportProperties):
(QtPageClient::startDrag):
(QtPageClient::handleDownloadRequest):
(QtPageClient::setCursor):
(QtPageClient::setCursorHiddenUntilMouseMoves):
(QtPageClient::toolTipChanged):
(QtPageClient::registerEditCommand):
(QtPageClient::clearAllEditCommands):
(QtPageClient::canUndoRedo):
(QtPageClient::executeUndoRedo):
(QtPageClient::convertToDeviceSpace):
(QtPageClient::convertToUserSpace):
(QtPageClient::screenToWindow):
(QtPageClient::windowToScreen):
(QtPageClient::createPopupMenuProxy):
(QtPageClient::createContextMenuProxy):
(QtPageClient::flashBackingStoreUpdates):
(QtPageClient::didFindZoomableArea):
(QtPageClient::didReceiveMessageFromNavigatorQtObject):
(QtPageClient::doneWithTouchEvent):
(QtPageClient::displayView):
(QtPageClient::scrollView):
(QtPageClient::viewSize):
(QtPageClient::isViewWindowActive):
(QtPageClient::isViewFocused):
(QtPageClient::isViewVisible):
(QtPageClient::isViewInWindow):
(QtPageClient::enterAcceleratedCompositingMode):
(QtPageClient::exitAcceleratedCompositingMode):
* UIProcess/qt/QtPageClient.h: Added.
(QtPageClient::pageClosed):
(QtPageClient::doneWithKeyEvent):
(QtPageClient::setFindIndicator):
(QtPageClient::didCommitLoadForMainFrame):
(QtPageClient::didFinishLoadingDataForCustomRepresentation):
(QtPageClient::customRepresentationZoomFactor):
(QtPageClient::setCustomRepresentationZoomFactor):
(QtPageClient::didChangeScrollbarsForMainFrame):
(QtPageClient::findStringInCustomRepresentation):
(QtPageClient::countStringMatchesInCustomRepresentation):
(QtPageClient::setEventHandler):
(QtPageClient::setPageProxy):
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::QtWebPageProxy):
* UIProcess/qt/QtWebPageProxy.h:

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

8 years agoInline non-replaced elements are reported to have zero width and height
apavlov@chromium.org [Fri, 2 Dec 2011 13:32:47 +0000 (13:32 +0000)]
Inline non-replaced elements are reported to have zero width and height
https://bugs.webkit.org/show_bug.cgi?id=61117

Reviewed by Antti Koivisto.

Source/WebCore:

According to http://www.w3.org/TR/CSS21/visudet.html, the "width" and "height" properties
do not apply for inline non-replaced elements and should have their initial value of "auto"
as their computed values.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

* fast/dom/beforeload/image-object-before-load-innerHTML.html:
* fast/dom/beforeload/image-object-before-load.html:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

8 years ago Unreviewed, GTK rebaseline.
philn@webkit.org [Fri, 2 Dec 2011 12:58:24 +0000 (12:58 +0000)]
    Unreviewed, GTK rebaseline.

        * platform/gtk/Skipped: plugins/invalidate_rect.html was
        removed. Also skip one more SVG test.
        * platform/gtk/fast/writing-mode/broken-ideograph-small-caps-expected.txt:
        * platform/gtk/fonts/custom-font-missing-glyphs-expected.txt:
        * platform/gtk/fonts/fontconfig-synthetic-bold-expected.txt:

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

8 years ago[chromium] Make CCInputHandler scrolling stateful
commit-queue@webkit.org [Fri, 2 Dec 2011 12:34:42 +0000 (12:34 +0000)]
[chromium] Make CCInputHandler scrolling stateful
https://bugs.webkit.org/show_bug.cgi?id=73345

This change makes the scrolling part of CCInputHandler stateful by
replacing scrollRootLayer() with scrollBegin(), scrollBy() and
scrollEnd(). This is done in preparation for scrollable sublayers.
Specifically, scrollBegin() will allow CCLayerTreeHostImpl to perform
input event hit testing to find the layer to be scrolled.

Patch by Sami Kyostila <skyostil@chromium.org> on 2011-12-02
Reviewed by Steve Block.

Source/WebCore:

Tested in CCLayerTreeHostImplTest.

* platform/graphics/chromium/cc/CCInputHandler.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::currentTimeMs):
(WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
(WebCore::findInnermostScrollableLayerAtPoint):
(WebCore::CCLayerTreeHostImpl::scrollBegin):
(WebCore::CCLayerTreeHostImpl::scrollBy):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

Source/WebKit/chromium:

* src/WebCompositorImpl.cpp:
(WebKit::WebCompositorImpl::handleInputEvent):
* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::TEST_F):

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

8 years ago2011-12-02 Alejandro G. Castro <alex@igalia.com>
alex@webkit.org [Fri, 2 Dec 2011 12:34:11 +0000 (12:34 +0000)]
2011-12-02  Alejandro G. Castro  <alex@igalia.com>

        [GTK] Improve  C++0x compat warnings check
        https://bugs.webkit.org/show_bug.cgi?id=73642

        Reviewed by Martin Robinson.

        * configure.ac:

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

8 years agoUse the [Supplemental] IDL for webaudio attributes in Chromium
haraken@chromium.org [Fri, 2 Dec 2011 12:13:55 +0000 (12:13 +0000)]
Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

- Overview: Using the [Supplemental] IDL, this patch moves the attribute
declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

- This patch changes the build flow of WebCore.gyp as follows:

    Previous build flow:
        foreach $idl (all IDL files) {
            generate-bindings.pl depends on $idl;
            generate-bindings.pl reads $idl;
            generate-bindings.pl generates .h and .cpp files for $idl;
        }

    New build flow (See the discussions in bug 72138 for more details):
        resolve-supplemental.pl depends on all IDL files;
        resolve-supplemental.pl reads all IDL files;
        resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
        resolve-supplemental.pl outputs supplemental_dependency.tmp;
        foreach $idl (all IDL files) {
            generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
            generate-bindings.pl reads $idl;
            generate-bindings.pl reads supplemental_dependency.tmp;
            generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;
        }

- This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL
will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

    - DerivedSources.make
    - DerivedSources.pri
    - GNUmakefile.am
    - PlatformBlackBerry.cmake
    - UseJSC.cmake
    - UseV8.cmake
    - WebCore.vcproj/MigrateScripts
    - WebCore.vcproj/WebCore.vcproj
    - bindings/gobject/GNUmakefile.am
    - WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

    DOMWindowWebAudio.idl:
        interface [
            Supplemental=DOMWindow
        ] DOMWindowWebAudio {
            attribute attr1;
            attribute attr2;
        };

    DOMWindow.idl:
        interface [
        ] DOMWindow {
            attribute [Supplemented] attr1; // This line will be removed after all build scripts support the [Su IDL
            attribute [Supplemented] attr2; // This line will be removed after all build scripts support the [Su IDL.
            attribute attr3;
            attribute attr4;
        };

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

    - If a given build script supports the [Supplemental] IDL,
    generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
    - Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL
    as normal attributes and instead ignores all attributes with the [Supplemental] IDL
    (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

* WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
* WebCore.gyp/scripts/action_derivedsourcesallinone.py:
(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file.
* WebCore.gypi: Added DOMWindowWebAudio.idl.
* bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
* page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
* webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.

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

8 years agoWeb Inspector: Network panel row highlighting does not work.
vsevik@chromium.org [Fri, 2 Dec 2011 12:10:53 +0000 (12:10 +0000)]
Web Inspector: Network panel row highlighting does not work.
https://bugs.webkit.org/show_bug.cgi?id=73644

Reviewed by Pavel Feldman.

* inspector/front-end/networkLogView.css:
(.network-log-grid tr.highlighted-row):
(from):
(to):

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

8 years ago[Qt] Do not apply the transition state before we are unsuspended
kenneth@webkit.org [Fri, 2 Dec 2011 11:53:07 +0000 (11:53 +0000)]
[Qt] Do not apply the transition state before we are unsuspended

Reviewed by Simon Hausmann.

Also remove an accessor in the private, which is unneeded as
everything in the private class is supposed to be public or
only used by the private itself.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::loadDidCommit):
(QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
(QQuickWebViewPrivate::_q_suspend):
(QQuickWebViewPrivate::_q_resume):
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::didChangeViewportProperties):
* UIProcess/API/qt/qquickwebview_p_p.h:

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

8 years agoUnreviewed buildfix, add missing include.
kenneth@webkit.org [Fri, 2 Dec 2011 11:52:50 +0000 (11:52 +0000)]
Unreviewed buildfix, add missing include.

* WebProcess/Notifications/WebNotificationManager.cpp:

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

8 years agoNot reviewed: remove console.timeStamp from the inspector backend dispatcher.
pfeldman@chromium.org [Fri, 2 Dec 2011 11:50:49 +0000 (11:50 +0000)]
Not reviewed: remove console.timeStamp from the inspector backend dispatcher.

* inspector/front-end/InspectorBackend.js:
(InspectorBackendClass.prototype.sendMessageObjectToBackend):

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

8 years agoUnreviewed, rolling out r101751 and r101775.
morrita@google.com [Fri, 2 Dec 2011 11:41:26 +0000 (11:41 +0000)]
Unreviewed, rolling out r101751 and r101775.
http://trac.webkit.org/changeset/101751
http://trac.webkit.org/changeset/101775
https://bugs.webkit.org/show_bug.cgi?id=73191

breaks Windows build

Source/JavaScriptCore:

* JavaScriptCore.xcodeproj/project.pbxproj:
* config.h:
* runtime/JSExportMacros.h: Removed.
* wtf/ExportMacros.h:
* wtf/Platform.h:
* wtf/WTFThreadData.h:
* wtf/text/AtomicString.h:
* wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

* ForwardingHeaders/runtime/JSExportMacros.h: Removed.
* ForwardingHeaders/wtf/ExportMacros.h: Removed.
* config.h:

Source/WebCore:

* ForwardingHeaders/runtime/JSExportMacros.h: Removed.
* ForwardingHeaders/wtf/ExportMacros.h: Removed.
* WebCore.vcproj/QTMovieWinCommon.vsprops:
* WebCore.xcodeproj/project.pbxproj:
* config.h:
* platform/PlatformExportMacros.h: Removed.

Source/WebKit/cf:

* WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

* WebKitPrefix.h:

Source/WebKit/qt:

* tests/MIMESniffing/MIMESniffing.pro:

Source/WebKit2:

* config.h:

Tools:

* DumpRenderTree/chromium/config.h:
* DumpRenderTree/config.h:
* TestWebKitAPI/config.h:
* WebKitTestRunner/config.h:

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

8 years agoWeb Inspector: introduce backend stub generation from JSON for the standalone develop...
pfeldman@chromium.org [Fri, 2 Dec 2011 11:37:26 +0000 (11:37 +0000)]
Web Inspector: introduce backend stub generation from JSON for the standalone development / remote front-ends.
https://bugs.webkit.org/show_bug.cgi?id=73636

Reviewed by Yury Semikhatsky.

* inspector/front-end/DOMStorage.js:
* inspector/front-end/Database.js:
* inspector/front-end/InspectorBackend.js:
(InspectorBackendClass):
(InspectorBackendClass.prototype.registerCommand):
(InspectorBackendClass.prototype.registerEvent):
(InspectorBackendClass.prototype.runAfterPendingDispatches):
(InspectorBackendClass.prototype.loadFromJSONIfNeeded):
* inspector/front-end/TimelineManager.js:
* inspector/front-end/inspector.js:

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

8 years agoUnreviewed, updated test expectations.
vsevik@chromium.org [Fri, 2 Dec 2011 11:19:13 +0000 (11:19 +0000)]
Unreviewed, updated test expectations.

* platform/chromium/test_expectations.txt:

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

8 years agoUnreviewed, another attempt to build fix for r101751:
morrita@google.com [Fri, 2 Dec 2011 11:14:40 +0000 (11:14 +0000)]
Unreviewed, another attempt to build fix for r101751:
Adding an include path to make PlatformExportMacros.h visibile from QTMovieWin.

Patch by MORITA Hajime <morrita@google.com> on 2011-12-02

* WebCore.vcproj/QTMovieWinCommon.vsprops:

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

8 years agoUnreviewed test expectations.
vsevik@chromium.org [Fri, 2 Dec 2011 11:09:34 +0000 (11:09 +0000)]
Unreviewed test expectations.

* platform/chromium-mac/fast/events/offsetX-offsetY-expected.txt: Renamed from LayoutTests/platform/gtk/fast/events/offsetX-offsetY-expected.txt.

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

8 years agoUnreviewed, rolling out r101772.
morrita@google.com [Fri, 2 Dec 2011 11:08:03 +0000 (11:08 +0000)]
Unreviewed, rolling out r101772.
http://trac.webkit.org/changeset/101772

It didn't fix the build failure

* WebCore.vcproj/QTMovieWinCommon.vsprops:

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

8 years ago2011-12-02 MORITA Hajime <morrita@google.com>
morrita@google.com [Fri, 2 Dec 2011 10:55:23 +0000 (10:55 +0000)]
2011-12-02  MORITA Hajime  <morrita@google.com>

        Unreviewed attempt to build fix for r101751:
        Adding an include path to make PlatformExportMacros.h visibile from QTMovieWin.

        * WebCore.vcproj/QTMovieWinCommon.vsprops:

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

8 years agoUnreviewed, GTK rebaseline after r101723 and skipping another set
philn@webkit.org [Fri, 2 Dec 2011 10:52:15 +0000 (10:52 +0000)]
Unreviewed, GTK rebaseline after r101723 and skipping another set
of svg tests show 1px differences.

* platform/gtk/Skipped:
* platform/gtk/fast/dom/Window/window-properties-expected.txt:

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

8 years agoUnreviewed. Fix GTK+ build after r101750.
carlosgc@webkit.org [Fri, 2 Dec 2011 10:20:58 +0000 (10:20 +0000)]
Unreviewed. Fix GTK+ build after r101750.

* GNUmakefile.am: Add missing files.

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

8 years agoWeb Inspector: [Extensions API] pass preferred resource line number to extension...
caseq@chromium.org [Fri, 2 Dec 2011 10:17:25 +0000 (10:17 +0000)]
Web Inspector: [Extensions API] pass preferred resource line number to extension's open resource handler
https://bugs.webkit.org/show_bug.cgi?id=73084

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/ExtensionAPI.js:
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
* inspector/front-end/ExtensionServer.js:
(WebInspector.ExtensionServer.prototype._handleOpenURL):
* inspector/front-end/HandlerRegistry.js:
(get WebInspector.HandlerRegistry.prototype.set dispatch):
* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
* inspector/front-end/SourceFrame.js:
(WebInspector.SourceFrame.prototype.populateLineGutterContextMenu):
(WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGutterContextMenu):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype._contextMenu):
(WebInspector.TextViewerDelegate.prototype.populateLineGutterContextMenu):
(WebInspector.TextViewerDelegate.prototype.populateTextAreaContextMenu):
* inspector/front-end/externs.js:
(WebInspector.populateResourceContextMenu):
* inspector/front-end/inspector.js:
(WebInspector.populateResourceContextMenu):
(WebInspector._showAnchorLocation):

LayoutTests:

* inspector/extensions/extensions-resources-expected.txt:
* inspector/extensions/extensions-resources.html:

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

8 years agoUnreviewed. GTK+ build fix.
kov@webkit.org [Fri, 2 Dec 2011 10:14:46 +0000 (10:14 +0000)]
Unreviewed. GTK+ build fix.

* GNUmakefile.am:

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

8 years agoMove run-bindings-tests implementation to webkitpy/bindings/main.py
haraken@chromium.org [Fri, 2 Dec 2011 09:31:03 +0000 (09:31 +0000)]
Move run-bindings-tests implementation to webkitpy/bindings/main.py
https://bugs.webkit.org/show_bug.cgi?id=73619

Reviewed by Adam Barth.

As run-bindings-tests has been growing, this patch just moves its implementation
to webkitpy/bindings/main.py to integrate with the rest of webkitpy.

No change in behavior.

* Scripts/run-bindings-tests:
(main):
* Scripts/webkitpy/bindings/__init__.py: Added.
* Scripts/webkitpy/bindings/main.py: Added.
(BindingsTests.__init__):
(BindingsTests.generate_from_idl):
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.detect_changes):
(BindingsTests.run_tests):

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

8 years agoUnreviewed, added custom chromium test expectations.
vsevik@chromium.org [Fri, 2 Dec 2011 09:24:17 +0000 (09:24 +0000)]
Unreviewed, added custom chromium test expectations.

* platform/chromium/fast/images/image-css3-content-data-expected.png: Added.

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

8 years ago[GTK] scrollbars interfering with fullscreen (in-window) video rendering
philn@webkit.org [Fri, 2 Dec 2011 09:18:35 +0000 (09:18 +0000)]
[GTK] scrollbars interfering with fullscreen (in-window) video rendering
https://bugs.webkit.org/show_bug.cgi?id=73577

Reviewed by Martin Robinson.

Disable scrollbars when switching to fullscreen.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::contentsSizeChanged): Ignore size changes
when an element is being displayed fullscreen.
(WebKit::ChromeClient::enterFullScreenForElement): Disable
scrollbars when entering fullscreen.
* WebCoreSupport/GtkAdjustmentWatcher.cpp: Added 2 methods to
enable/disable scrollbars and one method to know whether they are
enabled or not.
(WebKit::GtkAdjustmentWatcher::GtkAdjustmentWatcher):
(WebKit::updateAdjustmentFromScrollbar):
(WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars):
(WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater):
(WebKit::GtkAdjustmentWatcher::disableAllScrollbars):
(WebKit::GtkAdjustmentWatcher::enableAllScrollbars):
* WebCoreSupport/GtkAdjustmentWatcher.h:
(WebKit::GtkAdjustmentWatcher::scrollbarsDisabled):

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

8 years ago[GTK] Add compilation options to enable/disable Accelerated Compositing and to choose...
mrobinson@webkit.org [Fri, 2 Dec 2011 09:16:58 +0000 (09:16 +0000)]
[GTK] Add compilation options to enable/disable Accelerated Compositing and to choose texture mapper implementation.
https://bugs.webkit.org/show_bug.cgi?id=73458

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-12-01
Reviewed by Martin Robinson.

.:

* GNUmakefile.am: Export new compilation macros.
* configure.ac: Provide option to choose accelerated compositing and texture mapper variations.

Source/WebCore:

No new tests added as this patch doesn't affect any functionality.

* GNUmakefile.am: Guard the include files.
* GNUmakefile.list.am: Guard the compilation of few files.
* platform/graphics/GraphicsLayer.h: Guard the typedef of GraphicsLayer.

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

8 years ago[Qt][WK2] ASSERT at QQuickWebViewPrivate::computeViewportConstraints() when API test...
commit-queue@webkit.org [Fri, 2 Dec 2011 09:15:18 +0000 (09:15 +0000)]
[Qt][WK2] ASSERT at QQuickWebViewPrivate::computeViewportConstraints() when API test is exercising zero sized views.
https://bugs.webkit.org/show_bug.cgi?id=73441

Do not assert on empty available size, but return default constrain values instead.

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2011-12-02
Reviewed by Kenneth Rohde Christiansen.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::computeViewportConstraints):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::dispatchViewportPropertiesDidChange):

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

8 years agoNow that r101733 fixed fast/block/child-not-removed-from-parent-lineboxes-crash.html,
rniwa@webkit.org [Fri, 2 Dec 2011 09:12:58 +0000 (09:12 +0000)]
Now that r101733 fixed fast/block/child-not-removed-from-parent-lineboxes-crash.html,
remove the failing expectation on Chromium and re-enable it on Qt.

* platform/chromium/test_expectations.txt:
* platform/qt/Skipped:

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

8 years agoWeb Inspector [chromium]: provisional fix for interactive ui tests
pfeldman@chromium.org [Fri, 2 Dec 2011 09:09:45 +0000 (09:09 +0000)]
Web Inspector [chromium]: provisional fix for interactive ui tests
https://bugs.webkit.org/show_bug.cgi?id=73633

Reviewed by Yury Semikhatsky.

* src/js/Tests.js:
(.):
(.TestSuite.prototype._executeCodeWhenScriptsAreParsed):

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

8 years agoWeb Inspector: use object properties, not element attributes to pass preferred panel...
caseq@chromium.org [Fri, 2 Dec 2011 09:06:09 +0000 (09:06 +0000)]
Web Inspector: use object properties, not element attributes to pass preferred panel/line/request id in linkified anchors
https://bugs.webkit.org/show_bug.cgi?id=73556

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/AuditFormatters.js:
(WebInspector.AuditFormatters.resourceLink):
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatMessage.else.else.linkifier):
(WebInspector.ConsoleMessageImpl.prototype._formatMessage):
* inspector/front-end/DebuggerPresentationModel.js:
(WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
(WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel.prototype._resourceByAnchor):
(WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
* inspector/front-end/ResourceUtils.js:
(WebInspector.linkifyStringAsFragment):
(WebInspector.linkifyResourceAsNode):
(WebInspector.linkifyRequestAsNode):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.ResourcesPanel.prototype.showAnchorLocation):
* inspector/front-end/inspector.js:
(WebInspector._showAnchorLocation):

LayoutTests:

* inspector/extensions/extensions-audits-expected.txt:
* inspector/extensions/extensions-audits.html:

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

8 years ago[chromium] Add WebKit API's to support the autosize algorithm in renderer process.
levin@chromium.org [Fri, 2 Dec 2011 08:58:21 +0000 (08:58 +0000)]
[chromium] Add WebKit API's to support the autosize algorithm in renderer process.
https://bugs.webkit.org/show_bug.cgi?id=73058

Reviewed by Darin Fisher.

* public/WebView.h: Expose the auto-resize method.
* public/WebWidgetClient.h:
(WebKit::WebWidgetClient::didAutoResize):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFrameView): Set the auto-resize
state on the new view.
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::resize): Extracted sendResizeEventAndRepaint, so
that it can be used by layoutUpdated.
(WebKit::WebViewImpl::queueBothResizeEventAndPaint): Ditto.
(WebKit::WebViewImpl::hasHorizontalScrollbar): Added for testing purposes.
(WebKit::WebViewImpl::hasVerticalScrollbar): Ditto.
(WebKit::WebViewImpl::enableAutoResizeMode): Set-up auto-resize.
(WebKit::WebViewImpl::layoutUpdated): Handle the auto-resize case by
sending events and invalidation.
* src/WebViewImpl.h: Expose the aut-reosize information.
(WebKit::WebViewImpl::shouldAutoResize):
(WebKit::WebViewImpl::minAutoSize):
(WebKit::WebViewImpl::maxAutoSize):
* tests/FrameTestHelpers.cpp:
(WebKit::FrameTestHelpers::createWebViewAndLoad): Added the ability to
specify the WebViewClient.
* tests/FrameTestHelpers.h: Ditto.
* tests/WebViewTest.cpp: Added a simple test for auto-resize.
(WebKit::TestData::setWebView):
(WebKit::TestData::setSize): Capture the new size.
(WebKit::TestData::hasHorizontalScrollbar):
(WebKit::TestData::hasVerticalScrollbar):
(WebKit::TestData::width):
(WebKit::TestData::height):
(WebKit::AutoResizeWebViewClient::didAutoResize): Handle the resize event.
(WebKit::AutoResizeWebViewClient::testData):
(WebKit::TEST_F): The actual test.
* tests/data/specify_size.html: Added.

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

8 years ago[Chromium] Support adding/removing page overlay to WebView
commit-queue@webkit.org [Fri, 2 Dec 2011 08:55:48 +0000 (08:55 +0000)]
[Chromium] Support adding/removing page overlay to WebView
https://bugs.webkit.org/show_bug.cgi?id=73235

Patch by Xiyuan Xia <xiyuan@chromium.org> on 2011-12-02
Reviewed by James Robinson.

* WebKit.gyp:
* public/WebPageOverlay.h: Added.
(WebKit::WebPageOverlay::~WebPageOverlay):
* public/WebView.h:
* src/PageOverlay.cpp:
(WebKit::PageOverlay::create):
(WebKit::PageOverlay::PageOverlay):
(WebKit::OverlayGraphicsLayerClientImpl::create):
(WebKit::OverlayGraphicsLayerClientImpl::paintContents):
(WebKit::OverlayGraphicsLayerClientImpl::OverlayGraphicsLayerClientImpl):
(WebKit::PageOverlay::update):
(WebKit::PageOverlay::paintWebFrame):
(WebKit::PageOverlay::invalidateWebFrame):
* src/PageOverlay.h:
(WebKit::PageOverlay::overlay):
(WebKit::PageOverlay::setOverlay):
(WebKit::PageOverlay::zOrder):
(WebKit::PageOverlay::setZOrder):
* src/PageOverlayList.cpp: Added.
(WebKit::PageOverlayList::create):
(WebKit::PageOverlayList::PageOverlayList):
(WebKit::PageOverlayList::~PageOverlayList):
(WebKit::PageOverlayList::add):
(WebKit::PageOverlayList::remove):
(WebKit::PageOverlayList::update):
(WebKit::PageOverlayList::paintWebFrame):
(WebKit::PageOverlayList::find):
* src/PageOverlayList.h: Added.
(WebKit::PageOverlayList::empty):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::paintPageOverlay):
(WebKit::WebDevToolsAgentImpl::highlight):
(WebKit::WebDevToolsAgentImpl::hideHighlight):
* src/WebDevToolsAgentImpl.h:
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::paintWithContext):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
(WebKit::WebViewImpl::addPageOverlay):
(WebKit::WebViewImpl::removePageOverlay):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit::WebViewImpl::didRecreateGraphicsContext):
* src/WebViewImpl.h:
(WebKit::WebViewImpl::pageOverlays):

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

8 years agoTools/Scripts: eliminate find_test_files from Port class.
loislo@chromium.org [Fri, 2 Dec 2011 08:44:20 +0000 (08:44 +0000)]
Tools/Scripts: eliminate find_test_files from Port class.
https://bugs.webkit.org/show_bug.cgi?id=73553

rebaseline.py and chromium_gpu.py use Port.find_test_files() the same way as it is used in Port.tests()
I'd like to replace all calls to find_test_files with tests and eliminate find_tests_files.
Also I'll move _is_test_file() and related functions close to Port.tests().

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.tests):
(Port.is_reference_html_file):
(Port._has_supported_extension):
(Port._is_test_file):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_find_no_paths_specified):
(PortTest.test_find_one_test):
(PortTest.test_find_glob):
(PortTest.test_find_with_skipped_directories):
(PortTest.test_find_with_skipped_directories_2):
(PortTest.test_is_test_file):
* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
(_default_tests_paths):
(ChromiumGpuLinuxPort.tests):
(ChromiumGpuCgMacPort.tests):
(ChromiumGpuMacPort.tests):
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
(ChromiumGpuTest.test_default_tests_paths.test_paths):
(ChromiumGpuTest.test_default_tests_paths):
(ChromiumGpuTest.test_test_files.test_paths):
(ChromiumGpuTest):
(ChromiumGpuTest.test_test_files):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(get_tests_run.RecordingTestDriver.run_test):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(OptimizeBaselines._optimize_baseline):
(OptimizeBaselines.execute):
(AnalyzeBaselines._analyze_baseline):
(AnalyzeBaselines.execute):

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

8 years agoWeb Inspector: refactor InspectorBackendDispatcher so that it does not use JSON-seria...
pfeldman@chromium.org [Fri, 2 Dec 2011 08:30:16 +0000 (08:30 +0000)]
Web Inspector: refactor InspectorBackendDispatcher so that it does not use JSON-serialized command templates.
https://bugs.webkit.org/show_bug.cgi?id=73569

Reviewed by Yury Semikhatsky.

Source/WebCore:

* inspector/CodeGeneratorInspector.py:
(Generator.process_command):
* inspector/Inspector.json:
* inspector/front-end/InspectorBackend.js:
(InspectorBackendClass.prototype._wrap.callback):
(InspectorBackendClass.prototype._wrap):
(InspectorBackendClass.prototype.registerCommand):
(InspectorBackendClass.prototype._invoke):
(InspectorBackendClass.prototype._sendMessageToBackend):
(InspectorBackendClass.prototype._wrapCallbackAndSendMessageObject):

LayoutTests:

* inspector/report-API-errors-expected.txt:

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

8 years agoRange sliders and spin buttons don't work with multi-columns.
commit-queue@webkit.org [Fri, 2 Dec 2011 08:26:05 +0000 (08:26 +0000)]
Range sliders and spin buttons don't work with multi-columns.
https://bugs.webkit.org/show_bug.cgi?id=70898

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-02
Reviewed by Dan Bernstein.

Source/WebCore:

This patch makes RenderBlock::hitTestColumns and
RenderBoxModelObject::mapAbsoluteToLocal to handle point
in multi-column same logic.

In multi-column, coordinate of box model rendering object is different
from absolute coordinate.. Columns in box model rendering object spans
vertically rather than horizontally.

When absolute point is represented in (column[i]+dx, column[0]+dy),
it is (column[0]+dx, column[0] + columnHeight + dy) in box model
rendering object coordinate.

Tests: fast/events/document-elementFromPoint.html
       fast/events/offsetX-offsetY.html
       fast/forms/number/spin-in-multi-column.html
       fast/forms/range/slider-in-multi-column.html
       fast/forms/select/listbox-in-multi-column.html

* rendering/RenderBlock.cpp:
(WebCore::ColumnRectIterator::ColumnRectIterator): Added
(WebCore::ColumnRectIterator::advance): Added
(WebCore::ColumnRectIterator::columnRect): Added
(WebCore::ColumnRectIterator::hasMore): Added
(WebCore::ColumnRectIterator::adjust): Added
(WebCore::ColumnRectIterator::update): Added
(WebCore::RenderBlock::hitTestColumns): Use ColumnRectIterator.
(WebCore::RenderBlock::adjustForColumnRect): Added
* rendering/RenderBlock.h: Add adjustForColumnRect.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::mapAbsoluteToLocalPoint): Call RenderBoxModelObject::mapAbsoluteToLocalPoint.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint): Move from RenderInline::mapAbsoluteToLocalPoint and call RenderBlock::adjustForColumnRect.
* rendering/RenderBoxModelObject.h: add mapAbsoluteToLocalPoint.
* rendering/RenderInline.cpp: Move mapAbsoluteToLocalPoint to RenderBoxModelObject.
* rendering/RenderInline.h: remove mapAbsoluteToLocalPoint.

LayoutTests:

* fast/events/offsetX-offsetY-expected.txt: Change offset for "in-columns" test.
* fast/events/offsetX-offsetY.html: Change offset for "in-columns" test.
* fast/forms/listbox/listbox-in-multi-column-expected.txt: Added.
* fast/forms/listbox/listbox-in-multi-column.html: Added.
* fast/forms/number/spin-in-multi-column-expected.txt: Added.
* fast/forms/number/spin-in-multi-column.html: Added.
* fast/forms/range/slider-in-multi-column-expected.txt: Added.
* fast/forms/range/slider-in-multi-column.html: Added.
* platform/chromium-win/fast/events/offsetX-offsetY-expected.txt: Change offset for "in-columns" test.
* platform/efl/fast/events/offsetX-offsetY-expected.txt: Change offset for "in-columns" test.
* platform/gtk/fast/events/offsetX-offsetY-expected.txt: Change offset for "in-columns" test.

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

8 years agoInspectorController destruction order leads to use-after-free
pfeldman@chromium.org [Fri, 2 Dec 2011 08:21:57 +0000 (08:21 +0000)]
InspectorController destruction order leads to use-after-free
https://bugs.webkit.org/show_bug.cgi?id=73582

Reviewed by Yury Semikhatsky.

Source/WebCore:

* inspector/InspectorBaseAgent.h:
(WebCore::InspectorBaseAgentInterface::discardAgent):
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::~InspectorCSSAgent):
(WebCore::InspectorCSSAgent::discardAgent):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::~InspectorController):
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::~InspectorDOMDebuggerAgent):
(WebCore::InspectorDOMDebuggerAgent::discardAgent):
* inspector/InspectorDOMDebuggerAgent.h:

LayoutTests:

* platform/chromium/test_expectations.txt:

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

8 years agoimage element with src attribute can't be replaced by content: url() style
leo.yang@torchmobile.com.cn [Fri, 2 Dec 2011 08:05:08 +0000 (08:05 +0000)]
image element with src attribute can't be replaced by content: url() style
https://bugs.webkit.org/show_bug.cgi?id=42840

Source/WebCore:

ImageLoader were updating renderer even if the renderer's image is
style generated content. This was wrong because if an image element
with src attribute and style="content: url(...)" attribute the
src image might override content image. The correct behavior should
be showing content image.

This patch is differentiating style generated RenderImage from the
normal RenderImage and keeps the RenderImageSource untouched if the
renderer is generated content.

Reviewed by Darin Adler.

Test: fast/images/image-css3-content-data.html

* loader/ImageLoader.cpp:
(WebCore::ImageLoader::renderImageResource):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::RenderImage):
* rendering/RenderImage.h:
(WebCore::RenderImage::setIsGeneratedContent):
(WebCore::RenderImage::isGeneratedContent):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):

LayoutTests:

Test case contains image element with src attribute and "content: url(...)"
style attribute.

Reviewed by Darin Adler.

* fast/images/image-css3-content-data-expected.txt: Added.
* fast/images/image-css3-content-data.html: Added.
* fast/images/resources/green-24x24.jpg: Added.

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

8 years agoAdd a way to automatically size a single frame to fit its content.
levin@chromium.org [Fri, 2 Dec 2011 07:47:14 +0000 (07:47 +0000)]
Add a way to automatically size a single frame to fit its content.
https://bugs.webkit.org/show_bug.cgi?id=73420

Reviewed by Dmitry Titov.

No new functionality exposed so no new tests. (There is a Chromium
specific test in https://bugs.webkit.org/show_bug.cgi?id=73058.)

* page/FrameView.cpp:
(WebCore::FrameView::FrameView): Initialized the new variables.
(WebCore::FrameView::layout):
(WebCore::FrameView::autoSizeIfEnabled):
(WebCore::FrameView::enableAutoSizeMode):
* page/FrameView.h:

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

8 years agoJS_INLINE and WTF_INLINE should be visible from WebCore
commit-queue@webkit.org [Fri, 2 Dec 2011 07:33:40 +0000 (07:33 +0000)]
JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191

Source/JavaScriptCore:

- Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
- Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
- Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

* JavaScriptCore.xcodeproj/project.pbxproj:
* config.h:
* runtime/JSExportMacros.h: Added.
* wtf/ExportMacros.h:
* wtf/Platform.h:
* wtf/WTFThreadData.h:
* wtf/text/AtomicString.h:
* wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

- Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
- Added forwarding headers which used in config.h

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* config.h:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

- Moved export related definitions from config.h
  to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
- Added forwarding headers which are referred from config.h

No new tests. Only build related changes.

* ForwardingHeaders/runtime/JSExportMacros.h: Added.
* ForwardingHeaders/wtf/ExportMacros.h: Added.
* WebCore.xcodeproj/project.pbxproj:
* config.h:
* platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.

Source/WebKit/cf:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* WebKitPrefix.h:

Source/WebKit/qt:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Added a INCLUDEPATH to make JSExportMacros.h visible.

* tests/MIMESniffing/MIMESniffing.pro

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* config.h:

Tools:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-01
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

* DumpRenderTree/chromium/config.h:
* DumpRenderTree/config.h:
* TestWebKitAPI/config.h:
* WebKitTestRunner/config.h:

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

8 years ago[WK2] Add further support for notifications
jonlee@apple.com [Fri, 2 Dec 2011 07:13:36 +0000 (07:13 +0000)]
[WK2] Add further support for notifications
https://bugs.webkit.org/show_bug.cgi?id=73572
<rdar://problem/10472195>

Reviewed by Darin Adler.

Source/WebCore:

* WebCore.exp.in: Export constructor and dispatch functions
* dom/EventNames.h: Add show event.
* notifications/Notification.cpp:
(WebCore::Notification::show): For the Mac platform, we just forward the show() call to the
notification client and update the state, because we cannot get synchronous acknowledgment that the
notification got delivered.
(WebCore::Notification::dispatchShowEvent): Create simple events and dispatch to the notification.
(WebCore::Notification::dispatchClickEvent): Ditto.
(WebCore::Notification::dispatchCloseEvent): Ditto.
(WebCore::Notification::dispatchErrorEvent): Ditto.
* notifications/Notification.h: Add dispatch functions.
* notifications/Notification.idl: Add onshow event listener. The ondisplay event listener should be
removed when implementations change the event listener to onshow.

Source/WebKit2:

* WebProcess/Notifications/WebNotificationManager.messages.in: Added. Contains messages for callbacks
from the notification platform.

* DerivedSources.make: Add WebNotificationManager.
* DerivedSources.pri: Ditto.
* Platform/CoreIPC/MessageID.h: Add message class.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didReceiveMessage): Forward calls to WebNotificationManager when needed.
* WebKit2.xcodeproj/project.pbxproj: Add new message files.
* win/WebKit2.vcproj: Adding new files to project.
* win/WebKit2Common.vsprops: Add Notifications to include paths

* UIProcess/WebNotification.h: Add and expose internal ID of each notification sent to the platform.
(WebKit::WebNotification::create):
(WebKit::WebNotification::notificationID):
(WebKit::isNotificationIDValid): Checks that the ID is not a value that might trip up the HashMaps used
for mapping IDs to notifications.
* UIProcess/WebNotification.cpp:
(WebKit::WebNotification::WebNotification):
(WebKit::WebNotification::encode):
(WebKit::WebNotification::decode):
* UIProcess/API/C/WKNotification.h: Expose notification ID to WKAPI.
* UIProcess/API/C/WKNotification.cpp:
(WKNotificationGetNotificationID):

* UIProcess/WebNotificationManagerProxy.h: Add callbacks for dispatching events back to the notification.
* UIProcess/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::invalidate): Remove manager.
(WebKit::WebNotificationManagerProxy::show): Add manager prior to showing.
(WebKit::WebNotificationManagerProxy::cancel): Add manager prior to canceling.
(WebKit::WebNotificationManagerProxy::didDestroyNotification):
(WebKit::WebNotificationManagerProxy::providerDidShowNotification):
(WebKit::WebNotificationManagerProxy::providerDidClickNotification):
(WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
* UIProcess/API/C/WKNotificationManager.h:
* UIProcess/API/C/WKNotificationManager.cpp:
(WKNotificationManagerProviderDidShowNotification):
(WKNotificationManagerProviderDidClickNotification):
(WKNotificationManagerProviderDidCloseNotifications):

* UIProcess/WebNotificationProvider.h:
* UIProcess/WebNotificationProvider.cpp:
(WebKit::WebNotificationProvider::show):
(WebKit::WebNotificationProvider::cancel):
(WebKit::WebNotificationProvider::didDestroyNotification):
(WebKit::WebNotificationProvider::addNotificationManager):
(WebKit::WebNotificationProvider::removeNotificationManager):
* UIProcess/API/C/WKNotificationProvider.h: Expose add/removeNotificationManager calls

* WebProcess/Notifications/WebNotificationManager.h: Add bookkeeping to keep track of notification IDs with
Notification instances.
* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::generateNotificationID):
(WebKit::WebNotificationManager::didReceiveMessage):
(WebKit::WebNotificationManager::show):
(WebKit::WebNotificationManager::cancel):
(WebKit::WebNotificationManager::didDestroyNotification):
(WebKit::WebNotificationManager::didShowNotification):
(WebKit::WebNotificationManager::didClickNotification):
(WebKit::WebNotificationManager::didCloseNotifications):

* UIProcess/WebNotificationManagerProxy.messages.in: Add DidDestroyNotification message.
* WebProcess/WebCoreSupport/WebNotificationClient.cpp:
(WebKit::WebNotificationClient::notificationObjectDestroyed): Implemented.

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

8 years ago[Qt] Unreviewed gardening after r101742, update Qt specific expected files.
ossy@webkit.org [Fri, 2 Dec 2011 07:12:19 +0000 (07:12 +0000)]
[Qt] Unreviewed gardening after r101742, update Qt specific expected files.

* platform/qt/fast/forms/search-styled-expected.png:
* platform/qt/fast/forms/search-styled-expected.txt:
* platform/qt/fast/forms/textarea-placeholder-pseudo-style-expected.png:
* platform/qt/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
* platform/qt/fast/forms/textarea-placeholder-visibility-1-expected.png:
* platform/qt/fast/forms/textarea-placeholder-visibility-1-expected.txt:
* platform/qt/fast/forms/textarea-placeholder-visibility-2-expected.png:
* platform/qt/fast/forms/textarea-placeholder-visibility-2-expected.txt:
* platform/qt/test_expectations.txt:

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

8 years ago[Qt] Unreviewed morning gardening after r101723.
ossy@webkit.org [Fri, 2 Dec 2011 07:06:28 +0000 (07:06 +0000)]
[Qt] Unreviewed morning gardening after r101723.

* platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.

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

8 years agoChanges proposed for 73457 slow down Kraken json-parse-financial
msaboff@apple.com [Fri, 2 Dec 2011 07:04:29 +0000 (07:04 +0000)]
Changes proposed for 73457 slow down Kraken json-parse-financial
https://bugs.webkit.org/show_bug.cgi?id=73584

Restructured StringImpl::equal to take advantage of 8 or 4 bytes
at a time when possible.

This is worth ~3% on Kraken json-parse-financial. It provides
~2% on SunSpider string-unpack-code.

Reviewed by Sam Weinig.

* wtf/text/StringImpl.cpp:
(WTF::equal):

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

8 years ago[WEBKIT2] Fix for compilation warnings in WebContext.cpp
commit-queue@webkit.org [Fri, 2 Dec 2011 07:01:52 +0000 (07:01 +0000)]
[WEBKIT2] Fix for compilation warnings in WebContext.cpp
https://bugs.webkit.org/show_bug.cgi?id=69080

Fix compilation warning in WebKit2 builds.

Patch by Goutham J <gouthamj@motorola.com> on 2011-12-01
Reviewed by Hajime Morita.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::processDidFinishLaunching):
(WebKit::WebContext::startMemorySampler):

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

8 years ago[Qt] Unreviewed morning gardening after r101742.
ossy@webkit.org [Fri, 2 Dec 2011 06:55:37 +0000 (06:55 +0000)]
[Qt] Unreviewed morning gardening after r101742.

Remove tests from test_expectation.txt , because they are
in Skipped list too and NRWT can't handle this situation.
(See https://bugs.webkit.org/show_bug.cgi?id=69750 for details.)

* platform/qt/test_expectations.txt:

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

8 years ago[EFL] Cleanup includes to reduce code complexity.
ryuan.choi@samsung.com [Fri, 2 Dec 2011 06:39:31 +0000 (06:39 +0000)]
[EFL] Cleanup includes to reduce code complexity.
https://bugs.webkit.org/show_bug.cgi?id=73540

Reviewed by Gustavo Noronha Silva.

Source/WebKit:

* CMakeLists.txt: Add loader/appcache to WebKit_INCLUDE_DIRECTORIES.

Source/WebKit/efl:

EWebKit.h is a list of public header files for application to use WebKit/Efl.
This patch removes EWebKit.h in internal files to reduce unnecessary includes.
In addition, reorders optional includes to fix style.

* WebCoreSupport/ChromeClientEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/EditorClientEfl.cpp:
* WebCoreSupport/FrameLoaderClientEfl.cpp:
* ewk/ewk_auth_soup.cpp:
* ewk/ewk_contextmenu.cpp:
* ewk/ewk_cookies.cpp:
* ewk/ewk_frame.cpp:
* ewk/ewk_history.cpp:
* ewk/ewk_main.cpp:
* ewk/ewk_private.h:
* ewk/ewk_settings.cpp:
* ewk/ewk_util.cpp:
* ewk/ewk_view.cpp:
* ewk/ewk_view_single.cpp:
* ewk/ewk_view_tiled.cpp:
* ewk/ewk_window_features.cpp:

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

8 years agoFocus ring of imagemap's area element does not scale when CSS zoom style is applied
commit-queue@webkit.org [Fri, 2 Dec 2011 06:32:55 +0000 (06:32 +0000)]
Focus ring of imagemap's area element does not scale when CSS zoom style is applied
https://bugs.webkit.org/show_bug.cgi?id=73595

Patch by Max Vujovic <mvujovic@adobe.com> on 2011-12-01
Reviewed by Darin Adler.

Source/WebCore:

Tests: fast/images/imagemap-focus-ring-zoom-style-expected.html
       fast/images/imagemap-focus-ring-zoom-style.html

* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::computePath):
The computePath method now uses the RenderObject's effectiveZoom
instead of the Frame's page zoom to compute the path for the area
element's focus ring.

LayoutTests:

* fast/images/imagemap-focus-ring-zoom-style-expected.html: Added.
* fast/images/imagemap-focus-ring-zoom-style.html: Added.

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

8 years agoREGRESSION(r90971): Placeholder text of input control is rendered
tkent@chromium.org [Fri, 2 Dec 2011 06:23:05 +0000 (06:23 +0000)]
REGRESSION(r90971): Placeholder text of input control is rendered
over positioned elements with z-index:0.
https://bugs.webkit.org/show_bug.cgi?id=67408

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by "position:relative" in the default style of
-webkit-input-placeholder. If there were other positioned elements
with z-index:0, a placeholder might be rendered over them.

"position:relative" is not needed because RenderTextControlSingleLine
and RenderTextControlMultipleLine lay out the placeholder renderer by
custom layout code.

Tests: fast/forms/placeholder-with-positioned-element.html

* css/html.css:
(::-webkit-input-placeholder): Remove position:relative.

LayoutTests:

Need to update some placeholder-related tests because we don't use position:relative.

* fast/forms/placeholder-with-positioned-element-expected.html: Added.
* fast/forms/placeholder-with-positioned-element.html: Added.
* platform/chromium/test_expectations.txt:
* platform/gtk/test_expectations.txt:
* platform/mac-snowleopard/fast/forms/input-placeholder-visibility-1-expected.txt:
* platform/mac-snowleopard/fast/forms/input-placeholder-visibility-3-expected.txt:
* platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-1-expected.txt:
* platform/mac-snowleopard/fast/forms/textarea-placeholder-visibility-2-expected.txt:
* platform/mac/Skipped:
* platform/mac/fast/forms/placeholder-position-expected.txt:
* platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
* platform/mac/fast/forms/search-styled-expected.txt:
* platform/mac/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
* platform/qt/test_expectations.txt:

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

8 years agoCSSMutableStyleDeclaration: Removed unused multiLength argument in setLengthProperty().
kling@webkit.org [Fri, 2 Dec 2011 05:39:09 +0000 (05:39 +0000)]
CSSMutableStyleDeclaration: Removed unused multiLength argument in setLengthProperty().
<http://webkit.org/b/73602>

Reviewed by Darin Adler.

* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::setLengthProperty):
* css/CSSMutableStyleDeclaration.h:

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

8 years agoUnreviewed, rolling out r101737.
haraken@chromium.org [Fri, 2 Dec 2011 04:51:03 +0000 (04:51 +0000)]
Unreviewed, rolling out r101737.
http://trac.webkit.org/changeset/101737
https://bugs.webkit.org/show_bug.cgi?id=73394

Chromium/Mac and Chromium/Win build are broken

* WebCore.gyp/WebCore.gyp:
* WebCore.gyp/scripts/action_derivedsourcesallinone.py:
(main):
* WebCore.gypi:
* bindings/scripts/generate-bindings.pl:
* page/DOMWindow.idl:
* webaudio/DOMWindowWebAudio.idl: Removed.

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

8 years agoExplicitly pass tolerance=0 to port.diff_image in case of RefTestMismatch failure.
hayato@chromium.org [Fri, 2 Dec 2011 04:32:26 +0000 (04:32 +0000)]
Explicitly pass tolerance=0 to port.diff_image in case of RefTestMismatch failure.
https://bugs.webkit.org/show_bug.cgi?id=73406

Reviewed by Ryosuke Niwa.

WebKitPort's image_diff uses tolerance='0.1' in default.
When reftests fail, we should use tolerace=0 when diff-ing images.

Since ImageDiff on chromium port doesn't use tolerance value as of now,
this change doesn't affect chromium port's behavior.

* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(write_test_result):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.diff_image):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.diff_image):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestPort.diff_image):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort.diff_image):
(WebKitPort._start_image_diff_process):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_tolerance.ImageDiffTestPort.diff_image):

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

8 years agoConvert some fast/regions pixel tests to reftests
commit-queue@webkit.org [Fri, 2 Dec 2011 04:12:05 +0000 (04:12 +0000)]
Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=73581

Patch by Jacob Goldstein <jacobg@adobe.com> on 2011-12-01
Reviewed by David Hyatt.

* fast/regions/content-flowed-into-regions-dynamically-added-expected.html: Added.
* fast/regions/content-flowed-into-regions-dynamically-added-expected.txt: Removed.
* fast/regions/content-flowed-into-regions-dynamically-added.html:
* fast/regions/content-flowed-into-regions-dynamically-inserted-expected.html: Added.
* fast/regions/content-flowed-into-regions-dynamically-removed-expected.html: Added.
* fast/regions/content-flowed-into-regions-dynamically-removed-expected.txt: Removed.
* fast/regions/content-flowed-into-regions-dynamically-removed.html:
* fast/regions/content-flowed-into-regions-expected.html: Added.
* fast/regions/content-flowed-into-regions-expected.txt: Removed.
* fast/regions/content-flowed-into-regions.html:
* platform/efl/fast/regions/content-flowed-into-regions-dynamically-added-expected.png: Removed.
* platform/efl/fast/regions/content-flowed-into-regions-dynamically-inserted-expected.png: Removed.
* platform/efl/fast/regions/content-flowed-into-regions-dynamically-inserted-expected.txt: Removed.
* platform/efl/fast/regions/content-flowed-into-regions-dynamically-removed-expected.png: Removed.
* platform/efl/fast/regions/content-flowed-into-regions-expected.png: Removed.
* platform/mac/fast/regions/content-flowed-into-regions-dynamically-added-expected.png: Removed.
* platform/mac/fast/regions/content-flowed-into-regions-dynamically-inserted-expected.png: Removed.
* platform/mac/fast/regions/content-flowed-into-regions-dynamically-inserted-expected.txt: Removed.
* platform/mac/fast/regions/content-flowed-into-regions-dynamically-removed-expected.png: Removed.
* platform/mac/fast/regions/content-flowed-into-regions-expected.png: Removed.

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

8 years agoUse the [Supplemental] IDL for webaudio attributes in Chromium
haraken@chromium.org [Fri, 2 Dec 2011 04:11:46 +0000 (04:11 +0000)]
Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

- Overview: Using the [Supplemental] IDL, this patch moves the attribute
declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

- This patch changes the build flow of WebCore.gyp as follows:

    Previous build flow:
        foreach $idl (all IDL files) {
            generate-bindings.pl depends on $idl;
            generate-bindings.pl reads $idl;
            generate-bindings.pl generates .h and .cpp files for $idl;
        }

    New build flow (See the discussions in bug 72138 for more details):
        resolve-supplemental.pl depends on all IDL files;
        resolve-supplemental.pl reads all IDL files;
        resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
        resolve-supplemental.pl outputs supplemental_dependency.tmp;
        foreach $idl (all IDL files) {
            generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
            generate-bindings.pl reads $idl;
            generate-bindings.pl reads supplemental_dependency.tmp;
            generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;
        }

- This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL
will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

    - DerivedSources.make
    - DerivedSources.pri
    - GNUmakefile.am
    - PlatformBlackBerry.cmake
    - UseJSC.cmake
    - UseV8.cmake
    - WebCore.vcproj/MigrateScripts
    - WebCore.vcproj/WebCore.vcproj
    - bindings/gobject/GNUmakefile.am
    - WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

    DOMWindowWebAudio.idl:
        interface [
            Supplemental=DOMWindow
        ] DOMWindowWebAudio {
            attribute attr1;
            attribute attr2;
        };

    DOMWindow.idl:
        interface [
        ] DOMWindow {
            attribute [Supplemented] attr1; // This line will be removed after all build scripts support the [Su IDL
            attribute [Supplemented] attr2; // This line will be removed after all build scripts support the [Su IDL.
            attribute attr3;
            attribute attr4;
        };

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

    - If a given build script supports the [Supplemental] IDL,
    generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
    - Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL
    as normal attributes and instead ignores all attributes with the [Supplemental] IDL
    (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

* WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
* WebCore.gyp/scripts/action_derivedsourcesallinone.py:
(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file.
* WebCore.gypi: Added DOMWindowWebAudio.idl.
* bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
* page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
* webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.

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

8 years ago[MutationObservers] StyleAttributeMutationScope shouldn't be implemented with static...
commit-queue@webkit.org [Fri, 2 Dec 2011 03:39:11 +0000 (03:39 +0000)]
[MutationObservers] StyleAttributeMutationScope shouldn't be implemented with static classes
https://bugs.webkit.org/show_bug.cgi?id=73596

Patch by Rafael Weinstein <rafaelw@chromium.org> on 2011-12-01
Reviewed by Ojan Vafai.

No tests needed. This patch is a minor refactor.

* css/CSSMutableStyleDeclaration.cpp:

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

8 years agoAdd Chromium ToT GTest build bots (and group selection support) to flakiness dashboard
adamk@chromium.org [Fri, 2 Dec 2011 03:31:20 +0000 (03:31 +0000)]
Add Chromium ToT GTest build bots (and group selection support) to flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=73599

Reviewed by Ojan Vafai.

* TestResultServer/static-dashboards/builders.js:
* TestResultServer/static-dashboards/dashboard_base.js:
():
(htmlForTestTypeSwitcher):
* TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
(testHtmlForTestTypeSwitcherGroup):

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

8 years agoCSSMutableStyleDeclaration: Remove unused function setStringProperty().
kling@webkit.org [Fri, 2 Dec 2011 02:59:24 +0000 (02:59 +0000)]
CSSMutableStyleDeclaration: Remove unused function setStringProperty().
<http://webkit.org/b/73597>

Reviewed by Darin Adler.

* css/CSSMutableStyleDeclaration.cpp:
* css/CSSMutableStyleDeclaration.h:

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

8 years agoREGRESSION(r101268): Intermittent assertion failure in fast/block/child-not-removed...
rniwa@webkit.org [Fri, 2 Dec 2011 02:39:14 +0000 (02:39 +0000)]
REGRESSION(r101268): Intermittent assertion failure in fast/block/child-not-removed-from-parent-lineboxes-crash.html
https://bugs.webkit.org/show_bug.cgi?id=73250

Reviewed by Darin Adler.

Reset the position when exiting early in layoutRunsAndFloatsInRange.

No new tests because we don't have a reliable reproduction for this failure.
However, the failure is caught by the existing fast/block/child-not-removed-from-parent-lineboxes-crash.html
intermittently with about 30% probability.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):

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

8 years ago[Chromium] Marking increased flakiness in test_expectations
scheib@chromium.org [Fri, 2 Dec 2011 02:38:06 +0000 (02:38 +0000)]
[Chromium] Marking increased flakiness in test_expectations
inspector/debugger/script-formatter-breakpoints.html

* platform/chromium/test_expectations.txt:

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

8 years agoAsynchronous SpellChecker should consider multiple requests.
commit-queue@webkit.org [Fri, 2 Dec 2011 02:15:48 +0000 (02:15 +0000)]
Asynchronous SpellChecker should consider multiple requests.
https://bugs.webkit.org/show_bug.cgi?id=72939

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-01
Reviewed by Hajime Morita.

Source/WebCore:

Now SpellChecker saves a request when it is processing the previous spellcheck request.
If there is a request having the same root editable element, the older request is replaced by newer request.

Test: editing/spelling/spellcheck-queue.html

* editing/SpellChecker.cpp:
(WebCore::SpellChecker::SpellCheckRequest::SpellCheckRequest):
  A structure to have spell check request.
(WebCore::SpellChecker::SpellCheckRequest::sequence):
(WebCore::SpellChecker::SpellCheckRequest::range):
(WebCore::SpellChecker::SpellCheckRequest::text):
(WebCore::SpellChecker::SpellCheckRequest::mask):
(WebCore::SpellChecker::SpellCheckRequest::rootEditableElement):
(WebCore::SpellChecker::SpellChecker):
(WebCore::SpellChecker::createRequest):
(WebCore::SpellChecker::timerFiredToProcessQueuedRequest):
  When timer is fired, queued request is processed if any.
(WebCore::SpellChecker::canCheckAsynchronously):
(WebCore::SpellChecker::requestCheckingFor):
  When the spellchecker is processing another request, the latest request is queued.
(WebCore::SpellChecker::invokeRequest):
(WebCore::SpellChecker::enqueueRequest):
  Enqueues a request. If there is an older request whose root editable element is the same as the request,
  it will be replaced.
(WebCore::SpellChecker::didCheck):
* editing/SpellChecker.h:

LayoutTests:

Tests for multiple spellcheck requests.

* editing/spelling/spellcheck-queue-expected.txt: Added.
* editing/spelling/spellcheck-queue.html: Added.
* platform/gtk/Skipped:
* platform/qt/Skipped:

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

8 years agobufferedAmount calculation is wrong in CLOSING and CLOSED state.
commit-queue@webkit.org [Fri, 2 Dec 2011 01:58:49 +0000 (01:58 +0000)]
bufferedAmount calculation is wrong in CLOSING and CLOSED state.
https://bugs.webkit.org/show_bug.cgi?id=73404

Patch by Takashi Toyoshima <toyoshim@chromium.org> on 2011-12-01
Reviewed by Kent Tamura.

Source/WebCore:

WebSocket::bufferedAmount() must return buffered frame size including
disposed frames which are passed via send() calls after close().

Old implementation had a problem at CLOSING state. Buffered frame size
was added to m_bufferedAmountAfterClose at close(). But the function
returns the sum of m_bufferedAmountAfterClose and internally buffered
frame size, or m_channel->bufferedAmount(). So, buffered frames was
double counted.

In new implementation, m_bufferedAmount always represents buffered
frame size and m_bufferedAmountAfterClose does disposed frame size.
As a result, bufferedAmount() implementation become just to return the
sum of m_bufferedAmount and m_bufferedAmountAfterClose.

Test: http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html

* websockets/WebSocket.cpp: Implement new bufferedAmount handling.
(WebCore::saturateAdd):
(WebCore::WebSocket::WebSocket):
(WebCore::WebSocket::send):
(WebCore::WebSocket::close):
(WebCore::WebSocket::bufferedAmount):
(WebCore::WebSocket::didUpdateBufferedAmount):
(WebCore::WebSocket::didClose):
* websockets/WebSocket.h:

LayoutTests:

Add a layout test to check the WebSocket bufferedAmount property.
This test close the socket channel when it is busy and buffer some
message frames, then check the property's value in CLOSING and CLOSED
state.

* http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy-expected.txt: Added.
* http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html: Added.

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

8 years agoSupport integer typed arrays in the DFG JIT
oliver@apple.com [Fri, 2 Dec 2011 01:56:53 +0000 (01:56 +0000)]
Support integer typed arrays in the DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=73608

Reviewed by Filip Pizlo.

Add support for all the integral typed arrays in the DFG JIT.
Currently this loads the contents of Uint32 arrays as doubles,
which is clearly not as efficient as it could be, but this is
still in the order of 10-20x faster than the existing behaviour.

This needed us to add support for writing 16bit values to the
macroassembler, and also to support double<->unsigned conversion.

* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::strh):
(JSC::ARMv7Assembler::vcvt_floatingPointToUnsigned):
* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::store16):
(JSC::MacroAssemblerARMv7::truncateDoubleToUint32):
* assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::store16):
(JSC::MacroAssemblerX86Common::truncateDoubleToUint32):
* assembler/X86Assembler.h:
(JSC::X86Assembler::movw_rm):
(JSC::X86Assembler::cvttsd2siq_rr):
* bytecode/PredictedType.cpp:
(JSC::predictionToString):
(JSC::predictionFromClassInfo):
* bytecode/PredictedType.h:
(JSC::isInt8ArrayPrediction):
(JSC::isInt16ArrayPrediction):
(JSC::isInt32ArrayPrediction):
(JSC::isUint8ArrayPrediction):
(JSC::isUint16ArrayPrediction):
(JSC::isUint32ArrayPrediction):
(JSC::isFloat32ArrayPrediction):
(JSC::isFloat64ArrayPrediction):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::execute):
* dfg/DFGNode.h:
(JSC::DFG::Node::shouldSpeculateInt8Array):
(JSC::DFG::Node::shouldSpeculateInt16Array):
(JSC::DFG::Node::shouldSpeculateInt32Array):
(JSC::DFG::Node::shouldSpeculateUint8Array):
(JSC::DFG::Node::shouldSpeculateUint16Array):
(JSC::DFG::Node::shouldSpeculateUint32Array):
(JSC::DFG::Node::shouldSpeculateFloat32Array):
(JSC::DFG::Node::shouldSpeculateFloat64Array):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::performNodeCSE):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayLength):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* runtime/JSGlobalData.h:

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

8 years ago[Chromium] Marking Flakey tests in test_expectations:
scheib@chromium.org [Fri, 2 Dec 2011 01:47:13 +0000 (01:47 +0000)]
[Chromium] Marking Flakey tests in test_expectations:

* platform/chromium/test_expectations.txt:
inspector/styles/styles-computed-trace.html
fast/canvas/canvas-overloads-strokeText.html

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

8 years agoParse reftest.list and extract types of ref tests
rniwa@webkit.org [Fri, 2 Dec 2011 01:46:21 +0000 (01:46 +0000)]
Parse reftest.list and extract types of ref tests
https://bugs.webkit.org/show_bug.cgi?id=66837

Reviewed by Dirk Pranke.

Add support for reftest.list to base port.

* Scripts/webkitpy/common/find_files.py:
(find):
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner.__init__):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.__init__): Initialize self._reftest_list. It's a dictionary mapping from a test directory
to a dictionary of {test path: ("==" or "!=", reference file path)}
(Port._get_reftest_list): Added; calls test_file.parse_reftest_list to fill self._reftest_list.
(Port._reference_file_for): Added; obtains the reference file name given a test name.
(Port.is_reftest): Added; Calls _reference_file_for.
(Port.reftest_expected_filename): Calls _reference_file_for.
(Port.reftest_expected_mismatch_filename): Ditto.
(Port.find_test_files):
(is_reference_html_file): Treat any file that starts with ref- or notref- or ends with
-expected, -expected-mismach, -ref, or -notref as a reference file.
(_is_test_file):
(_parse_reftest_list): Added.
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_is_test_file):
(PortTest.test_parse_reftest_list):
* Scripts/webkitpy/layout_tests/port/dryrun.py:
(DryrunDriver.run_test):
* Scripts/webkitpy/layout_tests/port/test.py:
(unit_test_filesystem.add_test_file):
(unit_test_filesystem.add_file):
(unit_test_filesystem):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(get_tests_run.RecordingTestDriver.run_test):
(MainTest.test_unexpected_failures):
(MainTest.test_missing_and_unexpected_results):
(EndToEndTest.test_end_to_end):
* Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
(Rebaseliner._compile_rebaselining_tests):

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

8 years ago[EFL] Remove the ewk_protocol_handler-related code
commit-queue@webkit.org [Fri, 2 Dec 2011 01:32:32 +0000 (01:32 +0000)]
[EFL] Remove the ewk_protocol_handler-related code
https://bugs.webkit.org/show_bug.cgi?id=73018

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-12-01
Reviewed by Martin Robinson.

This functionality has been broken since r99364, which stopped setting
the "webkit-resource" property needed by
ewk_protocol_handler_soup.cpp.

After giving it some thought, it looks clear that this code should not
be in ewk at all: it is very backend-specific (even in the function
signatures it expects), and it only allows callers to register schemes
once and provide a single handler to all of them, which does not make
much sense.

Client code using WebKit-EFL with the soup backend should be
responsible for creating their own request handlers (ie. subclass
SoupRequest) instead.

For that to be possible, a function which returns the default
SoupSession used by WebKit has been added.

* CMakeListsEfl.txt:
* ewk/ewk_network.cpp:
(ewk_network_default_soup_session_get):
* ewk/ewk_network.h:
* ewk/ewk_private.h:
* ewk/ewk_protocol_handler.cpp: Removed.
* ewk/ewk_protocol_handler.h: Removed.
* ewk/ewk_protocol_handler_soup.cpp: Removed.
* ewk/ewk_protocol_handler_soup.h: Removed.
* ewk/ewk_view.cpp:
* ewk/ewk_view.h:

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

8 years agoUnreviewed, rolling out r101711.
commit-queue@webkit.org [Fri, 2 Dec 2011 01:14:12 +0000 (01:14 +0000)]
Unreviewed, rolling out r101711.
http://trac.webkit.org/changeset/101711
https://bugs.webkit.org/show_bug.cgi?id=73605

Broke 3 webkitpy tests (Requested by rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-01

* Scripts/webkitpy/style/checker.py:
(_all_categories):
(FileType):
(CheckerDispatcher._file_type):
(CheckerDispatcher._create_checker):
* Scripts/webkitpy/style/checker_unittest.py:
(CheckerDispatcherDispatchTest.assert_checker_cpp):
(CheckerDispatcherDispatchTest.test_cpp_paths):
* Scripts/webkitpy/style/checkers/jsonchecker.py: Removed.
* Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Removed.

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

8 years agoReplace a custom constructor of window.Option with the [NamedConstructor] IDL
haraken@chromium.org [Fri, 2 Dec 2011 01:03:37 +0000 (01:03 +0000)]
Replace a custom constructor of window.Option with the [NamedConstructor] IDL
https://bugs.webkit.org/show_bug.cgi?id=73498

Reviewed by Adam Barth.

Removes JSOptionConstructor.{h,cpp} and generates the constructor of window.Option
by the [NamedConstructor] IDL.

Source/WebCore:

Tests: fast/js/custom-constructors.html
       fast/forms/option-index.html
       fast/forms/add-and-remove-option.html
       fast/dom/dom-add-optionelement.html

* GNUmakefile.list.am: Removed JSOptionConstructor.{h,cpp}.
* Target.pri: Ditto.
* UseJSC.cmake: Ditto.
* WebCore.gypi: Ditto.
* WebCore.order: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/JSBindingsAllInOne.cpp: Ditto.

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::option): Specifies the NamedConstructor.
* bindings/js/JSOptionConstructor.cpp: Removed.
* bindings/js/JSOptionConstructor.h: Removed.
* page/DOMWindow.idl: Removed the [JSCustomConstructor] IDL.

LayoutTests:

* platform/mac/fast/dom/Window/window-properties-expected.txt: Updated the test result.

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