[EFL] Rebaseline http/tests/plugins/ after r129972
https://bugs.webkit.org/show_bug.cgi?id=99672

Unreviewed. Plugin feature is enabled on EFL WK2 port after r129972.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-10-18

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131740 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2] Add CustomFilterOperation serialization in ArgumentCoder.
https://bugs.webkit.org/show_bug.cgi?id=98733

Patch by Huang Dongsung <luxtella@company100.net> on 2012-10-18
Reviewed by Noam Rosenthal.

Source/WebCore:

Change CustomFilterOperation::parameters() to const function, because
this method is a getter and a const instance needs to call this method.

No new tests because there is no change in behavior.

* platform/graphics/filters/CustomFilterOperation.h:
(WebCore::CustomFilterOperation::parameters):

Source/WebKit2:

Add ArgumentCoders for CustomFilterOperation and all dependent classes.
Coordinated Graphics will use this css shaders serialization when it enables CSS
Shaders.

No new tests, code path is not activated yet.

* CMakeLists.txt:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: Added.
(CoreIPC):
(CoreIPC::::encode):
(CoreIPC::::decode):
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h: Added.
(WebCore):
(CoreIPC):
* Shared/CoordinatedGraphics/WebCustomFilterProgram.h: Added.
(WebKit):
(WebCustomFilterProgram):
    WebCustomFilterProgram is made to serialize the data of a
    StyleCustomFilterProgram to the UI process.
(WebKit::WebCustomFilterProgram::create):
(WebKit::WebCustomFilterProgram::WebCustomFilterProgram):
* Shared/ShareableSurface.cpp:
* Shared/WebCoreArgumentCoders.cpp:
* Shared/WebCoreArgumentCoders.h:
* Target.pri:
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
* WebKit2.pri:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131741 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Don't use the C API internally in WebKitWindowProperties
https://bugs.webkit.org/show_bug.cgi?id=96785

Reviewed by Gustavo Noronha Silva.

Using the C++ classes directly instead of the C API wrappers we
avoid a lot of toImpl/toAPI casts, string conversions and
allocations. The code is also a lot simpler and easier to read.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewCreateNewPage):
* UIProcess/API/gtk/WebKitWindowProperties.cpp:
(webkitWindowPropertiesUpdateFromWebWindowFeatures):
* UIProcess/API/gtk/WebKitWindowPropertiesPrivate.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131742 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Gardening. Remove pixel expectation for a test that's actually a reftest.

* platform/efl/fast/forms/datalist/update-range-with-datalist-expected.png: Removed.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131743 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: add X-WebKit-CSP header into inspector.html
https://bugs.webkit.org/show_bug.cgi?id=99710

Reviewed by Vsevolod Vlasov.

A simple sanity measure.

* inspector/front-end/inspector.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131744 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Fix GTK+ debug build.

* UIProcess/API/gtk/WebKitWebResource.cpp:
(webkitWebResourceCreate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131745 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Update pixel expectation for a datalist test.

* platform/efl/fast/forms/datalist/input-appearance-range-with-datalist-expected.png:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131746 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium rebaselines.

* platform/chromium-linux/fast/table/border-collapsing/collapsed-border-with-col-colgroup-span-expected.png: Removed.
* platform/chromium-mac/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.png:
* platform/chromium-mac/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.png:
* platform/chromium-mac/fast/table/border-collapsing/collapsed-border-with-col-colgroup-span-expected.png: Added.
* platform/chromium-win/fast/table/border-collapsing/collapsed-border-with-col-colgroup-span-expected.png: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CMake] Avoid unnecessarily running the LLInt generation commands.
https://bugs.webkit.org/show_bug.cgi?id=99708

Reviewed by Rob Buis.

As described in the comments in the change itself, in some cases
the Ruby generation scripts used when LLInt is on would each be
run twice in every build even if nothing had changed.

Fix that by not setting the OBJECT_DEPENDS property of some source
files to depend on the generated headers; instead, they are now
just part of the final binaries/libraries which use them.

* CMakeLists.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131748 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Localizer::monthFormat and implementations
https://bugs.webkit.org/show_bug.cgi?id=99704

Reviewed by Kentaro Hara.

Source/WebCore:

Localizer::monthFormat will be used for constructing input[type=month] UI.

Tests: Add unit tests to Source/WebKit/chromium/tests/.

