| 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/renderer/render_widget.h" | 5 #include "content/renderer/render_widget.h" |
| 6 | 6 |
| 7 #include "base/auto_reset.h" | 7 #include "base/auto_reset.h" |
| 8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 void OnUpdateScreenRectsMessage(const gfx::Rect& view_screen_rect, | 262 void OnUpdateScreenRectsMessage(const gfx::Rect& view_screen_rect, |
| 263 const gfx::Rect& window_screen_rect); | 263 const gfx::Rect& window_screen_rect); |
| 264 void OnShowContextMenu(ContextMenuParams* params); | 264 void OnShowContextMenu(ContextMenuParams* params); |
| 265 gfx::Rect AdjustValidationMessageAnchor(const gfx::Rect& anchor); | 265 gfx::Rect AdjustValidationMessageAnchor(const gfx::Rect& anchor); |
| 266 | 266 |
| 267 private: | 267 private: |
| 268 void Reapply(); | 268 void Reapply(); |
| 269 void Apply(bool top_controls_shrink_blink_size, | 269 void Apply(bool top_controls_shrink_blink_size, |
| 270 float top_controls_height, | 270 float top_controls_height, |
| 271 gfx::Rect resizer_rect, | 271 gfx::Rect resizer_rect, |
| 272 bool is_fullscreen); | 272 bool is_fullscreen, |
| 273 blink::WebDisplayMode display_mode); |
| 273 | 274 |
| 274 RenderWidget* widget_; | 275 RenderWidget* widget_; |
| 275 | 276 |
| 276 // Parameters as passed by RenderWidget::EnableScreenMetricsEmulation. | 277 // Parameters as passed by RenderWidget::EnableScreenMetricsEmulation. |
| 277 WebDeviceEmulationParams params_; | 278 WebDeviceEmulationParams params_; |
| 278 | 279 |
| 279 // The computed scale and offset used to fit widget into browser window. | 280 // The computed scale and offset used to fit widget into browser window. |
| 280 float scale_; | 281 float scale_; |
| 281 gfx::Point offset_; | 282 gfx::Point offset_; |
| 282 | 283 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 300 scale_(1.f) { | 301 scale_(1.f) { |
| 301 original_size_ = widget_->size_; | 302 original_size_ = widget_->size_; |
| 302 original_physical_backing_size_ = widget_->physical_backing_size_; | 303 original_physical_backing_size_ = widget_->physical_backing_size_; |
| 303 original_visible_viewport_size_ = widget_->visible_viewport_size_; | 304 original_visible_viewport_size_ = widget_->visible_viewport_size_; |
| 304 original_screen_info_ = widget_->screen_info_; | 305 original_screen_info_ = widget_->screen_info_; |
| 305 original_view_screen_rect_ = widget_->view_screen_rect_; | 306 original_view_screen_rect_ = widget_->view_screen_rect_; |
| 306 original_window_screen_rect_ = widget_->window_screen_rect_; | 307 original_window_screen_rect_ = widget_->window_screen_rect_; |
| 307 Apply(widget_->top_controls_shrink_blink_size_, | 308 Apply(widget_->top_controls_shrink_blink_size_, |
| 308 widget_->top_controls_height_, | 309 widget_->top_controls_height_, |
| 309 widget_->resizer_rect_, | 310 widget_->resizer_rect_, |
| 310 widget_->is_fullscreen_); | 311 widget_->is_fullscreen_, |
| 312 widget_->display_mode_); |
| 311 } | 313 } |
| 312 | 314 |
| 313 RenderWidget::ScreenMetricsEmulator::~ScreenMetricsEmulator() { | 315 RenderWidget::ScreenMetricsEmulator::~ScreenMetricsEmulator() { |
| 314 widget_->screen_info_ = original_screen_info_; | 316 widget_->screen_info_ = original_screen_info_; |
| 315 | 317 |
| 316 widget_->SetDeviceScaleFactor(original_screen_info_.deviceScaleFactor); | 318 widget_->SetDeviceScaleFactor(original_screen_info_.deviceScaleFactor); |
| 317 widget_->SetScreenMetricsEmulationParameters(0.f, gfx::Point(), 1.f); | 319 widget_->SetScreenMetricsEmulationParameters(0.f, gfx::Point(), 1.f); |
| 318 widget_->view_screen_rect_ = original_view_screen_rect_; | 320 widget_->view_screen_rect_ = original_view_screen_rect_; |
| 319 widget_->window_screen_rect_ = original_window_screen_rect_; | 321 widget_->window_screen_rect_ = original_window_screen_rect_; |
| 320 widget_->Resize(original_size_, | 322 widget_->Resize(original_size_, |
| 321 original_physical_backing_size_, | 323 original_physical_backing_size_, |
| 322 widget_->top_controls_shrink_blink_size_, | 324 widget_->top_controls_shrink_blink_size_, |
| 323 widget_->top_controls_height_, | 325 widget_->top_controls_height_, |
| 324 original_visible_viewport_size_, | 326 original_visible_viewport_size_, |
| 325 widget_->resizer_rect_, | 327 widget_->resizer_rect_, |
| 326 widget_->is_fullscreen_, | 328 widget_->is_fullscreen_, |
| 329 widget_->display_mode_, |
| 327 NO_RESIZE_ACK); | 330 NO_RESIZE_ACK); |
| 328 } | 331 } |
| 329 | 332 |
| 330 void RenderWidget::ScreenMetricsEmulator::ChangeEmulationParams( | 333 void RenderWidget::ScreenMetricsEmulator::ChangeEmulationParams( |
| 331 const WebDeviceEmulationParams& params) { | 334 const WebDeviceEmulationParams& params) { |
| 332 params_ = params; | 335 params_ = params; |
| 333 Reapply(); | 336 Reapply(); |
| 334 } | 337 } |
| 335 | 338 |
| 336 void RenderWidget::ScreenMetricsEmulator::Reapply() { | 339 void RenderWidget::ScreenMetricsEmulator::Reapply() { |
| 337 Apply(widget_->top_controls_shrink_blink_size_, | 340 Apply(widget_->top_controls_shrink_blink_size_, |
| 338 widget_->top_controls_height_, | 341 widget_->top_controls_height_, |
| 339 widget_->resizer_rect_, | 342 widget_->resizer_rect_, |
| 340 widget_->is_fullscreen_); | 343 widget_->is_fullscreen_, |
| 344 widget_->display_mode_); |
| 341 } | 345 } |
| 342 | 346 |
| 343 void RenderWidget::ScreenMetricsEmulator::Apply( | 347 void RenderWidget::ScreenMetricsEmulator::Apply( |
| 344 bool top_controls_shrink_blink_size, | 348 bool top_controls_shrink_blink_size, |
| 345 float top_controls_height, | 349 float top_controls_height, |
| 346 gfx::Rect resizer_rect, | 350 gfx::Rect resizer_rect, |
| 347 bool is_fullscreen) { | 351 bool is_fullscreen, |
| 352 blink::WebDisplayMode display_mode) { |
| 348 applied_widget_rect_.set_size(gfx::Size(params_.viewSize)); | 353 applied_widget_rect_.set_size(gfx::Size(params_.viewSize)); |
| 349 if (!applied_widget_rect_.width()) | 354 if (!applied_widget_rect_.width()) |
| 350 applied_widget_rect_.set_width(original_size_.width()); | 355 applied_widget_rect_.set_width(original_size_.width()); |
| 351 if (!applied_widget_rect_.height()) | 356 if (!applied_widget_rect_.height()) |
| 352 applied_widget_rect_.set_height(original_size_.height()); | 357 applied_widget_rect_.set_height(original_size_.height()); |
| 353 | 358 |
| 354 if (params_.fitToView && !original_size_.IsEmpty()) { | 359 if (params_.fitToView && !original_size_.IsEmpty()) { |
| 355 int original_width = std::max(original_size_.width(), 1); | 360 int original_width = std::max(original_size_.width(), 1); |
| 356 int original_height = std::max(original_size_.height(), 1); | 361 int original_height = std::max(original_size_.height(), 1); |
| 357 float width_ratio = | 362 float width_ratio = |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 400 | 405 |
| 401 gfx::Size physical_backing_size = gfx::ToCeiledSize(gfx::ScaleSize( | 406 gfx::Size physical_backing_size = gfx::ToCeiledSize(gfx::ScaleSize( |
| 402 original_size_, original_screen_info_.deviceScaleFactor)); | 407 original_size_, original_screen_info_.deviceScaleFactor)); |
| 403 widget_->Resize(applied_widget_rect_.size(), | 408 widget_->Resize(applied_widget_rect_.size(), |
| 404 physical_backing_size, | 409 physical_backing_size, |
| 405 top_controls_shrink_blink_size, | 410 top_controls_shrink_blink_size, |
| 406 top_controls_height, | 411 top_controls_height, |
| 407 applied_widget_rect_.size(), | 412 applied_widget_rect_.size(), |
| 408 resizer_rect, | 413 resizer_rect, |
| 409 is_fullscreen, | 414 is_fullscreen, |
| 415 display_mode, |
| 410 NO_RESIZE_ACK); | 416 NO_RESIZE_ACK); |
| 411 } | 417 } |
| 412 | 418 |
| 413 void RenderWidget::ScreenMetricsEmulator::OnResizeMessage( | 419 void RenderWidget::ScreenMetricsEmulator::OnResizeMessage( |
| 414 const ViewMsg_Resize_Params& params) { | 420 const ViewMsg_Resize_Params& params) { |
| 415 bool need_ack = params.new_size != original_size_ && | 421 bool need_ack = params.new_size != original_size_ && |
| 416 !params.new_size.IsEmpty() && !params.physical_backing_size.IsEmpty(); | 422 !params.new_size.IsEmpty() && !params.physical_backing_size.IsEmpty(); |
| 417 original_size_ = params.new_size; | 423 original_size_ = params.new_size; |
| 418 original_physical_backing_size_ = params.physical_backing_size; | 424 original_physical_backing_size_ = params.physical_backing_size; |
| 419 original_screen_info_ = params.screen_info; | 425 original_screen_info_ = params.screen_info; |
| 420 original_visible_viewport_size_ = params.visible_viewport_size; | 426 original_visible_viewport_size_ = params.visible_viewport_size; |
| 421 Apply(params.top_controls_shrink_blink_size, | 427 Apply(params.top_controls_shrink_blink_size, |
| 422 params.top_controls_height, | 428 params.top_controls_height, |
| 423 params.resizer_rect, | 429 params.resizer_rect, |
| 424 params.is_fullscreen); | 430 params.is_fullscreen, |
| 431 params.display_mode); |
| 425 | 432 |
| 426 if (need_ack) { | 433 if (need_ack) { |
| 427 widget_->set_next_paint_is_resize_ack(); | 434 widget_->set_next_paint_is_resize_ack(); |
| 428 if (widget_->compositor_) | 435 if (widget_->compositor_) |
| 429 widget_->compositor_->SetNeedsRedrawRect(gfx::Rect(widget_->size_)); | 436 widget_->compositor_->SetNeedsRedrawRect(gfx::Rect(widget_->size_)); |
| 430 } | 437 } |
| 431 } | 438 } |
| 432 | 439 |
| 433 void RenderWidget::ScreenMetricsEmulator::OnUpdateScreenRectsMessage( | 440 void RenderWidget::ScreenMetricsEmulator::OnUpdateScreenRectsMessage( |
| 434 const gfx::Rect& view_screen_rect, | 441 const gfx::Rect& view_screen_rect, |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 469 opener_id_(MSG_ROUTING_NONE), | 476 opener_id_(MSG_ROUTING_NONE), |
| 470 init_complete_(false), | 477 init_complete_(false), |
| 471 top_controls_shrink_blink_size_(false), | 478 top_controls_shrink_blink_size_(false), |
| 472 top_controls_height_(0.f), | 479 top_controls_height_(0.f), |
| 473 next_paint_flags_(0), | 480 next_paint_flags_(0), |
| 474 auto_resize_mode_(false), | 481 auto_resize_mode_(false), |
| 475 need_update_rect_for_auto_resize_(false), | 482 need_update_rect_for_auto_resize_(false), |
| 476 did_show_(false), | 483 did_show_(false), |
| 477 is_hidden_(hidden), | 484 is_hidden_(hidden), |
| 478 never_visible_(never_visible), | 485 never_visible_(never_visible), |
| 479 is_fullscreen_(false), | 486 display_mode_(blink::WebDisplayModeUndefined), |
| 480 has_focus_(false), | 487 has_focus_(false), |
| 481 handling_input_event_(false), | 488 handling_input_event_(false), |
| 482 handling_ime_event_(false), | 489 handling_ime_event_(false), |
| 483 handling_event_type_(WebInputEvent::Undefined), | 490 handling_event_type_(WebInputEvent::Undefined), |
| 484 ignore_ack_for_mouse_move_from_debugger_(false), | 491 ignore_ack_for_mouse_move_from_debugger_(false), |
| 485 closing_(false), | 492 closing_(false), |
| 486 host_closing_(false), | 493 host_closing_(false), |
| 487 is_swapped_out_(swapped_out), | 494 is_swapped_out_(swapped_out), |
| 488 input_method_is_active_(false), | 495 input_method_is_active_(false), |
| 489 text_input_type_(ui::TEXT_INPUT_TYPE_NONE), | 496 text_input_type_(ui::TEXT_INPUT_TYPE_NONE), |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 771 return RenderThread::Get()->Send(message); | 778 return RenderThread::Get()->Send(message); |
| 772 } | 779 } |
| 773 | 780 |
| 774 void RenderWidget::Resize(const gfx::Size& new_size, | 781 void RenderWidget::Resize(const gfx::Size& new_size, |
| 775 const gfx::Size& physical_backing_size, | 782 const gfx::Size& physical_backing_size, |
| 776 bool top_controls_shrink_blink_size, | 783 bool top_controls_shrink_blink_size, |
| 777 float top_controls_height, | 784 float top_controls_height, |
| 778 const gfx::Size& visible_viewport_size, | 785 const gfx::Size& visible_viewport_size, |
| 779 const gfx::Rect& resizer_rect, | 786 const gfx::Rect& resizer_rect, |
| 780 bool is_fullscreen, | 787 bool is_fullscreen, |
| 788 blink::WebDisplayMode display_mode, |
| 781 ResizeAck resize_ack) { | 789 ResizeAck resize_ack) { |
| 782 if (resizing_mode_selector_->NeverUsesSynchronousResize()) { | 790 if (resizing_mode_selector_->NeverUsesSynchronousResize()) { |
| 783 // A resize ack shouldn't be requested if we have not ACK'd the previous | 791 // A resize ack shouldn't be requested if we have not ACK'd the previous |
| 784 // one. | 792 // one. |
| 785 DCHECK(resize_ack != SEND_RESIZE_ACK || !next_paint_is_resize_ack()); | 793 DCHECK(resize_ack != SEND_RESIZE_ACK || !next_paint_is_resize_ack()); |
| 786 DCHECK(resize_ack == SEND_RESIZE_ACK || resize_ack == NO_RESIZE_ACK); | 794 DCHECK(resize_ack == SEND_RESIZE_ACK || resize_ack == NO_RESIZE_ACK); |
| 787 } | 795 } |
| 788 | 796 |
| 789 // Ignore this during shutdown. | 797 // Ignore this during shutdown. |
| 790 if (!webwidget_) | 798 if (!webwidget_) |
| 791 return; | 799 return; |
| 792 | 800 |
| 793 if (compositor_) { | 801 if (compositor_) { |
| 794 compositor_->setViewportSize(new_size, physical_backing_size); | 802 compositor_->setViewportSize(new_size, physical_backing_size); |
| 795 } | 803 } |
| 796 | 804 |
| 797 physical_backing_size_ = physical_backing_size; | 805 physical_backing_size_ = physical_backing_size; |
| 798 top_controls_shrink_blink_size_ = top_controls_shrink_blink_size; | 806 top_controls_shrink_blink_size_ = top_controls_shrink_blink_size; |
| 799 top_controls_height_ = top_controls_height; | 807 top_controls_height_ = top_controls_height; |
| 800 visible_viewport_size_ = visible_viewport_size; | 808 visible_viewport_size_ = visible_viewport_size; |
| 801 resizer_rect_ = resizer_rect; | 809 resizer_rect_ = resizer_rect; |
| 802 | 810 |
| 803 // NOTE: We may have entered fullscreen mode without changing our size. | 811 // NOTE: We may have entered fullscreen mode without changing our size. |
| 804 bool fullscreen_change = is_fullscreen_ != is_fullscreen; | 812 bool will_be_fullscreen = is_fullscreen || |
| 813 (display_mode == blink::WebDisplayModeFullscreen); |
| 814 bool fullscreen_change = (will_be_fullscreen != this->is_fullscreen()); |
| 805 if (fullscreen_change) | 815 if (fullscreen_change) |
| 806 WillToggleFullscreen(); | 816 WillToggleFullscreen(); |
| 807 is_fullscreen_ = is_fullscreen; | 817 is_fullscreen_ = is_fullscreen; |
| 818 display_mode_ = display_mode; |
| 808 | 819 |
| 809 webwidget_->setTopControlsHeight(top_controls_height, | 820 webwidget_->setTopControlsHeight(top_controls_height, |
| 810 top_controls_shrink_blink_size_); | 821 top_controls_shrink_blink_size_); |
| 811 | 822 |
| 812 if (size_ != new_size) { | 823 if (size_ != new_size) { |
| 813 size_ = new_size; | 824 size_ = new_size; |
| 814 | 825 |
| 815 // When resizing, we want to wait to paint before ACK'ing the resize. This | 826 // When resizing, we want to wait to paint before ACK'ing the resize. This |
| 816 // ensures that we only resize as fast as we can paint. We only need to | 827 // ensures that we only resize as fast as we can paint. We only need to |
| 817 // send an ACK if we are resized to a non-empty rect. | 828 // send an ACK if we are resized to a non-empty rect. |
| (...skipping 26 matching lines...) Expand all Loading... |
| 844 | 855 |
| 845 void RenderWidget::SetWindowRectSynchronously( | 856 void RenderWidget::SetWindowRectSynchronously( |
| 846 const gfx::Rect& new_window_rect) { | 857 const gfx::Rect& new_window_rect) { |
| 847 Resize(new_window_rect.size(), | 858 Resize(new_window_rect.size(), |
| 848 new_window_rect.size(), | 859 new_window_rect.size(), |
| 849 top_controls_shrink_blink_size_, | 860 top_controls_shrink_blink_size_, |
| 850 top_controls_height_, | 861 top_controls_height_, |
| 851 new_window_rect.size(), | 862 new_window_rect.size(), |
| 852 gfx::Rect(), | 863 gfx::Rect(), |
| 853 is_fullscreen_, | 864 is_fullscreen_, |
| 865 display_mode_, |
| 854 NO_RESIZE_ACK); | 866 NO_RESIZE_ACK); |
| 855 view_screen_rect_ = new_window_rect; | 867 view_screen_rect_ = new_window_rect; |
| 856 window_screen_rect_ = new_window_rect; | 868 window_screen_rect_ = new_window_rect; |
| 857 if (!did_show_) | 869 if (!did_show_) |
| 858 initial_rect_ = new_window_rect; | 870 initial_rect_ = new_window_rect; |
| 859 } | 871 } |
| 860 | 872 |
| 861 void RenderWidget::OnClose() { | 873 void RenderWidget::OnClose() { |
| 862 if (closing_) | 874 if (closing_) |
| 863 return; | 875 return; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 903 | 915 |
| 904 screen_info_ = params.screen_info; | 916 screen_info_ = params.screen_info; |
| 905 SetDeviceScaleFactor(screen_info_.deviceScaleFactor); | 917 SetDeviceScaleFactor(screen_info_.deviceScaleFactor); |
| 906 Resize(params.new_size, | 918 Resize(params.new_size, |
| 907 params.physical_backing_size, | 919 params.physical_backing_size, |
| 908 params.top_controls_shrink_blink_size, | 920 params.top_controls_shrink_blink_size, |
| 909 params.top_controls_height, | 921 params.top_controls_height, |
| 910 params.visible_viewport_size, | 922 params.visible_viewport_size, |
| 911 params.resizer_rect, | 923 params.resizer_rect, |
| 912 params.is_fullscreen, | 924 params.is_fullscreen, |
| 925 params.display_mode, |
| 913 SEND_RESIZE_ACK); | 926 SEND_RESIZE_ACK); |
| 914 | 927 |
| 915 if (orientation_changed) | 928 if (orientation_changed) |
| 916 OnOrientationChange(); | 929 OnOrientationChange(); |
| 917 } | 930 } |
| 918 | 931 |
| 919 void RenderWidget::OnColorProfile(const std::vector<char>& color_profile) { | 932 void RenderWidget::OnColorProfile(const std::vector<char>& color_profile) { |
| 920 SetDeviceColorProfile(color_profile); | 933 SetDeviceColorProfile(color_profile); |
| 921 } | 934 } |
| 922 | 935 |
| (...skipping 901 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1824 if (is_hidden_) | 1837 if (is_hidden_) |
| 1825 RenderThreadImpl::current()->WidgetHidden(); | 1838 RenderThreadImpl::current()->WidgetHidden(); |
| 1826 else | 1839 else |
| 1827 RenderThreadImpl::current()->WidgetRestored(); | 1840 RenderThreadImpl::current()->WidgetRestored(); |
| 1828 } | 1841 } |
| 1829 | 1842 |
| 1830 void RenderWidget::WillToggleFullscreen() { | 1843 void RenderWidget::WillToggleFullscreen() { |
| 1831 if (!webwidget_) | 1844 if (!webwidget_) |
| 1832 return; | 1845 return; |
| 1833 | 1846 |
| 1834 if (is_fullscreen_) { | 1847 if (is_fullscreen()) { |
| 1835 webwidget_->willExitFullScreen(); | 1848 webwidget_->willExitFullScreen(); |
| 1836 } else { | 1849 } else { |
| 1837 webwidget_->willEnterFullScreen(); | 1850 webwidget_->willEnterFullScreen(); |
| 1838 } | 1851 } |
| 1839 } | 1852 } |
| 1840 | 1853 |
| 1841 void RenderWidget::DidToggleFullscreen() { | 1854 void RenderWidget::DidToggleFullscreen() { |
| 1842 if (!webwidget_) | 1855 if (!webwidget_) |
| 1843 return; | 1856 return; |
| 1844 | 1857 |
| 1845 if (is_fullscreen_) { | 1858 if (is_fullscreen()) { |
| 1846 webwidget_->didEnterFullScreen(); | 1859 webwidget_->didEnterFullScreen(); |
| 1847 } else { | 1860 } else { |
| 1848 webwidget_->didExitFullScreen(); | 1861 webwidget_->didExitFullScreen(); |
| 1849 } | 1862 } |
| 1850 } | 1863 } |
| 1851 | 1864 |
| 1852 bool RenderWidget::next_paint_is_resize_ack() const { | 1865 bool RenderWidget::next_paint_is_resize_ack() const { |
| 1853 return ViewHostMsg_UpdateRect_Flags::is_resize_ack(next_paint_flags_); | 1866 return ViewHostMsg_UpdateRect_Flags::is_resize_ack(next_paint_flags_); |
| 1854 } | 1867 } |
| 1855 | 1868 |
| (...skipping 561 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2417 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) { | 2430 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) { |
| 2418 video_hole_frames_.AddObserver(frame); | 2431 video_hole_frames_.AddObserver(frame); |
| 2419 } | 2432 } |
| 2420 | 2433 |
| 2421 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) { | 2434 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) { |
| 2422 video_hole_frames_.RemoveObserver(frame); | 2435 video_hole_frames_.RemoveObserver(frame); |
| 2423 } | 2436 } |
| 2424 #endif // defined(VIDEO_HOLE) | 2437 #endif // defined(VIDEO_HOLE) |
| 2425 | 2438 |
| 2426 } // namespace content | 2439 } // namespace content |
| OLD | NEW |