[gtk+] gtk: gtk_cell_renderer_get_state(): a row can be both selected and insensitive
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] gtk: gtk_cell_renderer_get_state(): a row can be both selected and insensitive
- Date: Sun, 6 Feb 2011 13:46:27 +0000 (UTC)
commit 1c0f85a813b89327c01de568f16b1ffd598e0131
Author: Michael Natterer <mitch gimp org>
Date: Sun Feb 6 14:43:55 2011 +0100
gtk: gtk_cell_renderer_get_state(): a row can be both selected and insensitive
so pull the SELECTED state flag out of the !sensitive branch. Also,
don't make FOCUSED depend on SELECTED here, it's up to the widget to
decide whether or not that is possible.
gtk/gtkcellrenderer.c | 18 +++++++++---------
1 files changed, 9 insertions(+), 9 deletions(-)
---
diff --git a/gtk/gtkcellrenderer.c b/gtk/gtkcellrenderer.c
index 2ecdaf0..b0f7937 100644
--- a/gtk/gtkcellrenderer.c
+++ b/gtk/gtkcellrenderer.c
@@ -1703,21 +1703,21 @@ gtk_cell_renderer_get_state (GtkCellRenderer *cell,
if ((widget && !gtk_widget_get_sensitive (widget)) ||
(cell && !gtk_cell_renderer_get_sensitive (cell)) ||
(cell_state & GTK_CELL_RENDERER_INSENSITIVE) != 0)
- state |= GTK_STATE_FLAG_INSENSITIVE;
+ {
+ state |= GTK_STATE_FLAG_INSENSITIVE;
+ }
else
{
- if ((cell_state & GTK_CELL_RENDERER_SELECTED) != 0)
- {
- state |= GTK_STATE_FLAG_SELECTED;
-
- if ((widget && gtk_widget_has_focus (widget)) &&
- (cell_state & GTK_CELL_RENDERER_FOCUSED) != 0)
- state |= GTK_STATE_FLAG_FOCUSED;
- }
+ if ((widget && gtk_widget_has_focus (widget)) &&
+ (cell_state & GTK_CELL_RENDERER_FOCUSED) != 0)
+ state |= GTK_STATE_FLAG_FOCUSED;
if ((cell_state & GTK_CELL_RENDERER_PRELIT) != 0)
state |= GTK_STATE_FLAG_PRELIGHT;
}
+ if ((cell_state & GTK_CELL_RENDERER_SELECTED) != 0)
+ state |= GTK_STATE_FLAG_SELECTED;
+
return state;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]