[gtk+] Allow active tab children to be styled
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] Allow active tab children to be styled
- Date: Thu, 26 Sep 2013 23:28:28 +0000 (UTC)
commit a2ed88b3eebfb99ebe8bd41ffa1ed7fa7d597f71
Author: Cosimo Cecchi <cosimoc gnome org>
Date: Mon Aug 5 11:17:08 2013 +0200
Allow active tab children to be styled
This allows one to style the children of an active
tab label from CSS.
https://bugzilla.gnome.org/show_bug.cgi?id=691163
gtk/gtknotebook.c | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtknotebook.c b/gtk/gtknotebook.c
index d1f629c..27880c4 100644
--- a/gtk/gtknotebook.c
+++ b/gtk/gtknotebook.c
@@ -4934,6 +4934,9 @@ gtk_notebook_real_remove (GtkNotebook *notebook,
if (priv->cur_page == list->data)
{
+ if (priv->cur_page->tab_label)
+ gtk_style_context_remove_class (gtk_widget_get_style_context (priv->cur_page->tab_label),
+ "active-page");
priv->cur_page = NULL;
if (next_list && !destroying)
gtk_notebook_switch_page (notebook, GTK_NOTEBOOK_PAGE (next_list));
@@ -6543,9 +6546,17 @@ gtk_notebook_real_switch_page (GtkNotebook *notebook,
child_has_focus = priv->child_has_focus;
if (priv->cur_page)
- gtk_widget_set_child_visible (priv->cur_page->child, FALSE);
+ {
+ gtk_widget_set_child_visible (priv->cur_page->child, FALSE);
+ if (priv->cur_page->tab_label)
+ gtk_style_context_remove_class (gtk_widget_get_style_context (priv->cur_page->tab_label),
+ "active-page");
+ }
priv->cur_page = page;
+ if (page->tab_label)
+ gtk_style_context_add_class (gtk_widget_get_style_context (page->tab_label),
+ "active-page");
if (!priv->focus_tab ||
priv->focus_tab->data != (gpointer) priv->cur_page)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]