* platform/text/Localizer.h:
(Localizer): Declare pure virtual monthFormat function.

* platform/text/LocaleNone.cpp:
(LocaleNone): Declare monthFormat.
(WebCore::LocaleNone::monthFormat):
Added. Always reutrns an ISO-8601 format, "yyyy-MM"

* platform/text/LocaleICU.h:
(LocaleICU): Declare monthFormat.
* platform/text/LocaleICU.cpp:
(WebCore::getFormatForSkeleton):
A helper to get a format for the specified skeleton.
The overflow-allocalte-try-again pattern is similar to
LocaleICU::decimalSymbol and LocaleICU::decimalTextAttribute.
(WebCore::LocaleICU::monthFormat):
Added. Calls getFormatForSkeleton with "yyyyMMM".

* platform/text/mac/LocaleMac.h:
(LocaleMac): Declare monthFormat.
* platform/text/mac/LocaleMac.mm:
(WebCore::LocaleMac::monthFormat):
Added. Calls NSDateFormatter::dateFormatFromTemplate with "yyyyMMM".

* platform/text/LocaleWin.h:
(LocaleWin): Declare monthFormat.
* platform/text/LocaleWin.cpp:
(WebCore::LocaleWin::monthFormat):
Get a format by LOCALE_SYEARMONTH, and convert it to an LDML format.

Source/WebKit/chromium:

* tests/LocaleMacTest.cpp:
(LocaleMacTest::monthFormat): A helper function.
(TEST_F): Added some tests.
* tests/LocaleWinTest.cpp:
(LocaleWinTest::monthFormat): A helper function.
(TEST_F): Added some tests.
* tests/LocalizedDateICUTest.cpp:
(LocalizedDateICUTest::monthFormat): A helper function.
(TEST_F): Added some tests.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131749 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Don't use the C API internally in WebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=96784

Reviewed by Gustavo Noronha Silva.

Using the C++ classes directly instead of the C API wrappers we
avoid a lot of toImpl/toAPI casts, string conversions and
allocations. The code is also a lot simpler and easier to read.

* UIProcess/API/gtk/WebKitSettings.cpp:
(_WebKitSettingsPrivate):
(webkit_settings_class_init):
(webkit_settings_init):
(webkitSettingsAttachSettingsToPage):
(webkit_settings_get_enable_javascript):
(webkit_settings_set_enable_javascript):
(webkit_settings_get_auto_load_images):
(webkit_settings_set_auto_load_images):
(webkit_settings_get_load_icons_ignoring_image_load_setting):
(webkit_settings_set_load_icons_ignoring_image_load_setting):
(webkit_settings_get_enable_offline_web_application_cache):
(webkit_settings_set_enable_offline_web_application_cache):
(webkit_settings_get_enable_html5_local_storage):
(webkit_settings_set_enable_html5_local_storage):
(webkit_settings_get_enable_html5_database):
(webkit_settings_set_enable_html5_database):
(webkit_settings_get_enable_xss_auditor):
(webkit_settings_set_enable_xss_auditor):
(webkit_settings_get_enable_frame_flattening):
(webkit_settings_set_enable_frame_flattening):
(webkit_settings_get_enable_plugins):
(webkit_settings_set_enable_plugins):
(webkit_settings_get_enable_java):
(webkit_settings_set_enable_java):
(webkit_settings_get_javascript_can_open_windows_automatically):
(webkit_settings_set_javascript_can_open_windows_automatically):
(webkit_settings_get_enable_hyperlink_auditing):
(webkit_settings_set_enable_hyperlink_auditing):
(webkit_settings_set_default_font_family):
(webkit_settings_set_monospace_font_family):
(webkit_settings_set_serif_font_family):
(webkit_settings_set_sans_serif_font_family):
(webkit_settings_set_cursive_font_family):
(webkit_settings_set_fantasy_font_family):
(webkit_settings_set_pictograph_font_family):
(webkit_settings_get_default_font_size):
(webkit_settings_set_default_font_size):
(webkit_settings_get_default_monospace_font_size):
(webkit_settings_set_default_monospace_font_size):
(webkit_settings_get_minimum_font_size):
(webkit_settings_set_minimum_font_size):
(webkit_settings_set_default_charset):
(webkit_settings_get_enable_private_browsing):
(webkit_settings_set_enable_private_browsing):
(webkit_settings_get_enable_developer_extras):
(webkit_settings_set_enable_developer_extras):
(webkit_settings_get_enable_resizable_text_areas):
(webkit_settings_set_enable_resizable_text_areas):
(webkit_settings_get_enable_tabs_to_links):
(webkit_settings_set_enable_tabs_to_links):
(webkit_settings_get_enable_dns_prefetching):
(webkit_settings_set_enable_dns_prefetching):
(webkit_settings_get_enable_caret_browsing):
(webkit_settings_set_enable_caret_browsing):
(webkit_settings_get_enable_fullscreen):
(webkit_settings_set_enable_fullscreen):
(webkit_settings_get_print_backgrounds):
(webkit_settings_set_print_backgrounds):
(webkit_settings_get_enable_webaudio):
(webkit_settings_set_enable_webaudio):
(webkit_settings_get_enable_webgl):
(webkit_settings_set_enable_webgl):
(webkit_settings_get_allow_modal_dialogs):
(webkit_settings_get_zoom_text_only):
(webkit_settings_get_javascript_can_access_clipboard):
(webkit_settings_set_javascript_can_access_clipboard):
(webkit_settings_get_media_playback_requires_user_gesture):
(webkit_settings_set_media_playback_requires_user_gesture):
(webkit_settings_get_media_playback_allows_inline):
(webkit_settings_set_media_playback_allows_inline):
(webkit_settings_get_draw_compositing_indicators):
(webkit_settings_set_draw_compositing_indicators):
(webkit_settings_get_enable_site_specific_quirks):
(webkit_settings_set_enable_site_specific_quirks):
(webkit_settings_get_enable_page_cache):
(webkit_settings_set_enable_page_cache):
(webkit_settings_get_enable_smooth_scrolling):
(webkit_settings_set_enable_smooth_scrolling):
* UIProcess/API/gtk/WebKitSettingsPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewSetSettings):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131750 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Localizer::monthFormat and implementations
https://bugs.webkit.org/show_bug.cgi?id=99704

