Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 9e0c4207e80039bff552964d85310cd9972ffedf..2c2b627d108e53b22de1cf29e9510a37fd3cd3f1 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -761,6 +761,25 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params, |
if (switches::IsTouchEditingEnabled()) |
webview()->settings()->setTouchEditingEnabled(true); |
+#if defined(OS_ANDROID) |
+ WebSettings::SelectionStrategyType selection_strategy_default = |
+ WebSettings::SelectionStrategyType::Direction; |
+#else |
+ WebSettings::SelectionStrategyType selection_strategy_default = |
+ WebSettings::SelectionStrategyType::Character; |
+#endif |
+ |
+ WebSettings::SelectionStrategyType selection_strategy = |
+ selection_strategy_default; |
+ const std::string selection_strategy_str = |
+ base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( |
+ switches::kTouchTextSelectionStrategy); |
+ if (selection_strategy_str == "character") |
+ selection_strategy = WebSettings::SelectionStrategyType::Character; |
+ else if (selection_strategy_str == "direction") |
+ selection_strategy = WebSettings::SelectionStrategyType::Direction; |
+ webview()->settings()->setSelectionStrategy(selection_strategy); |
+ |
if (!params.frame_name.empty()) |
webview()->mainFrame()->setName(params.frame_name); |