| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "chrome/browser/renderer_host/render_widget_host_view_gtk.h" | 5 #include "chrome/browser/renderer_host/render_widget_host_view_gtk.h" |
| 6 | 6 |
| 7 // If this gets included after the gtk headers, then a bunch of compiler | 7 // If this gets included after the gtk headers, then a bunch of compiler |
| 8 // errors happen because of a "#define Status int" in Xlib.h, which interacts | 8 // errors happen because of a "#define Status int" in Xlib.h, which interacts |
| 9 // badly with URLRequestStatus::Status. | 9 // badly with URLRequestStatus::Status. |
| 10 #include "chrome/common/render_messages.h" | 10 #include "chrome/common/render_messages.h" |
| (...skipping 819 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 830 paint_rect = paint_rect.Intersect(invalid_rect_); | 830 paint_rect = paint_rect.Intersect(invalid_rect_); |
| 831 | 831 |
| 832 if (backing_store) { | 832 if (backing_store) { |
| 833 // Only render the widget if it is attached to a window; there's a short | 833 // Only render the widget if it is attached to a window; there's a short |
| 834 // period where this object isn't attached to a window but hasn't been | 834 // period where this object isn't attached to a window but hasn't been |
| 835 // Destroy()ed yet and it receives paint messages... | 835 // Destroy()ed yet and it receives paint messages... |
| 836 if (window) { | 836 if (window) { |
| 837 if (!visually_deemphasized_) { | 837 if (!visually_deemphasized_) { |
| 838 // In the common case, use XCopyArea. We don't draw more than once, so | 838 // In the common case, use XCopyArea. We don't draw more than once, so |
| 839 // we don't need to double buffer. | 839 // we don't need to double buffer. |
| 840 backing_store->XShowRect( | 840 backing_store->XShowRect(gfx::Point(0, 0), |
| 841 paint_rect, x11_util::GetX11WindowFromGtkWidget(view_.get())); | 841 paint_rect, x11_util::GetX11WindowFromGtkWidget(view_.get())); |
| 842 } else { | 842 } else { |
| 843 // If the grey blend is showing, we make two drawing calls. Use double | 843 // If the grey blend is showing, we make two drawing calls. Use double |
| 844 // buffering to prevent flicker. Use CairoShowRect because XShowRect | 844 // buffering to prevent flicker. Use CairoShowRect because XShowRect |
| 845 // shortcuts GDK's double buffering. We won't be able to draw outside | 845 // shortcuts GDK's double buffering. We won't be able to draw outside |
| 846 // of |damage_rect|, so invalidate the difference between |paint_rect| | 846 // of |damage_rect|, so invalidate the difference between |paint_rect| |
| 847 // and |damage_rect|. | 847 // and |damage_rect|. |
| 848 if (paint_rect != damage_rect) { | 848 if (paint_rect != damage_rect) { |
| 849 GdkRectangle extra_gdk_rect = | 849 GdkRectangle extra_gdk_rect = |
| 850 paint_rect.Subtract(damage_rect).ToGdkRectangle(); | 850 paint_rect.Subtract(damage_rect).ToGdkRectangle(); |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1063 } | 1063 } |
| 1064 | 1064 |
| 1065 // static | 1065 // static |
| 1066 RenderWidgetHostView* | 1066 RenderWidgetHostView* |
| 1067 RenderWidgetHostView::GetRenderWidgetHostViewFromNativeView( | 1067 RenderWidgetHostView::GetRenderWidgetHostViewFromNativeView( |
| 1068 gfx::NativeView widget) { | 1068 gfx::NativeView widget) { |
| 1069 gpointer user_data = g_object_get_data(G_OBJECT(widget), | 1069 gpointer user_data = g_object_get_data(G_OBJECT(widget), |
| 1070 kRenderWidgetHostViewKey); | 1070 kRenderWidgetHostViewKey); |
| 1071 return reinterpret_cast<RenderWidgetHostView*>(user_data); | 1071 return reinterpret_cast<RenderWidgetHostView*>(user_data); |
| 1072 } | 1072 } |
| OLD | NEW |