* tests/LocaleMacTest.cpp:
(TEST_F): Remove tests for fr_FR and ru locales for a compatibility reason.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131751 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rebaselining some longstanding Chromium expectations.

Unreviewed test expectations update.

These were marked as expected fail when a Skia roll went in. That was ago.

* platform/chromium-linux/fast/repaint/list-marker-expected.png:
* platform/chromium-linux/svg/as-background-image/background-image-preserveaspectRatio-support-expected.png:
* platform/chromium-linux/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac-snowleopard/fast/repaint/list-marker-expected.png:
* platform/chromium-mac-snowleopard/svg/as-background-image/background-image-preserveaspectRatio-support-expected.png:
* platform/chromium-mac-snowleopard/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac-snowleopard/svg/hixie/perf/007-expected.png:
* platform/chromium-mac/fast/repaint/list-marker-expected.png:
* platform/chromium-mac/svg/as-background-image/background-image-preserveaspectRatio-support-expected.png:
* platform/chromium-mac/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-win-xp/svg/as-image/img-preserveAspectRatio-support-1-expected.png: Added.
* platform/chromium-win/fast/repaint/focus-ring-expected.png:
* platform/chromium-win/fast/repaint/list-marker-expected.png:
* platform/chromium-win/svg/as-background-image/background-image-preserveaspectRatio-support-expected.png:
* platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131752 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: provisional change for merging "doced" state into the "dock side" enum.
https://bugs.webkit.org/show_bug.cgi?id=99718

Reviewed by Vsevolod Vlasov.

Adds stub method that could be executed from the embedder.

* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI.setDockSide):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131753 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Test expectation update mainly for
https://bugs.webkit.org/show_bug.cgi?id=99673

* platform/chromium-linux/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-linux/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac-snowleopard/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-mac/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-appearance-l10n-expected.png: Added.
* platform/chromium-win/fast/forms/date-multiple-fields/date-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-win/fast/forms/month-multiple-fields/month-multiple-fields-appearance-pseudo-elements-expected.png:
* platform/chromium-win/fast/forms/time-multiple-fields/time-multiple-fields-appearance-pseudo-elements-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] AudioBusGtk sometimes fails to load the HRTF database
https://bugs.webkit.org/show_bug.cgi?id=99601

Reviewed by Martin Robinson.

