diff options
Diffstat (limited to 'chromium/content/browser/renderer_host/render_widget_host_view_base.cc')
-rw-r--r-- | chromium/content/browser/renderer_host/render_widget_host_view_base.cc | 106 |
1 files changed, 61 insertions, 45 deletions
diff --git a/chromium/content/browser/renderer_host/render_widget_host_view_base.cc b/chromium/content/browser/renderer_host/render_widget_host_view_base.cc index 8347b6d57fa..d5f58e0aab7 100644 --- a/chromium/content/browser/renderer_host/render_widget_host_view_base.cc +++ b/chromium/content/browser/renderer_host/render_widget_host_view_base.cc @@ -10,7 +10,8 @@ #include "content/browser/renderer_host/input/synthetic_gesture_target_base.h" #include "content/browser/renderer_host/render_process_host_impl.h" #include "content/browser/renderer_host/render_widget_host_impl.h" -#include "content/port/browser/render_widget_host_view_frame_subscriber.h" +#include "content/common/content_switches_internal.h" +#include "content/public/browser/render_widget_host_view_frame_subscriber.h" #include "third_party/WebKit/public/platform/WebScreenInfo.h" #include "ui/gfx/display.h" #include "ui/gfx/screen.h" @@ -33,27 +34,8 @@ #include "ui/gfx/win/hwnd_util.h" #endif -#if defined(TOOLKIT_GTK) -#include <gdk/gdkx.h> -#include <gtk/gtk.h> - -#include "content/browser/renderer_host/gtk_window_utils.h" -#endif - namespace content { -// static -RenderWidgetHostViewPort* RenderWidgetHostViewPort::FromRWHV( - RenderWidgetHostView* rwhv) { - return static_cast<RenderWidgetHostViewPort*>(rwhv); -} - -// static -RenderWidgetHostViewPort* RenderWidgetHostViewPort::CreateViewForWidget( - RenderWidgetHost* widget) { - return FromRWHV(RenderWidgetHostView::CreateViewForWidget(widget)); -} - #if defined(OS_WIN) namespace { @@ -206,8 +188,7 @@ void RenderWidgetHostViewBase::MovePluginWindowsHelper( return; bool oop_plugins = - !CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess) && - !CommandLine::ForCurrentProcess()->HasSwitch(switches::kInProcessPlugins); + !CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess); HDWP defer_window_pos_info = ::BeginDeferWindowPos(static_cast<int>(moves.size())); @@ -292,7 +273,8 @@ void RenderWidgetHostViewBase::MovePluginWindowsHelper( // Note: System will own the hrgn after we call SetWindowRgn, // so we don't need to call DeleteObject(hrgn) - ::SetWindowRgn(window, hrgn, !move.clip_rect.IsEmpty()); + ::SetWindowRgn(window, hrgn, + !move.clip_rect.IsEmpty() && (flags & SWP_NOREDRAW) == 0); #if defined(USE_AURA) // When using the software compositor, if the clipping rectangle is empty @@ -385,11 +367,14 @@ const int kFlushInputRateInUs = 16666; RenderWidgetHostViewBase::RenderWidgetHostViewBase() : popup_type_(blink::WebPopupTypeNone), + background_opaque_(true), mouse_locked_(false), showing_context_menu_(false), selection_text_offset_(0), selection_range_(gfx::Range::InvalidRange()), current_device_scale_factor_(0), + current_display_rotation_(gfx::Display::ROTATE_0), + pinch_zoom_enabled_(content::IsPinchToZoomEnabled()), renderer_frame_number_(0) { } @@ -401,19 +386,19 @@ bool RenderWidgetHostViewBase::OnMessageReceived(const IPC::Message& msg){ return false; } -void RenderWidgetHostViewBase::SetBackground(const SkBitmap& background) { - background_ = background; +void RenderWidgetHostViewBase::SetBackgroundOpaque(bool opaque) { + background_opaque_ = opaque; } -const SkBitmap& RenderWidgetHostViewBase::GetBackground() { - return background_; +bool RenderWidgetHostViewBase::GetBackgroundOpaque() { + return background_opaque_; } gfx::Size RenderWidgetHostViewBase::GetPhysicalBackingSize() const { gfx::NativeView view = GetNativeView(); gfx::Display display = gfx::Screen::GetScreenFor(view)->GetDisplayNearestWindow(view); - return gfx::ToCeiledSize(gfx::ScaleSize(GetViewBounds().size(), + return gfx::ToCeiledSize(gfx::ScaleSize(GetRequestedRendererSize(), display.device_scale_factor())); } @@ -430,6 +415,15 @@ void RenderWidgetHostViewBase::SelectionChanged(const base::string16& text, selection_range_.set_end(range.end()); } +gfx::Size RenderWidgetHostViewBase::GetRequestedRendererSize() const { + return GetViewBounds().size(); +} + +ui::TextInputClient* RenderWidgetHostViewBase::GetTextInputClient() { + NOTREACHED(); + return NULL; +} + bool RenderWidgetHostViewBase::IsShowingContextMenu() const { return showing_context_menu_; } @@ -451,11 +445,6 @@ bool RenderWidgetHostViewBase::IsMouseLocked() { return mouse_locked_; } -void RenderWidgetHostViewBase::UnhandledWheelEvent( - const blink::WebMouseWheelEvent& event) { - // Most implementations don't need to do anything here. -} - InputEventAckState RenderWidgetHostViewBase::FilterInputEvent( const blink::WebInputEvent& input_event) { // By default, input events are simply forwarded to the renderer. @@ -477,8 +466,15 @@ void RenderWidgetHostViewBase::OnSetNeedsFlushInput() { &RenderWidgetHostViewBase::FlushInput); } -void RenderWidgetHostViewBase::GestureEventAck(int gesture_event_type, - InputEventAckState ack_result) {} +void RenderWidgetHostViewBase::WheelEventAck( + const blink::WebMouseWheelEvent& event, + InputEventAckState ack_result) { +} + +void RenderWidgetHostViewBase::GestureEventAck( + const blink::WebGestureEvent& event, + InputEventAckState ack_result) { +} void RenderWidgetHostViewBase::SetPopupType(blink::WebPopupType popup_type) { popup_type_ = popup_type; @@ -493,11 +489,25 @@ BrowserAccessibilityManager* return browser_accessibility_manager_.get(); } +void RenderWidgetHostViewBase::CreateBrowserAccessibilityManagerIfNeeded() { +} + void RenderWidgetHostViewBase::SetBrowserAccessibilityManager( BrowserAccessibilityManager* manager) { browser_accessibility_manager_.reset(manager); } +void RenderWidgetHostViewBase::OnAccessibilitySetFocus(int acc_obj_id) { +} + +void RenderWidgetHostViewBase::AccessibilityShowMenu(int acc_obj_id) { +} + +gfx::Point RenderWidgetHostViewBase::AccessibilityOriginInScreen( + const gfx::Rect& bounds) { + return bounds.origin(); +} + void RenderWidgetHostViewBase::UpdateScreenInfo(gfx::NativeView view) { RenderWidgetHostImpl* impl = NULL; if (GetRenderWidgetHost()) @@ -514,18 +524,17 @@ bool RenderWidgetHostViewBase::HasDisplayPropertyChanged(gfx::NativeView view) { gfx::Display display = gfx::Screen::GetScreenFor(view)->GetDisplayNearestWindow(view); if (current_display_area_ == display.work_area() && - current_device_scale_factor_ == display.device_scale_factor()) { + current_device_scale_factor_ == display.device_scale_factor() && + current_display_rotation_ == display.rotation()) { return false; } + current_display_area_ = display.work_area(); current_device_scale_factor_ = display.device_scale_factor(); + current_display_rotation_ = display.rotation(); return true; } -void RenderWidgetHostViewBase::ProcessAckedTouchEvent( - const TouchEventWithLatencyInfo& touch, InputEventAckState ack_result) { -} - scoped_ptr<SyntheticGestureTarget> RenderWidgetHostViewBase::CreateSyntheticGestureTarget() { RenderWidgetHostImpl* host = @@ -570,11 +579,6 @@ void RenderWidgetHostViewBase::EndFrameSubscription() { render_process_host->EndFrameSubscription(impl->GetRoutingID()); } -void RenderWidgetHostViewBase::OnOverscrolled( - gfx::Vector2dF accumulated_overscroll, - gfx::Vector2dF current_fling_velocity) { -} - uint32 RenderWidgetHostViewBase::RendererFrameNumber() { return renderer_frame_number_; } @@ -592,4 +596,16 @@ void RenderWidgetHostViewBase::FlushInput() { impl->FlushInput(); } +SkBitmap::Config RenderWidgetHostViewBase::PreferredReadbackFormat() { + return SkBitmap::kARGB_8888_Config; +} + +gfx::Size RenderWidgetHostViewBase::GetVisibleViewportSize() const { + return GetViewBounds().size(); +} + +void RenderWidgetHostViewBase::SetInsets(const gfx::Insets& insets) { + NOTIMPLEMENTED(); +} + } // namespace content |