summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-10 08:01:23 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-10 08:01:23 +0000
commitafdbd149a0c64d20e560ff1b57158106d179a513 (patch)
tree66c5481d49e5b6f857b4c12b437e0c683fcc0e0a
parentd9ad4f82602c8fef9de36c6988e6fd7f2a3fdd2c (diff)
downloadchromium_src-afdbd149a0c64d20e560ff1b57158106d179a513.zip
chromium_src-afdbd149a0c64d20e560ff1b57158106d179a513.tar.gz
chromium_src-afdbd149a0c64d20e560ff1b57158106d179a513.tar.bz2
Chrome side of removing WebPlugin::supportsFind.
Review URL: http://codereview.chromium.org/2898005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52040 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/renderer/render_view.cc9
-rw-r--r--chrome/renderer/webplugin_delegate_pepper.cc10
-rw-r--r--chrome/renderer/webplugin_delegate_pepper.h3
-rw-r--r--webkit/glue/plugins/pepper_plugin_instance.cc8
-rw-r--r--webkit/glue/plugins/pepper_plugin_instance.h3
-rw-r--r--webkit/glue/plugins/pepper_webplugin_impl.cc10
-rw-r--r--webkit/glue/plugins/pepper_webplugin_impl.h6
-rw-r--r--webkit/glue/plugins/webplugin_delegate.h6
-rw-r--r--webkit/glue/plugins/webplugin_impl.cc12
-rw-r--r--webkit/glue/plugins/webplugin_impl.h6
10 files changed, 47 insertions, 26 deletions
diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc
index 7ec95a3..713eda8 100644
--- a/chrome/renderer/render_view.cc
+++ b/chrome/renderer/render_view.cc
@@ -3489,19 +3489,22 @@ void RenderView::OnFind(int request_id, const string16& search_text,
WebFrame* main_frame = webview()->mainFrame();
if (main_frame->document().isPluginDocument()) {
-#if defined(WEBPLUGIN_HAS_FIND_INTERFACE)
if (options.findNext) {
// Just navigate back/forward.
GetWebPluginFromPluginDocument()->selectFindResult(options.forward);
} else {
+#if defined(WEBPLUGIN_FIND_HAS_RETURN_TYPE)
+ if (GetWebPluginFromPluginDocument()->startFind(
+ search_text, options.matchCase, request_id)) {
+#else
if (GetWebPluginFromPluginDocument()->supportsFind()) {
GetWebPluginFromPluginDocument()->startFind(
search_text, options.matchCase, request_id);
+#endif
} else {
ReportNoFindInPageResults(request_id);
}
}
-#endif
return;
}
@@ -3614,9 +3617,7 @@ void RenderView::OnStopFinding(const ViewMsg_StopFinding_Params& params) {
WebDocument doc = view->mainFrame()->document();
if (doc.isPluginDocument()) {
-#if defined(WEBPLUGIN_HAS_FIND_INTERFACE)
GetWebPluginFromPluginDocument()->stopFind();
-#endif
return;
}
diff --git a/chrome/renderer/webplugin_delegate_pepper.cc b/chrome/renderer/webplugin_delegate_pepper.cc
index fa379bb..05e5762 100644
--- a/chrome/renderer/webplugin_delegate_pepper.cc
+++ b/chrome/renderer/webplugin_delegate_pepper.cc
@@ -321,12 +321,15 @@ WebPluginResourceClient* WebPluginDelegatePepper::CreateSeekableResourceClient(
return instance()->GetRangeRequest(range_request_id);
}
-void WebPluginDelegatePepper::StartFind(const string16& search_text,
+bool WebPluginDelegatePepper::StartFind(const string16& search_text,
bool case_sensitive,
int identifier) {
+ if (!GetFindExtensions())
+ return false;
find_identifier_ = identifier;
GetFindExtensions()->startFind(
instance()->npp(), UTF16ToUTF8(search_text).c_str(), case_sensitive);
+ return true;
}
void WebPluginDelegatePepper::SelectFindResult(bool forward) {
@@ -1361,11 +1364,6 @@ void WebPluginDelegatePepper::PrintEnd() {
#endif // defined(OS_LINUX)
}
-bool WebPluginDelegatePepper::SupportsFind() {
- return GetFindExtensions() != NULL;
-}
-
-
WebPluginDelegatePepper::WebPluginDelegatePepper(
const base::WeakPtr<RenderView>& render_view,
NPAPI::PluginInstance *instance)
diff --git a/chrome/renderer/webplugin_delegate_pepper.h b/chrome/renderer/webplugin_delegate_pepper.h
index f18f68a8..bba5743 100644
--- a/chrome/renderer/webplugin_delegate_pepper.h
+++ b/chrome/renderer/webplugin_delegate_pepper.h
@@ -80,8 +80,7 @@ class WebPluginDelegatePepper : public webkit_glue::WebPluginDelegate,
unsigned long resource_id, const GURL& url, int notify_id);
virtual webkit_glue::WebPluginResourceClient* CreateSeekableResourceClient(
unsigned long resource_id, int range_request_id);
- virtual bool SupportsFind();
- virtual void StartFind(const string16& search_text,
+ virtual bool StartFind(const string16& search_text,
bool case_sensitive,
int identifier);
virtual void SelectFindResult(bool forward);
diff --git a/webkit/glue/plugins/pepper_plugin_instance.cc b/webkit/glue/plugins/pepper_plugin_instance.cc
index 7238ae9..ca284c7 100644
--- a/webkit/glue/plugins/pepper_plugin_instance.cc
+++ b/webkit/glue/plugins/pepper_plugin_instance.cc
@@ -348,15 +348,11 @@ void PluginInstance::Zoom(float factor, bool text_only) {
// TODO: implement me
}
-bool PluginInstance::SupportsFind() {
- // TODO: implement me
- return false;
-}
-
-void PluginInstance::StartFind(const string16& search_text,
+bool PluginInstance::StartFind(const string16& search_text,
bool case_sensitive,
int identifier) {
find_identifier_ = identifier;
+ return false;
// TODO: implement me
}
diff --git a/webkit/glue/plugins/pepper_plugin_instance.h b/webkit/glue/plugins/pepper_plugin_instance.h
index f24fa05..0f836f0 100644
--- a/webkit/glue/plugins/pepper_plugin_instance.h
+++ b/webkit/glue/plugins/pepper_plugin_instance.h
@@ -101,8 +101,7 @@ class PluginInstance : public base::RefCounted<PluginInstance> {
string16 GetSelectedText(bool html);
void Zoom(float factor, bool text_only);
- bool SupportsFind();
- void StartFind(const string16& search_text,
+ bool StartFind(const string16& search_text,
bool case_sensitive,
int identifier);
void SelectFindResult(bool forward);
diff --git a/webkit/glue/plugins/pepper_webplugin_impl.cc b/webkit/glue/plugins/pepper_webplugin_impl.cc
index c2cae30..ec34683 100644
--- a/webkit/glue/plugins/pepper_webplugin_impl.cc
+++ b/webkit/glue/plugins/pepper_webplugin_impl.cc
@@ -161,8 +161,15 @@ void WebPluginImpl::setZoomFactor(float scale, bool text_only) {
instance_->Zoom(scale, text_only);
}
+#if defined(WEBPLUGIN_FIND_HAS_RETURN_TYPE)
+bool WebPluginImpl::startFind(const WebKit::WebString& search_text,
+ bool case_sensitive,
+ int identifier) {
+ return instance_->StartFind(search_text, case_sensitive, identifier);
+}
+#else
bool WebPluginImpl::supportsFind() {
- return instance_->SupportsFind();
+ return true;
}
void WebPluginImpl::startFind(const WebString& search_text,
@@ -170,6 +177,7 @@ void WebPluginImpl::startFind(const WebString& search_text,
int identifier) {
instance_->StartFind(search_text, case_sensitive, identifier);
}
+#endif
void WebPluginImpl::selectFindResult(bool forward) {
instance_->SelectFindResult(forward);
diff --git a/webkit/glue/plugins/pepper_webplugin_impl.h b/webkit/glue/plugins/pepper_webplugin_impl.h
index 0b1827d..e3b16b8 100644
--- a/webkit/glue/plugins/pepper_webplugin_impl.h
+++ b/webkit/glue/plugins/pepper_webplugin_impl.h
@@ -64,10 +64,16 @@ class WebPluginImpl : public WebKit::WebPlugin {
virtual WebKit::WebString selectionAsText() const;
virtual WebKit::WebString selectionAsMarkup() const;
virtual void setZoomFactor(float scale, bool text_only);
+#if defined(WEBPLUGIN_FIND_HAS_RETURN_TYPE)
+ virtual bool startFind(const WebKit::WebString& search_text,
+ bool case_sensitive,
+ int identifier);
+#else
virtual bool supportsFind();
virtual void startFind(const WebKit::WebString& search_text,
bool case_sensitive,
int identifier);
+#endif
virtual void selectFindResult(bool forward);
virtual void stopFind();
diff --git a/webkit/glue/plugins/webplugin_delegate.h b/webkit/glue/plugins/webplugin_delegate.h
index 3b04d24..901cdea 100644
--- a/webkit/glue/plugins/webplugin_delegate.h
+++ b/webkit/glue/plugins/webplugin_delegate.h
@@ -20,7 +20,6 @@
#include "webkit/glue/plugins/webplugin_file_delegate.h"
#include "webkit/glue/plugins/webplugin_print_delegate.h"
-
class FilePath;
class GURL;
struct NPObject;
@@ -142,10 +141,9 @@ class WebPluginDelegate : public WebPlugin2DDeviceDelegate,
unsigned long resource_id, int range_request_id) = 0;
// See WebPluginContainerImpl's description of the interface.
- virtual bool SupportsFind() { return false; }
- virtual void StartFind(const string16& search_text,
+ virtual bool StartFind(const string16& search_text,
bool case_sensitive,
- int identifier) {}
+ int identifier) { return false; }
virtual void SelectFindResult(bool forward) {}
virtual void StopFind() {}
virtual void NumberOfFindResultsChanged(int total, bool final_result) {}
diff --git a/webkit/glue/plugins/webplugin_impl.cc b/webkit/glue/plugins/webplugin_impl.cc
index d7ba1a4..8f45b97 100644
--- a/webkit/glue/plugins/webplugin_impl.cc
+++ b/webkit/glue/plugins/webplugin_impl.cc
@@ -449,8 +449,17 @@ void WebPluginImpl::setZoomFactor(float scale, bool text_only) {
delegate_->SetZoomFactor(scale, text_only);
}
+#if defined(WEBPLUGIN_FIND_HAS_RETURN_TYPE)
+bool WebPluginImpl::startFind(const WebKit::WebString& search_text,
+ bool case_sensitive,
+ int identifier) {
+ if (!delegate_)
+ return false;
+ return delegate_->StartFind(search_text, case_sensitive, identifier);
+}
+#else
bool WebPluginImpl::supportsFind() {
- return delegate_ && delegate_->SupportsFind();
+ return true;
}
void WebPluginImpl::startFind(const WebString& search_text,
@@ -459,6 +468,7 @@ void WebPluginImpl::startFind(const WebString& search_text,
if (delegate_)
delegate_->StartFind(search_text, case_sensitive, identifier);
}
+#endif
void WebPluginImpl::selectFindResult(bool forward) {
if (delegate_)
diff --git a/webkit/glue/plugins/webplugin_impl.h b/webkit/glue/plugins/webplugin_impl.h
index 033dcb3..aed2e08 100644
--- a/webkit/glue/plugins/webplugin_impl.h
+++ b/webkit/glue/plugins/webplugin_impl.h
@@ -97,10 +97,16 @@ class WebPluginImpl : public WebPlugin,
virtual WebKit::WebString selectionAsText() const;
virtual WebKit::WebString selectionAsMarkup() const;
virtual void setZoomFactor(float scale, bool text_only);
+#if defined(WEBPLUGIN_FIND_HAS_RETURN_TYPE)
+ virtual bool startFind(const WebKit::WebString& search_text,
+ bool case_sensitive,
+ int identifier);
+#else
virtual bool supportsFind();
virtual void startFind(const WebKit::WebString& search_text,
bool case_sensitive,
int identifier);
+#endif
virtual void selectFindResult(bool forward);
virtual void stopFind();