Commit 29d4527a authored by tedchoc@chromium.org's avatar tedchoc@chromium.org

[Android] Use the omnibox paste sanitizing code.

BUG=374176

Review URL: https://codereview.chromium.org/298523002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271533 0039d316-1c4b-4281-b951-d872f2087c98
parent 3c22078b
// Copyright 2014 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.
package org.chromium.chrome.browser.omnibox;
/**
* Utilities for the Omnibox view component.
*/
public class OmniboxViewUtil {
/**
* Sanitizing the given string to be safe to paste into the omnibox.
*
* @param clipboardString The string from the clipboard.
* @return The sanitized version of the string.
*/
public static String sanitizeTextForPaste(String clipboardString) {
return nativeSanitizeTextForPaste(clipboardString);
}
private static native String nativeSanitizeTextForPaste(String clipboardString);
}
...@@ -62,6 +62,7 @@ ...@@ -62,6 +62,7 @@
#include "chrome/browser/ui/android/infobars/translate_infobar.h" #include "chrome/browser/ui/android/infobars/translate_infobar.h"
#include "chrome/browser/ui/android/javascript_app_modal_dialog_android.h" #include "chrome/browser/ui/android/javascript_app_modal_dialog_android.h"
#include "chrome/browser/ui/android/navigation_popup.h" #include "chrome/browser/ui/android/navigation_popup.h"
#include "chrome/browser/ui/android/omnibox/omnibox_view_util.h"
#include "chrome/browser/ui/android/ssl_client_certificate_request.h" #include "chrome/browser/ui/android/ssl_client_certificate_request.h"
#include "chrome/browser/ui/android/tab_model/tab_model_base.h" #include "chrome/browser/ui/android/tab_model/tab_model_base.h"
#include "chrome/browser/ui/android/toolbar/toolbar_model_android.h" #include "chrome/browser/ui/android/toolbar/toolbar_model_android.h"
...@@ -144,6 +145,7 @@ static base::android::RegistrationMethod kChromeRegisteredMethods[] = { ...@@ -144,6 +145,7 @@ static base::android::RegistrationMethod kChromeRegisteredMethods[] = {
{ "NewTabPagePrefs", { "NewTabPagePrefs",
NewTabPagePrefs::RegisterNewTabPagePrefs }, NewTabPagePrefs::RegisterNewTabPagePrefs },
{ "OmniboxPrerender", RegisterOmniboxPrerender }, { "OmniboxPrerender", RegisterOmniboxPrerender },
{ "OmniboxViewUtil", OmniboxViewUtil::RegisterOmniboxViewUtil },
{ "PasswordAuthenticationManager", { "PasswordAuthenticationManager",
PasswordAuthenticationManager::RegisterPasswordAuthenticationManager }, PasswordAuthenticationManager::RegisterPasswordAuthenticationManager },
{ "PasswordUIViewAndroid", { "PasswordUIViewAndroid",
......
// Copyright 2014 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 "chrome/browser/ui/android/omnibox/omnibox_view_util.h"
#include "base/android/jni_string.h"
#include "chrome/browser/ui/omnibox/omnibox_view.h"
#include "jni/OmniboxViewUtil_jni.h"
// static
jstring SanitizeTextForPaste(JNIEnv* env, jclass clazz, jstring jtext) {
base::string16 pasted_text(
base::android::ConvertJavaStringToUTF16(env, jtext));
pasted_text = OmniboxView::SanitizeTextForPaste(pasted_text);
return base::android::ConvertUTF16ToJavaString(env, pasted_text).Release();
}
// static
bool OmniboxViewUtil::RegisterOmniboxViewUtil(JNIEnv* env) {
return RegisterNativesImpl(env);
}
// Copyright 2014 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 CHROME_BROWSER_UI_ANDROID_OMNIBOX_OMNIBOX_VIEW_UTIL_H_
#define CHROME_BROWSER_UI_ANDROID_OMNIBOX_OMNIBOX_VIEW_UTIL_H_
#include "base/android/jni_android.h"
#include "base/android/scoped_java_ref.h"
#include "base/macros.h"
// Helper functions for the Omnibox view on Android.
class OmniboxViewUtil {
public:
static bool RegisterOmniboxViewUtil(JNIEnv* env);
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(OmniboxViewUtil);
};
#endif // CHROME_BROWSER_UI_ANDROID_OMNIBOX_OMNIBOX_VIEW_UTIL_H_
...@@ -3606,8 +3606,9 @@ ...@@ -3606,8 +3606,9 @@
'android/java/src/org/chromium/chrome/browser/JavascriptAppModalDialog.java', 'android/java/src/org/chromium/chrome/browser/JavascriptAppModalDialog.java',
'android/java/src/org/chromium/chrome/browser/NavigationPopup.java', 'android/java/src/org/chromium/chrome/browser/NavigationPopup.java',
'android/java/src/org/chromium/chrome/browser/net/spdyproxy/DataReductionProxySettings.java', 'android/java/src/org/chromium/chrome/browser/net/spdyproxy/DataReductionProxySettings.java',
'android/java/src/org/chromium/chrome/browser/omnibox/AutocompleteController.java', 'android/java/src/org/chromium/chrome/browser/omnibox/AutocompleteController.java',
'android/java/src/org/chromium/chrome/browser/omnibox/OmniboxPrerender.java', 'android/java/src/org/chromium/chrome/browser/omnibox/OmniboxPrerender.java',
'android/java/src/org/chromium/chrome/browser/omnibox/OmniboxViewUtil.java',
'android/java/src/org/chromium/chrome/browser/password_manager/PasswordAuthenticationManager.java', 'android/java/src/org/chromium/chrome/browser/password_manager/PasswordAuthenticationManager.java',
'android/java/src/org/chromium/chrome/browser/PasswordUIView.java', 'android/java/src/org/chromium/chrome/browser/PasswordUIView.java',
'android/java/src/org/chromium/chrome/browser/profiles/MostVisitedSites.java', 'android/java/src/org/chromium/chrome/browser/profiles/MostVisitedSites.java',
......
...@@ -116,6 +116,8 @@ ...@@ -116,6 +116,8 @@
'browser/ui/android/login_prompt_android.cc', 'browser/ui/android/login_prompt_android.cc',
'browser/ui/android/navigation_popup.cc', 'browser/ui/android/navigation_popup.cc',
'browser/ui/android/navigation_popup.h', 'browser/ui/android/navigation_popup.h',
'browser/ui/android/omnibox/omnibox_view_util.cc',
'browser/ui/android/omnibox/omnibox_view_util.h',
'browser/ui/android/simple_message_box_android.cc', 'browser/ui/android/simple_message_box_android.cc',
'browser/ui/android/ssl_client_certificate_request.cc', 'browser/ui/android/ssl_client_certificate_request.cc',
'browser/ui/android/ssl_client_certificate_request.h', 'browser/ui/android/ssl_client_certificate_request.h',
...@@ -2908,6 +2910,7 @@ ...@@ -2908,6 +2910,7 @@
['exclude', '^browser/ui/autofill/.*credit_card_bubble.*'], ['exclude', '^browser/ui/autofill/.*credit_card_bubble.*'],
['exclude', '^browser/ui/content_settings/'], ['exclude', '^browser/ui/content_settings/'],
['exclude', '^browser/ui/omnibox/'], ['exclude', '^browser/ui/omnibox/'],
['include', '^browser/ui/omnibox/omnibox_view\\.(cc|h)$'],
['exclude', '^browser/ui/panels/'], ['exclude', '^browser/ui/panels/'],
['exclude', '^browser/ui/pdf/'], ['exclude', '^browser/ui/pdf/'],
['exclude', '^browser/ui/startup/'], ['exclude', '^browser/ui/startup/'],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment