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

Unified Diff: content/browser/frame_host/render_frame_host_impl.cc

Issue 2426503002: Make printing work better with OOPIF. (Closed)
Patch Set: Fix build, fix some tests Created 4 years, 2 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: content/browser/frame_host/render_frame_host_impl.cc
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index 03fcb62c44a2704ab860d574114257034d3150c5..261f71178fa16780630a1cce092acd07c6b88dc9 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -116,7 +116,7 @@
#include "content/browser/media/android/media_player_renderer.h"
#include "media/base/audio_renderer_sink.h"
#include "media/base/video_renderer_sink.h"
-#include "media/mojo/services/mojo_renderer_service.h" //nogncheck
+#include "media/mojo/services/mojo_renderer_service.h" // nogncheck
#endif
#if defined(OS_MACOSX)
@@ -124,9 +124,7 @@
#endif
#if defined(ENABLE_WEBVR)
-#include "base/command_line.h"
-#include "content/public/common/content_switches.h"
-#include "device/vr/vr_service_impl.h" // nogncheck
+#include "device/vr/vr_service_impl.h" // nogncheck
#endif
using base::TimeDelta;
@@ -299,6 +297,7 @@ RenderFrameHostImpl::RenderFrameHostImpl(SiteInstance* site_instance,
web_ui_type_(WebUI::kNoWebUI),
pending_web_ui_type_(WebUI::kNoWebUI),
should_reuse_web_ui_(false),
+ has_selection_(false),
last_navigation_lofi_state_(LOFI_UNSPECIFIED),
frame_host_binding_(this),
weak_ptr_factory_(this) {
@@ -384,9 +383,8 @@ RenderFrameHostImpl::~RenderFrameHostImpl() {
// the dtor has run. (It may also be null in tests.)
swapout_event_monitor_timeout_.reset();
- for (const auto& iter: visual_state_callbacks_) {
+ for (const auto& iter : visual_state_callbacks_)
iter.second.Run(false);
- }
if (render_widget_host_ &&
render_widget_host_->owned_by_render_frame_host()) {
@@ -708,6 +706,7 @@ bool RenderFrameHostImpl::OnMessageReceived(const IPC::Message &msg) {
OnDidChangeLoadProgress)
IPC_MESSAGE_HANDLER(FrameHostMsg_SerializeAsMHTMLResponse,
OnSerializeAsMHTMLResponse)
+ IPC_MESSAGE_HANDLER(FrameHostMsg_SelectionChanged, OnSelectionChanged)
#if defined(USE_EXTERNAL_POPUP_MENU)
IPC_MESSAGE_HANDLER(FrameHostMsg_ShowPopup, OnShowPopup)
IPC_MESSAGE_HANDLER(FrameHostMsg_HidePopup, OnHidePopup)
@@ -2130,6 +2129,13 @@ void RenderFrameHostImpl::OnSerializeAsMHTMLResponse(
renderer_main_thread_time);
}
+void RenderFrameHostImpl::OnSelectionChanged(const base::string16& text,
+ uint32_t offset,
+ const gfx::Range& range) {
+ has_selection_ = !text.empty();
+ GetRenderWidgetHost()->OnSelectionChanged(text, offset, range);
+}
+
#if defined(USE_EXTERNAL_POPUP_MENU)
void RenderFrameHostImpl::OnShowPopup(
const FrameHostMsg_ShowPopup_Params& params) {
@@ -2907,6 +2913,10 @@ void RenderFrameHostImpl::FilesSelectedInChooser(
Send(new FrameMsg_RunFileChooserResponse(routing_id_, files));
}
+bool RenderFrameHostImpl::HasSelection() {
+ return has_selection_;
+}
+
void RenderFrameHostImpl::GetInterfaceProvider(
shell::mojom::InterfaceProviderRequest interfaces) {
interface_registry_->Bind(std::move(interfaces));

Powered by Google App Engine
This is Rietveld 408576698