AudioBusGtk now first lookup for the uninstalled resource files,
if the AUDIO_RESOURCES_PATH environment variable is
set. Additionally the audio file reader is now better dealing with
errors, returning an empty AudioBus in such cases and issuing
warnings on the console output. The cleanup of some member
variables was also moved to the destructor.

* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
(AudioFileReader):
(WebCore::AudioFileReader::AudioFileReader):
(WebCore::AudioFileReader::~AudioFileReader): Clear and free
member variables. This was done in createBus before.
(WebCore::AudioFileReader::handleMessage): Issue warnings in case
of error and exit from the main loop so the pipeline is not
forever stuck.
(WebCore::AudioFileReader::createBus): Return an empty bus in case
of error.
* platform/audio/gtk/AudioBusGtk.cpp:
(WebCore::AudioBus::loadPlatformResource): Load uninstalled
resources first if AUDIO_RESOURCES_PATH is set.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131755 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Don't use the C API internally in WebKitFormSubmissionRequest
https://bugs.webkit.org/show_bug.cgi?id=96777

Reviewed by Xan Lopez.

Using the C++ classes directly instead of the C API wrappers we
avoid a lot of toImpl/toAPI casts, string conversions and
allocations. The code is also a lot simpler and easier to read.

* UIProcess/API/gtk/WebKitFormClient.cpp:
(willSubmitForm):
* UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
(_WebKitFormSubmissionRequestPrivate):
(webkitFormSubmissionRequestCreate):
(webkit_form_submission_request_get_text_fields):
(webkit_form_submission_request_submit):
* UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131756 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Don't use the C API internally in WebKitFileChooserRequest
https://bugs.webkit.org/show_bug.cgi?id=96774

Reviewed by Xan Lopez.

Using the C++ classes directly instead of the C API wrappers we
avoid a lot of toImpl/toAPI casts, string conversions and
allocations. The code is also a lot simpler and easier to read.

* UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
(_WebKitFileChooserRequestPrivate):
(webkitFileChooserRequestCreate):
(webkit_file_chooser_request_get_mime_types):
(webkit_file_chooser_request_get_mime_types_filter):
(webkit_file_chooser_request_get_select_multiple):
(webkit_file_chooser_request_select_files):
(webkit_file_chooser_request_get_selected_files):
(webkit_file_chooser_request_cancel):
* UIProcess/API/gtk/WebKitFileChooserRequestPrivate.h:
* UIProcess/API/gtk/WebKitUIClient.cpp:
(runOpenPanel):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131757 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r131464): Null-pointer crash in StyleResolver::styleForElement
https://bugs.webkit.org/show_bug.cgi?id=99587

Patch by Takashi Sakamoto <tasak@google.com> on 2012-10-18
Reviewed by Dimitri Glazkov.

Source/WebCore:

Since contents in datalist are not shown, summary in datalist is not
shown either. So the summary has no render style. On the other hand,
the summary is implemented by shadow DOM and it has some insertion
point. Its child, e.g. title in the below test, is distributed.
To solve the child's user-modify, looking at shadow host(=summary)'s
style causes null-pointer crash.

Test: fast/dom/shadow/user-modify-in-datalist-crash.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForElement):
Added a code to check whether the shadow host has any style or not.

LayoutTests:

* fast/dom/shadow/user-modify-in-datalist-crash-expected.txt: Added.
* fast/dom/shadow/user-modify-in-datalist-crash.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131758 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Possible redundant zoomToInitialScaleOnLoad() in WebPagePrivate::setLoadState
https://bugs.webkit.org/show_bug.cgi?id=99624

Reviewed by Rob Buis.
Patch by Jacky Jiang <zhajiang@rim.com>
Internally reviewed by Arvid Nilsson

PR: 225981
Several reasons to eliminate the ancient unnecessary
zoomToInitialScaleOnLoad() in WebPagePrivate::setLoadState committed:
- At this point, we have only committed the data we received.
- For the new load, we haven't started parsing the tokens and building
  the DOM tree and the first layout will happen after that.
- For the load restored from cache, the first layout will happen after
  setLoadState committed which is called by
  FrameLoader::dispatchDidCommitLoad().
- zoomToInitialScaleOnLoad() can still be called after the first
  layout finished.
- zoomToInitialScaleOnLoad() is expensive and it will boost the load
  performance after the removal.
- Removal of this can fix some weird rendering defects on yahoo.com,
  maps.google.com, news.qq.com and so on during load and rotation
  mentioned on the PR.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):

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