Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(112)

Unified Diff: third_party/WebKit/Source/web/WebLocalFrameImpl.cpp

Issue 2888203006: Move the logic to retrieve the WebPluginContainer to LocalFrame and Node. (Closed)
Patch Set: Rename & format. Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/web/WebLocalFrameImpl.cpp
diff --git a/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp b/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp
index d52034415f655c8f04992fd214c97c203ddecdbf..1066fd7d526479f336cad786ec7201f2f72c0bc9 100644
--- a/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp
+++ b/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp
@@ -246,30 +246,6 @@ static HeapVector<ScriptSourceCode> CreateSourcesVector(
return sources;
}
-WebPluginContainerBase* WebLocalFrameImpl::PluginContainerFromFrame(
- LocalFrame* frame) {
- if (!frame)
- return 0;
- if (!frame->GetDocument() || !frame->GetDocument()->IsPluginDocument())
- return 0;
- PluginDocument* plugin_document = ToPluginDocument(frame->GetDocument());
- return ToWebPluginContainerBase(plugin_document->GetPluginView());
-}
-
-WebPluginContainerBase* WebLocalFrameImpl::CurrentPluginContainer(
- LocalFrame* frame,
- Node* node) {
- WebPluginContainerBase* plugin_container = PluginContainerFromFrame(frame);
- if (plugin_container)
- return plugin_container;
-
- if (!node) {
- DCHECK(frame->GetDocument());
- node = frame->GetDocument()->FocusedElement();
- }
- return ToWebPluginContainerBase(WebNode::PluginContainerFromNode(node));
-}
-
// Simple class to override some of PrintContext behavior. Some of the methods
// made virtual so that they can be overridden by ChromePluginPrintContext.
class ChromePrintContext : public PrintContext {
@@ -1100,7 +1076,7 @@ void WebLocalFrameImpl::ReplaceMisspelledRange(const WebString& text) {
// If this caret selection has two or more markers, this function replace the
// range covered by the first marker with the specified word as Microsoft Word
// does.
- if (PluginContainerFromFrame(GetFrame()))
+ if (CurrentPluginContainer(GetFrame()))
return;
// TODO(editing-dev): The use of updateStyleAndLayoutIgnorePendingStylesheets
@@ -1122,8 +1098,7 @@ void WebLocalFrameImpl::RemoveSpellingMarkersUnderWords(
}
bool WebLocalFrameImpl::HasSelection() const {
- WebPluginContainerBase* plugin_container =
- PluginContainerFromFrame(GetFrame());
+ WebPluginContainerBase* plugin_container = CurrentPluginContainer(GetFrame());
if (plugin_container)
return plugin_container->Plugin()->HasSelection();
@@ -1149,8 +1124,7 @@ WebRange WebLocalFrameImpl::SelectionRange() const {
}
WebString WebLocalFrameImpl::SelectionAsText() const {
- WebPluginContainerBase* plugin_container =
- PluginContainerFromFrame(GetFrame());
+ WebPluginContainerBase* plugin_container = CurrentPluginContainer(GetFrame());
if (plugin_container)
return plugin_container->Plugin()->SelectionAsText();
@@ -1168,8 +1142,7 @@ WebString WebLocalFrameImpl::SelectionAsText() const {
}
WebString WebLocalFrameImpl::SelectionAsMarkup() const {
- WebPluginContainerBase* plugin_container =
- PluginContainerFromFrame(GetFrame());
+ WebPluginContainerBase* plugin_container = CurrentPluginContainer(GetFrame());
if (plugin_container)
return plugin_container->Plugin()->SelectionAsMarkup();
@@ -1381,8 +1354,7 @@ VisiblePosition WebLocalFrameImpl::VisiblePositionForViewportPoint(
}
WebPlugin* WebLocalFrameImpl::FocusedPluginIfInputMethodSupported() {
- WebPluginContainerBase* container =
- WebLocalFrameImpl::CurrentPluginContainer(GetFrame());
+ WebPluginContainerBase* container = CurrentPluginContainer(GetFrame());
if (container && container->SupportsInputMethod())
return container->Plugin();
return 0;
@@ -1395,7 +1367,7 @@ int WebLocalFrameImpl::PrintBegin(const WebPrintParams& print_params,
if (constrain_to_node.IsNull()) {
// If this is a plugin document, check if the plugin supports its own
// printing. If it does, we will delegate all printing to that.
- plugin_container = PluginContainerFromFrame(GetFrame());
+ plugin_container = CurrentPluginContainer(GetFrame());
} else {
// We only support printing plugin nodes for now.
plugin_container =
@@ -1441,7 +1413,7 @@ void WebLocalFrameImpl::PrintEnd() {
bool WebLocalFrameImpl::IsPrintScalingDisabledForPlugin(const WebNode& node) {
WebPluginContainerBase* plugin_container =
- node.IsNull() ? PluginContainerFromFrame(GetFrame())
+ node.IsNull() ? CurrentPluginContainer(GetFrame())
: ToWebPluginContainerBase(node.PluginContainer());
if (!plugin_container || !plugin_container->SupportsPaginatedPrint())
@@ -1454,7 +1426,7 @@ bool WebLocalFrameImpl::GetPrintPresetOptionsForPlugin(
const WebNode& node,
WebPrintPresetOptions* preset_options) {
WebPluginContainerBase* plugin_container =
- node.IsNull() ? PluginContainerFromFrame(GetFrame())
+ node.IsNull() ? CurrentPluginContainer(GetFrame())
: ToWebPluginContainerBase(node.PluginContainer());
if (!plugin_container || !plugin_container->SupportsPaginatedPrint())
@@ -1915,7 +1887,7 @@ void WebLocalFrameImpl::DidFail(const ResourceError& error,
WebHistoryCommitType web_commit_type =
static_cast<WebHistoryCommitType>(commit_type);
- if (WebPluginContainerBase* plugin = PluginContainerFromFrame(GetFrame()))
+ if (WebPluginContainerBase* plugin = CurrentPluginContainer(GetFrame()))
plugin->DidFailLoading(error);
if (was_provisional)
@@ -1928,7 +1900,7 @@ void WebLocalFrameImpl::DidFinish() {
if (!Client())
return;
- if (WebPluginContainerBase* plugin = PluginContainerFromFrame(GetFrame()))
+ if (WebPluginContainerBase* plugin = CurrentPluginContainer(GetFrame()))
plugin->DidFinishLoading();
Client()->DidFinishLoad();
@@ -2609,4 +2581,11 @@ void WebLocalFrameImpl::SetTextCheckClient(
text_check_client_ = text_check_client;
}
+WebPluginContainerBase* WebLocalFrameImpl::CurrentPluginContainer(
+ LocalFrame* frame,
+ Node* node) const {
dcheng 2017/05/19 09:07:02 From what I can tell, there are no callers that pa
slangley 2017/05/21 23:53:33 There is one caller that passes a Node - "WebLocal
+ DCHECK(frame);
+ return frame->GetWebPluginContainerBase(node);
+}
+
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698