OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/renderer_host/render_widget_host_view_aura.h" | 5 #include "content/browser/renderer_host/render_widget_host_view_aura.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
389 cursor_visibility_state_in_renderer_(UNKNOWN), | 389 cursor_visibility_state_in_renderer_(UNKNOWN), |
390 #if defined(OS_WIN) | 390 #if defined(OS_WIN) |
391 legacy_render_widget_host_HWND_(nullptr), | 391 legacy_render_widget_host_HWND_(nullptr), |
392 legacy_window_destroyed_(false), | 392 legacy_window_destroyed_(false), |
393 virtual_keyboard_requested_(false), | 393 virtual_keyboard_requested_(false), |
394 #endif | 394 #endif |
395 has_snapped_to_boundary_(false), | 395 has_snapped_to_boundary_(false), |
396 is_guest_view_hack_(is_guest_view_hack), | 396 is_guest_view_hack_(is_guest_view_hack), |
397 device_scale_factor_(0.0f), | 397 device_scale_factor_(0.0f), |
398 event_handler_(new RenderWidgetHostViewEventHandler(host_, this, this)), | 398 event_handler_(new RenderWidgetHostViewEventHandler(host_, this, this)), |
| 399 frame_sink_id_(host_->AllocateFrameSinkId(is_guest_view_hack_)), |
399 weak_ptr_factory_(this) { | 400 weak_ptr_factory_(this) { |
400 if (!is_guest_view_hack_) | 401 if (!is_guest_view_hack_) |
401 host_->SetView(this); | 402 host_->SetView(this); |
402 | 403 |
403 // We should start observing the TextInputManager for IME-related events as | 404 // We should start observing the TextInputManager for IME-related events as |
404 // well as monitoring its lifetime. | 405 // well as monitoring its lifetime. |
405 if (GetTextInputManager()) | 406 if (GetTextInputManager()) |
406 GetTextInputManager()->AddObserver(this); | 407 GetTextInputManager()->AddObserver(this); |
407 | 408 |
408 bool overscroll_enabled = base::CommandLine::ForCurrentProcess()-> | 409 bool overscroll_enabled = base::CommandLine::ForCurrentProcess()-> |
(...skipping 1516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1925 aura::WindowPortMus::Get(window_)->Embed( | 1926 aura::WindowPortMus::Get(window_)->Embed( |
1926 std::move(window_tree_client), | 1927 std::move(window_tree_client), |
1927 ui::mojom::kEmbedFlagEmbedderInterceptsEvents, | 1928 ui::mojom::kEmbedFlagEmbedderInterceptsEvents, |
1928 base::Bind(&EmbedCallback)); | 1929 base::Bind(&EmbedCallback)); |
1929 } | 1930 } |
1930 | 1931 |
1931 void RenderWidgetHostViewAura::CreateDelegatedFrameHostClient() { | 1932 void RenderWidgetHostViewAura::CreateDelegatedFrameHostClient() { |
1932 if (IsMus()) | 1933 if (IsMus()) |
1933 return; | 1934 return; |
1934 | 1935 |
1935 cc::FrameSinkId frame_sink_id = | |
1936 host_->AllocateFrameSinkId(is_guest_view_hack_); | |
1937 | |
1938 // Tests may set |delegated_frame_host_client_|. | 1936 // Tests may set |delegated_frame_host_client_|. |
1939 if (!delegated_frame_host_client_) { | 1937 if (!delegated_frame_host_client_) { |
1940 delegated_frame_host_client_ = | 1938 delegated_frame_host_client_ = |
1941 base::MakeUnique<DelegatedFrameHostClientAura>(this); | 1939 base::MakeUnique<DelegatedFrameHostClientAura>(this); |
1942 } | 1940 } |
1943 delegated_frame_host_ = base::MakeUnique<DelegatedFrameHost>( | 1941 delegated_frame_host_ = base::MakeUnique<DelegatedFrameHost>( |
1944 frame_sink_id, delegated_frame_host_client_.get()); | 1942 frame_sink_id_, delegated_frame_host_client_.get()); |
1945 if (renderer_compositor_frame_sink_) { | 1943 if (renderer_compositor_frame_sink_) { |
1946 delegated_frame_host_->DidCreateNewRendererCompositorFrameSink( | 1944 delegated_frame_host_->DidCreateNewRendererCompositorFrameSink( |
1947 renderer_compositor_frame_sink_); | 1945 renderer_compositor_frame_sink_); |
1948 } | 1946 } |
1949 UpdateNeedsBeginFramesInternal(); | 1947 UpdateNeedsBeginFramesInternal(); |
1950 | 1948 |
1951 // Let the page-level input event router know about our surface ID | 1949 // Let the page-level input event router know about our surface ID |
1952 // namespace for surface-based hit testing. | 1950 // namespace for surface-based hit testing. |
1953 if (host_->delegate() && host_->delegate()->GetInputEventRouter()) { | 1951 if (host_->delegate() && host_->delegate()->GetInputEventRouter()) { |
1954 host_->delegate()->GetInputEventRouter()->AddFrameSinkIdOwner( | 1952 host_->delegate()->GetInputEventRouter()->AddFrameSinkIdOwner( |
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2275 tsc_config.enable_longpress_drag_selection = false; | 2273 tsc_config.enable_longpress_drag_selection = false; |
2276 selection_controller_.reset(new ui::TouchSelectionController( | 2274 selection_controller_.reset(new ui::TouchSelectionController( |
2277 selection_controller_client_.get(), tsc_config)); | 2275 selection_controller_client_.get(), tsc_config)); |
2278 } | 2276 } |
2279 | 2277 |
2280 void RenderWidgetHostViewAura::OnDidNavigateMainFrameToNewPage() { | 2278 void RenderWidgetHostViewAura::OnDidNavigateMainFrameToNewPage() { |
2281 ui::GestureRecognizer::Get()->CancelActiveTouches(window_); | 2279 ui::GestureRecognizer::Get()->CancelActiveTouches(window_); |
2282 } | 2280 } |
2283 | 2281 |
2284 cc::FrameSinkId RenderWidgetHostViewAura::GetFrameSinkId() { | 2282 cc::FrameSinkId RenderWidgetHostViewAura::GetFrameSinkId() { |
2285 return delegated_frame_host_ ? delegated_frame_host_->GetFrameSinkId() | 2283 return frame_sink_id_; |
2286 : cc::FrameSinkId(); | |
2287 } | 2284 } |
2288 | 2285 |
2289 cc::SurfaceId RenderWidgetHostViewAura::SurfaceIdForTesting() const { | 2286 cc::SurfaceId RenderWidgetHostViewAura::SurfaceIdForTesting() const { |
2290 return delegated_frame_host_ ? delegated_frame_host_->SurfaceIdForTesting() | 2287 return delegated_frame_host_ ? delegated_frame_host_->SurfaceIdForTesting() |
2291 : cc::SurfaceId(); | 2288 : cc::SurfaceId(); |
2292 } | 2289 } |
2293 | 2290 |
2294 void RenderWidgetHostViewAura::OnUpdateTextInputStateCalled( | 2291 void RenderWidgetHostViewAura::OnUpdateTextInputStateCalled( |
2295 TextInputManager* text_input_manager, | 2292 TextInputManager* text_input_manager, |
2296 RenderWidgetHostViewBase* updated_view, | 2293 RenderWidgetHostViewBase* updated_view, |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2377 } | 2374 } |
2378 | 2375 |
2379 void RenderWidgetHostViewAura::UpdateNeedsBeginFramesInternal() { | 2376 void RenderWidgetHostViewAura::UpdateNeedsBeginFramesInternal() { |
2380 if (!delegated_frame_host_) | 2377 if (!delegated_frame_host_) |
2381 return; | 2378 return; |
2382 delegated_frame_host_->SetNeedsBeginFrames(needs_begin_frames_ || | 2379 delegated_frame_host_->SetNeedsBeginFrames(needs_begin_frames_ || |
2383 needs_flush_input_); | 2380 needs_flush_input_); |
2384 } | 2381 } |
2385 | 2382 |
2386 } // namespace content | 2383 } // namespace content |
OLD | NEW |