entry: Remove gtk_entry_is_drawable() checks when painting
This commit is contained in:
@ -3466,9 +3466,13 @@ gtk_entry_draw (GtkWidget *widget,
|
|||||||
|
|
||||||
if (gtk_cairo_should_draw_window (cr, entry->text_area))
|
if (gtk_cairo_should_draw_window (cr, entry->text_area))
|
||||||
{
|
{
|
||||||
gint width, height;
|
gint x, y, width, height;
|
||||||
|
|
||||||
|
cairo_save (cr);
|
||||||
|
|
||||||
gdk_drawable_get_size (entry->text_area, &width, &height);
|
gdk_drawable_get_size (entry->text_area, &width, &height);
|
||||||
|
gdk_window_get_position (entry->text_area, &x, &y);
|
||||||
|
cairo_translate (cr, x, y);
|
||||||
|
|
||||||
gtk_cairo_paint_flat_box (style, cr,
|
gtk_cairo_paint_flat_box (style, cr,
|
||||||
state, GTK_SHADOW_NONE,
|
state, GTK_SHADOW_NONE,
|
||||||
@ -3487,6 +3491,8 @@ gtk_entry_draw (GtkWidget *widget,
|
|||||||
gtk_widget_has_focus (widget) &&
|
gtk_widget_has_focus (widget) &&
|
||||||
entry->selection_bound == entry->current_pos && entry->cursor_visible)
|
entry->selection_bound == entry->current_pos && entry->cursor_visible)
|
||||||
gtk_entry_draw_cursor (GTK_ENTRY (widget), cr, CURSOR_STANDARD);
|
gtk_entry_draw_cursor (GTK_ENTRY (widget), cr, CURSOR_STANDARD);
|
||||||
|
|
||||||
|
cairo_restore (cr);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < MAX_ICONS; i++)
|
for (i = 0; i < MAX_ICONS; i++)
|
||||||
@ -3495,9 +3501,13 @@ gtk_entry_draw (GtkWidget *widget,
|
|||||||
|
|
||||||
if (icon_info != NULL && gtk_cairo_should_draw_window (cr, icon_info->window))
|
if (icon_info != NULL && gtk_cairo_should_draw_window (cr, icon_info->window))
|
||||||
{
|
{
|
||||||
gint width, height;
|
gint x, y, width, height;
|
||||||
|
|
||||||
|
cairo_save (cr);
|
||||||
|
|
||||||
gdk_drawable_get_size (icon_info->window, &width, &height);
|
gdk_drawable_get_size (icon_info->window, &width, &height);
|
||||||
|
gdk_window_get_position (icon_info->window, &x, &y);
|
||||||
|
cairo_translate (cr, x, y);
|
||||||
|
|
||||||
gtk_cairo_paint_flat_box (style, cr,
|
gtk_cairo_paint_flat_box (style, cr,
|
||||||
state, GTK_SHADOW_NONE,
|
state, GTK_SHADOW_NONE,
|
||||||
@ -3507,6 +3517,8 @@ gtk_entry_draw (GtkWidget *widget,
|
|||||||
gtk_entry_draw_progress (widget, cr, icon_info->window);
|
gtk_entry_draw_progress (widget, cr, icon_info->window);
|
||||||
draw_icon (widget, cr, i);
|
draw_icon (widget, cr, i);
|
||||||
|
|
||||||
|
cairo_restore (cr);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5584,13 +5596,6 @@ gtk_entry_draw_text (GtkEntry *entry,
|
|||||||
cairo_t *cr)
|
cairo_t *cr)
|
||||||
{
|
{
|
||||||
GtkWidget *widget = GTK_WIDGET (entry);
|
GtkWidget *widget = GTK_WIDGET (entry);
|
||||||
|
|
||||||
/* Nothing to display at all */
|
|
||||||
if (gtk_entry_get_display_mode (entry) == DISPLAY_BLANK)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (gtk_widget_is_drawable (widget))
|
|
||||||
{
|
|
||||||
GtkStateType state;
|
GtkStateType state;
|
||||||
GtkStyle *style;
|
GtkStyle *style;
|
||||||
GdkColor text_color, bar_text_color;
|
GdkColor text_color, bar_text_color;
|
||||||
@ -5598,6 +5603,11 @@ gtk_entry_draw_text (GtkEntry *entry,
|
|||||||
gint width, height;
|
gint width, height;
|
||||||
gint progress_x, progress_y, progress_width, progress_height;
|
gint progress_x, progress_y, progress_width, progress_height;
|
||||||
|
|
||||||
|
|
||||||
|
/* Nothing to display at all */
|
||||||
|
if (gtk_entry_get_display_mode (entry) == DISPLAY_BLANK)
|
||||||
|
return;
|
||||||
|
|
||||||
state = GTK_STATE_SELECTED;
|
state = GTK_STATE_SELECTED;
|
||||||
if (!gtk_widget_get_sensitive (widget))
|
if (!gtk_widget_get_sensitive (widget))
|
||||||
state = GTK_STATE_INSENSITIVE;
|
state = GTK_STATE_INSENSITIVE;
|
||||||
@ -5650,7 +5660,6 @@ gtk_entry_draw_text (GtkEntry *entry,
|
|||||||
cairo_restore (cr);
|
cairo_restore (cr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
draw_insertion_cursor (GtkEntry *entry,
|
draw_insertion_cursor (GtkEntry *entry,
|
||||||
@ -5681,9 +5690,6 @@ gtk_entry_draw_cursor (GtkEntry *entry,
|
|||||||
GtkWidget *widget = GTK_WIDGET (entry);
|
GtkWidget *widget = GTK_WIDGET (entry);
|
||||||
GdkKeymap *keymap = gdk_keymap_get_for_display (gtk_widget_get_display (GTK_WIDGET (entry)));
|
GdkKeymap *keymap = gdk_keymap_get_for_display (gtk_widget_get_display (GTK_WIDGET (entry)));
|
||||||
PangoDirection keymap_direction = gdk_keymap_get_direction (keymap);
|
PangoDirection keymap_direction = gdk_keymap_get_direction (keymap);
|
||||||
|
|
||||||
if (gtk_widget_is_drawable (widget))
|
|
||||||
{
|
|
||||||
GdkRectangle cursor_location;
|
GdkRectangle cursor_location;
|
||||||
gboolean split_cursor;
|
gboolean split_cursor;
|
||||||
PangoRectangle cursor_rect;
|
PangoRectangle cursor_rect;
|
||||||
@ -5794,7 +5800,6 @@ gtk_entry_draw_cursor (GtkEntry *entry,
|
|||||||
cairo_restore (cr);
|
cairo_restore (cr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gtk_entry_queue_draw (GtkEntry *entry)
|
gtk_entry_queue_draw (GtkEntry *entry)
|
||||||
|
|||||||
Reference in New Issue
Block a user