diff options
35 files changed, 244 insertions, 203 deletions
diff --git a/android_webview/native/aw_settings.cc b/android_webview/native/aw_settings.cc index 74356fe..8d44487 100644 --- a/android_webview/native/aw_settings.cc +++ b/android_webview/native/aw_settings.cc @@ -15,8 +15,8 @@ #include "content/public/common/content_client.h" #include "jni/AwSettings_jni.h" #include "webkit/common/user_agent/user_agent.h" +#include "webkit/common/webpreferences.h" #include "webkit/glue/webkit_glue.h" -#include "webkit/glue/webpreferences.h" using base::android::ConvertJavaStringToUTF16; using base::android::ConvertUTF8ToJavaString; diff --git a/chrome/browser/DEPS b/chrome/browser/DEPS index 284a892..848e010 100644 --- a/chrome/browser/DEPS +++ b/chrome/browser/DEPS @@ -70,7 +70,6 @@ include_rules = [ "+webkit/glue/webdropdata.h", "+webkit/glue/webkit_glue.h", "+webkit/glue/webmenuitem.h", - "+webkit/glue/webpreferences.h", # DO NOT ADD ANY MORE ITEMS TO THE ABOVE LIST! "-chrome/browser/ui/views", diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc index d46465a..568351e 100644 --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc @@ -130,7 +130,7 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/resource/resource_bundle.h" #include "ui/message_center/message_center_util.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include "webkit/plugins/plugin_switches.h" #if defined(OS_WIN) diff --git a/chrome/browser/extensions/extension_webkit_preferences.cc b/chrome/browser/extensions/extension_webkit_preferences.cc index 0e32402..025dcc5 100644 --- a/chrome/browser/extensions/extension_webkit_preferences.cc +++ b/chrome/browser/extensions/extension_webkit_preferences.cc @@ -8,7 +8,7 @@ #include "chrome/common/chrome_switches.h" #include "chrome/common/extensions/extension.h" #include "chrome/common/extensions/manifest.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" namespace extension_webkit_preferences { diff --git a/chrome/browser/extensions/gpu_browsertest.cc b/chrome/browser/extensions/gpu_browsertest.cc index 90ce72232..ff34a35 100644 --- a/chrome/browser/extensions/gpu_browsertest.cc +++ b/chrome/browser/extensions/gpu_browsertest.cc @@ -12,7 +12,7 @@ #include "chrome/browser/extensions/extension_system.h" #include "chrome/browser/ui/browser.h" #include "content/public/browser/render_view_host.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" // Tests that GPU acceleration is disabled for extension background // pages. See crbug.com/163698 . diff --git a/chrome/browser/prefs/chrome_pref_service_unittest.cc b/chrome/browser/prefs/chrome_pref_service_unittest.cc index ffe54f7..f6a24a8 100644 --- a/chrome/browser/prefs/chrome_pref_service_unittest.cc +++ b/chrome/browser/prefs/chrome_pref_service_unittest.cc @@ -26,7 +26,7 @@ #include "content/public/test/test_browser_thread.h" #include "content/public/test/web_contents_tester.h" #include "ui/base/test/data/resource.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" using content::BrowserThread; using content::WebContentsTester; diff --git a/chrome/browser/printing/print_dialog_cloud.cc b/chrome/browser/printing/print_dialog_cloud.cc index 9b2c0c9..4e573c2 100644 --- a/chrome/browser/printing/print_dialog_cloud.cc +++ b/chrome/browser/printing/print_dialog_cloud.cc @@ -38,7 +38,7 @@ #include "content/public/browser/web_ui.h" #include "grit/generated_resources.h" #include "ui/base/l10n/l10n_util.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #if defined(USE_AURA) #include "ui/aura/root_window.h" diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc index ea01b78..3a77806 100644 --- a/chrome/browser/ui/prefs/prefs_tab_helper.cc +++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc @@ -27,7 +27,7 @@ #include "grit/platform_locale_settings.h" #include "third_party/icu/public/common/unicode/uchar.h" #include "third_party/icu/public/common/unicode/uscript.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #if defined(OS_POSIX) && !defined(OS_MACOSX) && defined(ENABLE_THEMES) #include "chrome/browser/themes/theme_service.h" diff --git a/chrome/browser/ui/webui/task_manager/task_manager_handler.cc b/chrome/browser/ui/webui/task_manager/task_manager_handler.cc index 83e54a1..afb3960 100644 --- a/chrome/browser/ui/webui/task_manager/task_manager_handler.cc +++ b/chrome/browser/ui/webui/task_manager/task_manager_handler.cc @@ -22,7 +22,7 @@ #include "content/public/browser/web_ui.h" #include "ui/gfx/image/image_skia.h" #include "ui/webui/web_ui_util.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" namespace { diff --git a/chrome/renderer/DEPS b/chrome/renderer/DEPS index 7b2cf63..db5eff4 100644 --- a/chrome/renderer/DEPS +++ b/chrome/renderer/DEPS @@ -14,7 +14,7 @@ include_rules = [ "+sandbox/win/src", "+skia", - "+webkit/common/fileapi", + "+webkit/common", "+webkit/glue", "+webkit/glue/plugins", "+webkit/plugins", diff --git a/chrome/renderer/plugins/plugin_placeholder.cc b/chrome/renderer/plugins/plugin_placeholder.cc index f5b749a..d221f8f 100644 --- a/chrome/renderer/plugins/plugin_placeholder.cc +++ b/chrome/renderer/plugins/plugin_placeholder.cc @@ -39,7 +39,6 @@ #include "ui/base/l10n/l10n_util.h" #include "ui/base/resource/resource_bundle.h" #include "ui/webui/jstemplate_builder.h" -#include "webkit/glue/webpreferences.h" #include "webkit/plugins/npapi/plugin_list.h" #if defined(ENABLE_MOBILE_YOUTUBE_PLUGIN) diff --git a/chrome/renderer/plugins/webview_plugin.cc b/chrome/renderer/plugins/webview_plugin.cc index e875d74..315c2d7 100644 --- a/chrome/renderer/plugins/webview_plugin.cc +++ b/chrome/renderer/plugins/webview_plugin.cc @@ -18,7 +18,8 @@ #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebPluginContainer.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" +#include "webkit/renderer/webpreferences_renderer.h" using WebKit::WebCanvas; using WebKit::WebCursorInfo; diff --git a/chrome/renderer/printing/print_web_view_helper.cc b/chrome/renderer/printing/print_web_view_helper.cc index b887cec..f076272 100644 --- a/chrome/renderer/printing/print_web_view_helper.cc +++ b/chrome/renderer/printing/print_web_view_helper.cc @@ -45,7 +45,8 @@ #include "third_party/WebKit/Source/WebKit/chromium/public/WebViewClient.h" #include "ui/base/l10n/l10n_util.h" #include "ui/base/resource/resource_bundle.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" +#include "webkit/renderer/webpreferences_renderer.h" namespace printing { diff --git a/content/browser/android/content_settings.cc b/content/browser/android/content_settings.cc index 15600fb..d087d6b 100644 --- a/content/browser/android/content_settings.cc +++ b/content/browser/android/content_settings.cc @@ -10,7 +10,7 @@ #include "content/browser/renderer_host/render_view_host_impl.h" #include "content/public/browser/web_contents.h" #include "jni/ContentSettings_jni.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" namespace content { diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc index 1a0fe58..94bbc2b 100644 --- a/content/browser/gpu/gpu_data_manager_impl_private.cc +++ b/content/browser/gpu/gpu_data_manager_impl_private.cc @@ -32,7 +32,7 @@ #include "ui/gl/gl_implementation.h" #include "ui/gl/gl_switches.h" #include "ui/gl/gpu_switching_manager.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include "webkit/plugins/plugin_switches.h" #if defined(OS_MACOSX) diff --git a/content/browser/renderer_host/render_view_host_delegate.cc b/content/browser/renderer_host/render_view_host_delegate.cc index ddd381f..0df7186 100644 --- a/content/browser/renderer_host/render_view_host_delegate.cc +++ b/content/browser/renderer_host/render_view_host_delegate.cc @@ -5,7 +5,7 @@ #include "content/browser/renderer_host/render_view_host_delegate.h" #include "googleurl/src/gurl.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" namespace content { diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc index 8cf8c2d..e8659f3 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -61,7 +61,7 @@ #include "ui/gfx/skbitmap_operations.h" #include "ui/gfx/vector2d_conversions.h" #include "webkit/common/cursors/webcursor.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include "webkit/plugins/npapi/webplugin.h" #include "webkit/plugins/npapi/webplugin_delegate_impl.h" diff --git a/content/browser/renderer_host/test_render_view_host.cc b/content/browser/renderer_host/test_render_view_host.cc index be2fab9..a3a8b43 100644 --- a/content/browser/renderer_host/test_render_view_host.cc +++ b/content/browser/renderer_host/test_render_view_host.cc @@ -18,8 +18,8 @@ #include "content/test/test_web_contents.h" #include "media/base/video_frame.h" #include "ui/gfx/rect.h" +#include "webkit/common/webpreferences.h" #include "webkit/dom_storage/dom_storage_types.h" -#include "webkit/glue/webpreferences.h" namespace content { diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc index 0f8b1df..0e1b8c5 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc @@ -83,7 +83,7 @@ #include "ui/gfx/display.h" #include "ui/gfx/screen.h" #include "ui/gl/gl_switches.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #if defined(OS_ANDROID) #include "content/public/browser/android/content_view_core.h" diff --git a/content/public/common/common_param_traits_macros.h b/content/public/common/common_param_traits_macros.h index 2e3b4e0..563a102 100644 --- a/content/public/common/common_param_traits_macros.h +++ b/content/public/common/common_param_traits_macros.h @@ -20,7 +20,7 @@ #include "third_party/WebKit/public/platform/WebReferrerPolicy.h" #include "third_party/WebKit/public/platform/WebURLRequest.h" #include "ui/base/window_open_disposition.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include "webkit/plugins/webplugininfo.h" #undef IPC_MESSAGE_EXPORT diff --git a/content/renderer/render_view_browsertest_mac.mm b/content/renderer/render_view_browsertest_mac.mm index ab4af5d..808ffbdf 100644 --- a/content/renderer/render_view_browsertest_mac.mm +++ b/content/renderer/render_view_browsertest_mac.mm @@ -8,7 +8,7 @@ #include "content/public/test/render_view_test.h" #include "content/renderer/render_view_impl.h" #include "testing/gtest/include/gtest/gtest.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include <Cocoa/Cocoa.h> #include <Carbon/Carbon.h> // for the kVK_* constants. diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc index d3e7f65..9d060ff 100644 --- a/content/renderer/render_view_impl.cc +++ b/content/renderer/render_view_impl.cc @@ -212,6 +212,7 @@ #include "webkit/renderer/media/webmediaplayer_impl.h" #include "webkit/renderer/media/webmediaplayer_ms.h" #include "webkit/renderer/media/webmediaplayer_params.h" +#include "webkit/renderer/webpreferences_renderer.h" #if defined(OS_ANDROID) #include <cpu-features.h> diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h index d1b0f51..8d73ee9 100644 --- a/content/renderer/render_view_impl.h +++ b/content/renderer/render_view_impl.h @@ -55,7 +55,7 @@ #include "third_party/WebKit/Source/WebKit/chromium/public/WebSecurityOrigin.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebViewClient.h" #include "ui/surface/transport_dib.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #include "webkit/plugins/npapi/webplugin_page_delegate.h" #include "webkit/renderer/media/webmediaplayer_delegate.h" diff --git a/content/shell/common/webkit_test_helpers.cc b/content/shell/common/webkit_test_helpers.cc index 78f96c1..2417dc1 100644 --- a/content/shell/common/webkit_test_helpers.cc +++ b/content/shell/common/webkit_test_helpers.cc @@ -10,7 +10,7 @@ #include "base/utf_string_conversions.h" #include "content/shell/common/shell_switches.h" #include "third_party/WebKit/Tools/DumpRenderTree/chromium/TestRunner/public/WebPreferences.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" namespace content { diff --git a/content/shell/renderer/webkit_test_runner.cc b/content/shell/renderer/webkit_test_runner.cc index b6259b8..aa98a2d 100644 --- a/content/shell/renderer/webkit_test_runner.cc +++ b/content/shell/renderer/webkit_test_runner.cc @@ -57,8 +57,8 @@ #include "third_party/WebKit/Tools/DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h" #include "ui/gfx/rect.h" #include "webkit/base/file_path_string_conversions.h" +#include "webkit/common/webpreferences.h" #include "webkit/glue/webkit_glue.h" -#include "webkit/glue/webpreferences.h" #include "webkit/mocks/test_media_stream_client.h" using WebKit::Platform; diff --git a/content/shell/shell_content_browser_client.cc b/content/shell/shell_content_browser_client.cc index 6993f31..a292904 100644 --- a/content/shell/shell_content_browser_client.cc +++ b/content/shell/shell_content_browser_client.cc @@ -28,7 +28,7 @@ #include "content/shell/shell_web_contents_view_delegate_creator.h" #include "content/shell/webkit_test_controller.h" #include "googleurl/src/gurl.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" #if defined(OS_ANDROID) #include "base/android/path_utils.h" diff --git a/content/shell/webkit_test_controller.h b/content/shell/webkit_test_controller.h index f474ed6..6826f63 100644 --- a/content/shell/webkit_test_controller.h +++ b/content/shell/webkit_test_controller.h @@ -18,7 +18,7 @@ #include "content/public/browser/render_view_host_observer.h" #include "content/public/browser/web_contents_observer.h" #include "ui/gfx/size.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" class SkBitmap; diff --git a/content/test/test_web_contents.h b/content/test/test_web_contents.h index 569edb9..fce9fa8 100644 --- a/content/test/test_web_contents.h +++ b/content/test/test_web_contents.h @@ -8,7 +8,7 @@ #include "content/browser/web_contents/web_contents_impl.h" #include "content/public/common/page_transition_types.h" #include "content/public/test/web_contents_tester.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" class SiteInstanceImpl; diff --git a/ppapi/shared_impl/DEPS b/ppapi/shared_impl/DEPS index 9f93141..313cbac 100644 --- a/ppapi/shared_impl/DEPS +++ b/ppapi/shared_impl/DEPS @@ -3,7 +3,7 @@ include_rules = [ "+gpu", "+media/audio", "+skia", - "+webkit/glue", + "+webkit/common/webpreferences.h", # The untrusted build references the NaCl integrated runtime (IRT). "+native_client/src/untrusted/irt", diff --git a/ppapi/shared_impl/ppapi_preferences.h b/ppapi/shared_impl/ppapi_preferences.h index 852f7b9..d3fad965 100644 --- a/ppapi/shared_impl/ppapi_preferences.h +++ b/ppapi/shared_impl/ppapi_preferences.h @@ -6,7 +6,7 @@ #define PPAPI_SHARED_IMPL_PPAPI_PREFERENCES_H_ #include "ppapi/shared_impl/ppapi_shared_export.h" -#include "webkit/glue/webpreferences.h" +#include "webkit/common/webpreferences.h" struct WebPreferences; diff --git a/webkit/common/webpreferences.cc b/webkit/common/webpreferences.cc new file mode 100644 index 0000000..9bf7e3e --- /dev/null +++ b/webkit/common/webpreferences.cc @@ -0,0 +1,171 @@ +// Copyright 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "webkit/common/webpreferences.h" + +#include "base/basictypes.h" +#include "base/string_util.h" +#include "base/utf_string_conversions.h" +#include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h" +#include "third_party/WebKit/Source/WebKit/chromium/public/WebSettings.h" +#include "third_party/icu/public/common/unicode/uchar.h" +#include "webkit/glue/webkit_glue.h" + +using WebKit::WebSettings; + +WebPreferences::WebPreferences() + : default_font_size(16), + default_fixed_font_size(13), + minimum_font_size(0), + minimum_logical_font_size(6), + default_encoding("ISO-8859-1"), + javascript_enabled(true), + web_security_enabled(true), + javascript_can_open_windows_automatically(true), + loads_images_automatically(true), + images_enabled(true), + plugins_enabled(true), + dom_paste_enabled(false), // enables execCommand("paste") + site_specific_quirks_enabled(false), + shrinks_standalone_images_to_fit(true), + uses_universal_detector(false), // Disabled: page cycler regression + text_areas_are_resizable(true), + java_enabled(true), + allow_scripts_to_close_windows(false), + remote_fonts_enabled(true), + javascript_can_access_clipboard(false), + xss_auditor_enabled(true), + dns_prefetching_enabled(true), + local_storage_enabled(false), + databases_enabled(false), + application_cache_enabled(false), + tabs_to_links(true), + caret_browsing_enabled(false), + hyperlink_auditing_enabled(true), + is_online(true), + user_style_sheet_enabled(false), + author_and_user_styles_enabled(true), + allow_universal_access_from_file_urls(false), + allow_file_access_from_file_urls(false), + webaudio_enabled(false), + experimental_webgl_enabled(false), + flash_3d_enabled(true), + flash_stage3d_enabled(false), + flash_stage3d_baseline_enabled(false), + gl_multisampling_enabled(true), + privileged_webgl_extensions_enabled(false), + webgl_errors_to_console_enabled(true), + accelerated_compositing_for_overflow_scroll_enabled(false), + accelerated_compositing_for_scrollable_frames_enabled(false), + composited_scrolling_for_frames_enabled(false), + mock_scrollbars_enabled(false), + threaded_html_parser(true), + show_paint_rects(false), + asynchronous_spell_checking_enabled(true), + unified_textchecker_enabled(false), + accelerated_compositing_enabled(false), + force_compositing_mode(false), + accelerated_compositing_for_3d_transforms_enabled(false), + accelerated_compositing_for_animation_enabled(false), + accelerated_compositing_for_video_enabled(false), + accelerated_2d_canvas_enabled(false), + minimum_accelerated_2d_canvas_size(257 * 256), + antialiased_2d_canvas_disabled(false), + accelerated_filters_enabled(false), + gesture_tap_highlight_enabled(false), + accelerated_compositing_for_plugins_enabled(false), + memory_info_enabled(false), + fullscreen_enabled(false), + allow_displaying_insecure_content(true), + allow_running_insecure_content(false), + password_echo_enabled(false), + should_print_backgrounds(false), + enable_scroll_animator(false), + visual_word_movement_enabled(false), + css_sticky_position_enabled(false), + css_shaders_enabled(false), + css_grid_layout_enabled(false), + lazy_layout_enabled(false), + touch_enabled(false), + device_supports_touch(false), + device_supports_mouse(true), + touch_adjustment_enabled(true), + fixed_position_creates_stacking_context(false), + sync_xhr_in_documents_enabled(true), + deferred_image_decoding_enabled(false), + should_respect_image_orientation(false), + number_of_cpu_cores(1), +#if defined(OS_MACOSX) + editing_behavior(webkit_glue::EDITING_BEHAVIOR_MAC), +#elif defined(OS_WIN) + editing_behavior(webkit_glue::EDITING_BEHAVIOR_WIN), +#elif defined(OS_ANDROID) + editing_behavior(webkit_glue::EDITING_BEHAVIOR_ANDROID), +#elif defined(OS_POSIX) + editing_behavior(webkit_glue::EDITING_BEHAVIOR_UNIX), +#else + editing_behavior(webkit_glue::EDITING_BEHAVIOR_MAC), +#endif + supports_multiple_windows(true), + viewport_enabled(false), + initialize_at_minimum_page_scale(true), +#if defined(OS_MACOSX) + smart_insert_delete_enabled(true), +#else + smart_insert_delete_enabled(false), +#endif + spatial_navigation_enabled(false), + experimental_websocket_enabled(false), + pinch_virtual_viewport_enabled(false), + cookie_enabled(true) +#if defined(OS_ANDROID) + , + text_autosizing_enabled(true), + font_scale_factor(1.0f), + force_enable_zoom(false), + double_tap_to_zoom_enabled(true), + user_gesture_required_for_media_playback(true), + support_deprecated_target_density_dpi(false), + use_wide_viewport(true) +#endif +{ + standard_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Times New Roman"); + fixed_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Courier New"); + serif_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Times New Roman"); + sans_serif_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Arial"); + cursive_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Script"); + fantasy_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Impact"); + pictograph_font_family_map[webkit_glue::kCommonScript] = + ASCIIToUTF16("Times New Roman"); +} + +WebPreferences::~WebPreferences() { +} + +namespace webkit_glue { + +// "Zyyy" is the ISO 15924 script code for undetermined script aka Common. +const char kCommonScript[] = "Zyyy"; + +#define COMPILE_ASSERT_MATCHING_ENUMS(webkit_glue_name, webkit_name) \ + COMPILE_ASSERT( \ + static_cast<int>(webkit_glue_name) == static_cast<int>(webkit_name), \ + mismatching_enums) + +COMPILE_ASSERT_MATCHING_ENUMS( + webkit_glue::EDITING_BEHAVIOR_MAC, WebSettings::EditingBehaviorMac); +COMPILE_ASSERT_MATCHING_ENUMS( + webkit_glue::EDITING_BEHAVIOR_WIN, WebSettings::EditingBehaviorWin); +COMPILE_ASSERT_MATCHING_ENUMS( + webkit_glue::EDITING_BEHAVIOR_UNIX, WebSettings::EditingBehaviorUnix); +COMPILE_ASSERT_MATCHING_ENUMS( + webkit_glue::EDITING_BEHAVIOR_ANDROID, WebSettings::EditingBehaviorAndroid); + +} // namespace webkit_glue diff --git a/webkit/glue/webpreferences.h b/webkit/common/webpreferences.h index 6064fc8..6dc0fb6 100644 --- a/webkit/glue/webpreferences.h +++ b/webkit/common/webpreferences.h @@ -1,4 +1,4 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // @@ -8,8 +8,8 @@ // WebKit::WebSettings, content/common/view_messages.h, browser/tab_contents/ // render_view_host_delegate_helper.cc, and browser/profiles/profile.cc. -#ifndef WEBKIT_GLUE_WEBPREFERENCES_H__ -#define WEBKIT_GLUE_WEBPREFERENCES_H__ +#ifndef WEBKIT_COMMON_WEBPREFERENCES_H__ +#define WEBKIT_COMMON_WEBPREFERENCES_H__ #include <map> #include <string> @@ -47,9 +47,6 @@ enum EditingBehavior { // specified. WEBKIT_GLUE_EXPORT extern const char kCommonScript[]; -WEBKIT_GLUE_EXPORT void ApplyWebPreferences(const WebPreferences& prefs, - WebKit::WebView* web_view); - } // namespace webkit_glue struct WEBKIT_GLUE_EXPORT WebPreferences { @@ -181,4 +178,4 @@ struct WEBKIT_GLUE_EXPORT WebPreferences { ~WebPreferences(); }; -#endif // WEBKIT_GLUE_WEBPREFERENCES_H__ +#endif // WEBKIT_COMMON_WEBPREFERENCES_H__ diff --git a/webkit/glue/webkit_glue.gypi b/webkit/glue/webkit_glue.gypi index aab0ebe..92f1b8c 100644 --- a/webkit/glue/webkit_glue.gypi +++ b/webkit/glue/webkit_glue.gypi @@ -88,6 +88,8 @@ 'weburlrequest_extradata_impl.h', 'weburlresponse_extradata_impl.cc', 'weburlresponse_extradata_impl.h', + '../common/webpreferences.cc', + '../common/webpreferences.h', ], 'conditions': [ @@ -128,8 +130,10 @@ 'WEBKIT_GLUE_IMPLEMENTATION', ], 'dependencies': [ - '<(DEPTH)/base/base.gyp:base_i18n', '<(DEPTH)/base/base.gyp:base', + '<(DEPTH)/base/base.gyp:base_i18n', + '<(DEPTH)/build/temp_gyp/googleurl.gyp:googleurl', + '<(DEPTH)/third_party/icu/icu.gyp:icuuc', '<(DEPTH)/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit', 'glue_common', ], @@ -144,6 +148,7 @@ '../renderer/cpp_bound_class.h', '../renderer/cpp_variant.cc', '../renderer/cpp_variant.h', + '../renderer/webpreferences_renderer.cc', ], }, @@ -241,8 +246,6 @@ 'webmenuitem.h', 'webmenurunner_mac.h', 'webmenurunner_mac.mm', - 'webpreferences.cc', - 'webpreferences.h', 'websocketstreamhandle_bridge.h', 'websocketstreamhandle_delegate.h', 'websocketstreamhandle_impl.cc', diff --git a/webkit/glue/webpreferences.cc b/webkit/renderer/webpreferences_renderer.cc index a8c16ed..2a311ac 100644 --- a/webkit/glue/webpreferences.cc +++ b/webkit/renderer/webpreferences_renderer.cc @@ -1,168 +1,33 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "webkit/glue/webpreferences.h" +#include "webkit/renderer/webpreferences_renderer.h" -#include "base/basictypes.h" -#include "base/string_util.h" #include "base/utf_string_conversions.h" -#include "third_party/WebKit/public/platform/WebSize.h" -#include "third_party/WebKit/public/platform/WebString.h" -#include "third_party/WebKit/public/platform/WebURL.h" +#include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebNetworkStateNotifier.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebRuntimeFeatures.h" -#include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebSettings.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" +#include "third_party/WebKit/public/platform/WebString.h" +#include "third_party/WebKit/public/platform/WebURL.h" #include "third_party/icu/public/common/unicode/uchar.h" -#include "webkit/glue/webkit_glue.h" +#include "third_party/icu/public/common/unicode/uscript.h" +#include "webkit/common/webpreferences.h" using WebKit::WebNetworkStateNotifier; using WebKit::WebRuntimeFeatures; using WebKit::WebSettings; -using WebKit::WebSize; using WebKit::WebString; using WebKit::WebURL; using WebKit::WebView; -WebPreferences::WebPreferences() - : default_font_size(16), - default_fixed_font_size(13), - minimum_font_size(0), - minimum_logical_font_size(6), - default_encoding("ISO-8859-1"), - javascript_enabled(true), - web_security_enabled(true), - javascript_can_open_windows_automatically(true), - loads_images_automatically(true), - images_enabled(true), - plugins_enabled(true), - dom_paste_enabled(false), // enables execCommand("paste") - site_specific_quirks_enabled(false), - shrinks_standalone_images_to_fit(true), - uses_universal_detector(false), // Disabled: page cycler regression - text_areas_are_resizable(true), - java_enabled(true), - allow_scripts_to_close_windows(false), - remote_fonts_enabled(true), - javascript_can_access_clipboard(false), - xss_auditor_enabled(true), - dns_prefetching_enabled(true), - local_storage_enabled(false), - databases_enabled(false), - application_cache_enabled(false), - tabs_to_links(true), - caret_browsing_enabled(false), - hyperlink_auditing_enabled(true), - is_online(true), - user_style_sheet_enabled(false), - author_and_user_styles_enabled(true), - allow_universal_access_from_file_urls(false), - allow_file_access_from_file_urls(false), - webaudio_enabled(false), - experimental_webgl_enabled(false), - flash_3d_enabled(true), - flash_stage3d_enabled(false), - flash_stage3d_baseline_enabled(false), - gl_multisampling_enabled(true), - privileged_webgl_extensions_enabled(false), - webgl_errors_to_console_enabled(true), - accelerated_compositing_for_overflow_scroll_enabled(false), - accelerated_compositing_for_scrollable_frames_enabled(false), - composited_scrolling_for_frames_enabled(false), - mock_scrollbars_enabled(false), - threaded_html_parser(true), - show_paint_rects(false), - asynchronous_spell_checking_enabled(true), - unified_textchecker_enabled(false), - accelerated_compositing_enabled(false), - force_compositing_mode(false), - accelerated_compositing_for_3d_transforms_enabled(false), - accelerated_compositing_for_animation_enabled(false), - accelerated_compositing_for_video_enabled(false), - accelerated_2d_canvas_enabled(false), - minimum_accelerated_2d_canvas_size(257 * 256), - antialiased_2d_canvas_disabled(false), - accelerated_filters_enabled(false), - gesture_tap_highlight_enabled(false), - accelerated_compositing_for_plugins_enabled(false), - memory_info_enabled(false), - fullscreen_enabled(false), - allow_displaying_insecure_content(true), - allow_running_insecure_content(false), - password_echo_enabled(false), - should_print_backgrounds(false), - enable_scroll_animator(false), - visual_word_movement_enabled(false), - css_sticky_position_enabled(false), - css_shaders_enabled(false), - css_grid_layout_enabled(false), - lazy_layout_enabled(false), - touch_enabled(false), - device_supports_touch(false), - device_supports_mouse(true), - touch_adjustment_enabled(true), - fixed_position_creates_stacking_context(false), - sync_xhr_in_documents_enabled(true), - deferred_image_decoding_enabled(false), - should_respect_image_orientation(false), - number_of_cpu_cores(1), -#if defined(OS_MACOSX) - editing_behavior(webkit_glue::EDITING_BEHAVIOR_MAC), -#elif defined(OS_WIN) - editing_behavior(webkit_glue::EDITING_BEHAVIOR_WIN), -#elif defined(OS_ANDROID) - editing_behavior(webkit_glue::EDITING_BEHAVIOR_ANDROID), -#elif defined(OS_POSIX) - editing_behavior(webkit_glue::EDITING_BEHAVIOR_UNIX), -#else - editing_behavior(webkit_glue::EDITING_BEHAVIOR_MAC), -#endif - supports_multiple_windows(true), - viewport_enabled(false), - initialize_at_minimum_page_scale(true), -#if defined(OS_MACOSX) - smart_insert_delete_enabled(true), -#else - smart_insert_delete_enabled(false), -#endif - spatial_navigation_enabled(false), - experimental_websocket_enabled(false), - pinch_virtual_viewport_enabled(false), - cookie_enabled(true) -#if defined(OS_ANDROID) - , - text_autosizing_enabled(true), - font_scale_factor(1.0f), - force_enable_zoom(false), - double_tap_to_zoom_enabled(true), - user_gesture_required_for_media_playback(true), - support_deprecated_target_density_dpi(false), - use_wide_viewport(true) -#endif -{ - standard_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Times New Roman"); - fixed_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Courier New"); - serif_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Times New Roman"); - sans_serif_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Arial"); - cursive_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Script"); - fantasy_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Impact"); - pictograph_font_family_map[webkit_glue::kCommonScript] = - ASCIIToUTF16("Times New Roman"); -} - -WebPreferences::~WebPreferences() { -} - namespace { +typedef void (*SetFontFamilyWrapper)( + WebKit::WebSettings*, const base::string16&, UScriptCode); + void setStandardFontFamilyWrapper(WebSettings* settings, const base::string16& font, UScriptCode script) { @@ -205,9 +70,6 @@ void setPictographFontFamilyWrapper(WebSettings* settings, settings->setPictographFontFamily(font, script); } -typedef void (*SetFontFamilyWrapper)( - WebKit::WebSettings*, const base::string16&, UScriptCode); - // If |scriptCode| is a member of a family of "similar" script codes, returns // the script code in that family that is used by WebKit for font selection // purposes. For example, USCRIPT_KATAKANA_OR_HIRAGANA and USCRIPT_JAPANESE are @@ -247,9 +109,6 @@ void ApplyFontsFromMap(const webkit_glue::ScriptFontFamilyMap& map, namespace webkit_glue { -// "Zyyy" is the ISO 15924 script code for undetermined script aka Common. -const char kCommonScript[] = "Zyyy"; - void ApplyWebPreferences(const WebPreferences& prefs, WebView* web_view) { WebSettings* settings = web_view->settings(); ApplyFontsFromMap(prefs.standard_font_family_map, @@ -483,18 +342,5 @@ void ApplyWebPreferences(const WebPreferences& prefs, WebView* web_view) { prefs.pinch_virtual_viewport_enabled); } -#define COMPILE_ASSERT_MATCHING_ENUMS(webkit_glue_name, webkit_name) \ - COMPILE_ASSERT( \ - static_cast<int>(webkit_glue_name) == static_cast<int>(webkit_name), \ - mismatching_enums) - -COMPILE_ASSERT_MATCHING_ENUMS( - webkit_glue::EDITING_BEHAVIOR_MAC, WebSettings::EditingBehaviorMac); -COMPILE_ASSERT_MATCHING_ENUMS( - webkit_glue::EDITING_BEHAVIOR_WIN, WebSettings::EditingBehaviorWin); -COMPILE_ASSERT_MATCHING_ENUMS( - webkit_glue::EDITING_BEHAVIOR_UNIX, WebSettings::EditingBehaviorUnix); -COMPILE_ASSERT_MATCHING_ENUMS( - webkit_glue::EDITING_BEHAVIOR_ANDROID, WebSettings::EditingBehaviorAndroid); } // namespace webkit_glue diff --git a/webkit/renderer/webpreferences_renderer.h b/webkit/renderer/webpreferences_renderer.h new file mode 100644 index 0000000..a6d714e --- /dev/null +++ b/webkit/renderer/webpreferences_renderer.h @@ -0,0 +1,23 @@ +// // Copyright 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef WEBKIT_RENDERER_WEBPREFERENCES_RENDERER_H_ +#define WEBKIT_RENDERER_WEBPREFERENCES_RENDERER_H_ + +#include "webkit/glue/webkit_glue_export.h" + +namespace WebKit { +class WebView; +} + +struct WebPreferences; + +namespace webkit_glue { + +WEBKIT_GLUE_EXPORT void ApplyWebPreferences(const WebPreferences& prefs, + WebKit::WebView* web_view); + +} // namespace webkit_glue + +#endif // WEBKIT_RENDERER_WEBPREFERENCES_RENDERER_H_ |