summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk/gtk_scaffolding.c5
-rw-r--r--gtk/gtk_thumbnail.c2
-rw-r--r--gtk/gtk_window.c5
3 files changed, 12 insertions, 0 deletions
diff --git a/gtk/gtk_scaffolding.c b/gtk/gtk_scaffolding.c
index 358fb7206..192a178d6 100644
--- a/gtk/gtk_scaffolding.c
+++ b/gtk/gtk_scaffolding.c
@@ -1373,6 +1373,11 @@ gboolean nsgtk_history_expose_event(GtkWidget *widget,
plot = nsgtk_plotters;
nsgtk_plot_set_scale(1.0);
+ plot.clip(event->area.x,
+ event->area.y,
+ event->area.x + event->area.width,
+ event->area.y + event->area.height);
+
history_redraw(bw->history);
current_widget = NULL;
diff --git a/gtk/gtk_thumbnail.c b/gtk/gtk_thumbnail.c
index ec538da36..59727727c 100644
--- a/gtk/gtk_thumbnail.c
+++ b/gtk/gtk_thumbnail.c
@@ -100,6 +100,8 @@ bool thumbnail_create(hlcache_handle *content, struct bitmap *bitmap,
#endif
plot.rectangle(0, 0, cwidth, cwidth, plot_style_fill_white);
+ plot.clip(0, 0, content_get_width(content), content_get_width(content));
+
/* render the content */
content_redraw(content, 0, 0, content_get_width(content),
content_get_width(content),
diff --git a/gtk/gtk_window.c b/gtk/gtk_window.c
index d887f7027..3114b9505 100644
--- a/gtk/gtk_window.c
+++ b/gtk/gtk_window.c
@@ -408,6 +408,11 @@ gboolean nsgtk_window_expose_event(GtkWidget *widget,
nsgtk_plot_set_scale(g->bw->scale);
current_redraw_browser = g->bw;
+ plot.clip(event->area.x,
+ event->area.y,
+ event->area.x + event->area.width,
+ event->area.y + event->area.height);
+
content_redraw(c, 0, 0,
widget->allocation.width * scale,
widget->allocation.height * scale,