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

Unified Diff: views/widget/native_widget_gtk.cc

Issue 7024032: Wait showing html dialog until renderer finish painting after page is loaded. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 9 years, 6 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
« views/widget/native_widget_gtk.h ('K') | « views/widget/native_widget_gtk.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: views/widget/native_widget_gtk.cc
diff --git a/views/widget/native_widget_gtk.cc b/views/widget/native_widget_gtk.cc
index e5dd8b113c2a422f958580ee301f9c02be68963e..f9175e4c0c5f3d50398f0e9359d88bbd1b01f0ae 100644
--- a/views/widget/native_widget_gtk.cc
+++ b/views/widget/native_widget_gtk.cc
@@ -279,7 +279,6 @@ static GtkWidget* CreateDragIconWidget(GdkPixbuf* drag_image) {
// static
GtkWidget* NativeWidgetGtk::null_parent_ = NULL;
-bool NativeWidgetGtk::debug_paint_enabled_ = false;
////////////////////////////////////////////////////////////////////////////////
// NativeWidgetGtk, public:
@@ -507,7 +506,7 @@ void NativeWidgetGtk::ActiveWindowChanged(GdkWindow* active_window) {
}
////////////////////////////////////////////////////////////////////////////////
-// NativeWidgetGtk, Widget implementation:
+// NativeWidgetGtk implementation:
void NativeWidgetGtk::ClearNativeFocus() {
DCHECK(!child_);
@@ -550,9 +549,17 @@ bool NativeWidgetGtk::HandleKeyboardEvent(const KeyEvent& key) {
return handled;
}
+bool NativeWidgetGtk::SuppressFreezeUpdates() {
+ if (!painted_) {
+ painted_ = true;
+ return true;
+ }
+ return false;
+}
+
// static
void NativeWidgetGtk::EnableDebugPaint() {
- debug_paint_enabled_ = true;
+ gdk_window_set_debug_updates(true);
}
// static
@@ -1166,20 +1173,6 @@ gboolean NativeWidgetGtk::OnPaint(GtkWidget* widget, GdkEventExpose* event) {
}
}
- if (debug_paint_enabled_) {
- // Using cairo directly because using skia didn't have immediate effect.
- cairo_t* cr = gdk_cairo_create(event->window);
- gdk_cairo_region(cr, event->region);
- cairo_set_source_rgb(cr, 1, 0, 0); // red
- cairo_rectangle(cr,
- event->area.x, event->area.y,
- event->area.width, event->area.height);
- cairo_fill(cr);
- cairo_destroy(cr);
- // Make sure that users see the red flash.
- XSync(ui::GetXDisplay(), false /* don't discard events */);
- }
-
ui::ScopedRegion region(gdk_region_copy(event->region));
if (!gdk_region_empty(region.Get())) {
GdkRectangle clip_bounds;
« views/widget/native_widget_gtk.h ('K') | « views/widget/native_widget_gtk.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698