summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>1999-02-16 04:29:00 +0000
committerOwen Taylor <otaylor@src.gnome.org>1999-02-16 04:29:00 +0000
commitfd2c0c5651ced62c6c235629ee0dcc9cb5d154f2 (patch)
tree2ddfacf5cbeeec1684bb3ba1d6ca56a6ab309d36 /gtk
parent3a5883b7e4a5a6a8d46bbc7ef277e711b6555b26 (diff)
downloadgtk+-fd2c0c5651ced62c6c235629ee0dcc9cb5d154f2.tar.gz
When setting styles, remove unecessary explicits draws and clears.
Fri Feb 12 15:47:20 1999 Owen Taylor <otaylor@redhat.com> * gtk/gtkcalender.c gtk/gtkentry.c gtk/gtkhandlebox.c gtk/gtknotebook.c gtk/gtktext.c gtk/gtkviewport.c gtk/gtkwidget.c: When setting styles, remove unecessary explicits draws and clears. * gtk/gtkrange.c: Ugly fix so the steps get the correct background.
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkcalendar.c2
-rw-r--r--gtk/gtkentry.c3
-rw-r--r--gtk/gtkhandlebox.c2
-rw-r--r--gtk/gtknotebook.c1
-rw-r--r--gtk/gtkpaned.h6
-rw-r--r--gtk/gtkrange.c15
-rw-r--r--gtk/gtktext.c3
-rw-r--r--gtk/gtkviewport.c5
-rw-r--r--gtk/gtkwidget.c6
-rw-r--r--gtk/gtkwindow.c25
10 files changed, 18 insertions, 50 deletions
diff --git a/gtk/gtkcalendar.c b/gtk/gtkcalendar.c
index cd7ef77350..f3d081b23a 100644
--- a/gtk/gtkcalendar.c
+++ b/gtk/gtkcalendar.c
@@ -2562,8 +2562,6 @@ gtk_calendar_set_background (GtkWidget *widget)
gdk_window_set_background (widget->window,
BACKGROUND_COLOR (widget));
}
- if (GTK_WIDGET_DRAWABLE (widget))
- gdk_window_clear (widget->window);
}
static void
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 9aca131566..3fb6244aae 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -2263,9 +2263,6 @@ gtk_entry_style_set (GtkWidget *widget,
gtk_entry_update_ic_attr (widget);
#endif
}
-
- if (GTK_WIDGET_DRAWABLE (widget))
- gtk_widget_queue_clear(widget);
}
static void
diff --git a/gtk/gtkhandlebox.c b/gtk/gtkhandlebox.c
index bb85e69ad0..79c9f717aa 100644
--- a/gtk/gtkhandlebox.c
+++ b/gtk/gtkhandlebox.c
@@ -445,8 +445,6 @@ gtk_handle_box_style_set (GtkWidget *widget,
widget->state);
gtk_style_set_background (widget->style, hb->bin_window, widget->state);
gtk_style_set_background (widget->style, hb->float_window, widget->state);
- if (GTK_WIDGET_DRAWABLE (widget))
- gdk_window_clear (widget->window);
}
}
diff --git a/gtk/gtknotebook.c b/gtk/gtknotebook.c
index b8d3cb75c9..51dce64c26 100644
--- a/gtk/gtknotebook.c
+++ b/gtk/gtknotebook.c
@@ -1396,7 +1396,6 @@ gtk_notebook_style_set (GtkWidget *widget,
gdk_window_clear (widget->window);
}
- gtk_widget_queue_draw (widget);
gtk_notebook_set_shape (GTK_NOTEBOOK(widget));
}
diff --git a/gtk/gtkpaned.h b/gtk/gtkpaned.h
index 9ed9054b49..ae8f8443cb 100644
--- a/gtk/gtkpaned.h
+++ b/gtk/gtkpaned.h
@@ -49,10 +49,12 @@ struct _GtkPaned
GdkWindow *handle;
GdkRectangle groove_rectangle;
GdkGC *xor_gc;
-
+
+ /*< public >*/
guint16 handle_size;
guint16 gutter_size;
-
+
+ /*< private >*/
gint child1_size;
gint last_allocation;
gint min_position;
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index f9dae95363..6b69ddcde3 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -1561,10 +1561,21 @@ gtk_range_style_set (GtkWidget *widget,
if (range->slider)
gtk_style_set_background (widget->style, range->slider, GTK_STATE_NORMAL);
+ /* The backgrounds of the step_forw and step_back never actually
+ * get drawn in draw calls, so we call gdk_window_clear() here
+ * so they get the correct colors. This is a hack. OWT.
+ */
+
if (range->step_forw)
- gtk_style_set_background (widget->style, range->step_forw, GTK_STATE_ACTIVE);
+ {
+ gtk_style_set_background (widget->style, range->step_forw, GTK_STATE_ACTIVE);
+ gdk_window_clear (range->step_forw);
+ }
if (range->step_back)
- gtk_style_set_background (widget->style, range->step_back, GTK_STATE_ACTIVE);
+ {
+ gtk_style_set_background (widget->style, range->step_back, GTK_STATE_ACTIVE);
+ gdk_window_clear (range->step_back);
+ }
}
}
diff --git a/gtk/gtktext.c b/gtk/gtktext.c
index b28a4405cc..c304326c35 100644
--- a/gtk/gtktext.c
+++ b/gtk/gtktext.c
@@ -1427,9 +1427,6 @@ gtk_text_style_set (GtkWidget *widget,
if (text->current_font)
text_font_unref (text->current_font);
text->current_font = get_text_font (widget->style->font);
-
- if (GTK_WIDGET_DRAWABLE (widget))
- gdk_window_clear (widget->window);
}
static void
diff --git a/gtk/gtkviewport.c b/gtk/gtkviewport.c
index 271e6dc39c..64845893cc 100644
--- a/gtk/gtkviewport.c
+++ b/gtk/gtkviewport.c
@@ -838,10 +838,5 @@ gtk_viewport_style_set (GtkWidget *widget,
gtk_style_set_background (widget->style, viewport->bin_window, GTK_STATE_NORMAL);
gtk_style_set_background (widget->style, widget->window, widget->state);
- if (GTK_WIDGET_DRAWABLE (widget))
- {
- gdk_window_clear (widget->window);
- gdk_window_clear (viewport->bin_window);
- }
}
}
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index ef1954241c..9c3a5a7cce 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -3456,11 +3456,7 @@ gtk_widget_style_set (GtkWidget *widget,
{
if (GTK_WIDGET_REALIZED (widget) &&
!GTK_WIDGET_NO_WINDOW (widget))
- {
- gtk_style_set_background (widget->style, widget->window, widget->state);
- if (GTK_WIDGET_DRAWABLE (widget))
- gdk_window_clear (widget->window);
- }
+ gtk_style_set_background (widget->style, widget->window, widget->state);
}
static void
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index d6edabca10..3ce41b5e97 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -103,8 +103,6 @@ static void gtk_window_paint (GtkWidget *widget,
GdkRectangle *area);
static gint gtk_window_expose (GtkWidget *widget,
GdkEventExpose *event);
-static void gtk_window_style_set (GtkWidget *widget,
- GtkStyle *previous_style);
static void gtk_window_unset_transient_for (GtkWindow *window);
static void gtk_window_transient_parent_realized (GtkWidget *parent,
GtkWidget *window);
@@ -196,7 +194,6 @@ gtk_window_class_init (GtkWindowClass *klass)
widget_class->focus_in_event = gtk_window_focus_in_event;
widget_class->focus_out_event = gtk_window_focus_out_event;
widget_class->client_event = gtk_window_client_event;
- widget_class->style_set = gtk_window_style_set;
widget_class->draw = gtk_window_draw;
widget_class->expose_event = gtk_window_expose;
@@ -1696,25 +1693,3 @@ gtk_window_draw (GtkWidget *widget,
if (GTK_WIDGET_CLASS (parent_class)->draw)
(* GTK_WIDGET_CLASS (parent_class)->draw) (widget, area);
}
-
-static void
-gtk_window_style_set (GtkWidget *widget,
- GtkStyle *previous_style)
-{
- GdkRectangle area;
-
- if (GTK_WIDGET_REALIZED (widget) &&
- !GTK_WIDGET_NO_WINDOW (widget))
- {
- gtk_style_set_background (widget->style, widget->window, widget->state);
-
- area.x = 0;
- area.y = 0;
- area.width = widget->allocation.width;
- area.height = widget->allocation.height;
- gtk_window_draw(widget, &area);
-
- if (GTK_WIDGET_DRAWABLE (widget))
- gdk_window_clear (widget->window);
- }
-}