summaryrefslogtreecommitdiff
path: root/gtk/gtkcssselector.c
diff options
context:
space:
mode:
authorCosimo Cecchi <cosimoc@gnome.org>2011-10-03 17:09:09 -0400
committerCosimo Cecchi <cosimoc@gnome.org>2011-10-04 11:47:47 -0400
commit1f2cfb5619f0d7b1838e54c58738bae766d74c0b (patch)
tree11244821b6739681f2e5c5e7a524ddc4833eeca2 /gtk/gtkcssselector.c
parent3a6996ea837f213beec32703897551587a6727a3 (diff)
downloadgtk+-1f2cfb5619f0d7b1838e54c58738bae766d74c0b.tar.gz
all: add an 'only-child' pseudo-class selector
Add an :only-child pseudo-class selector, which selects single children of a parent container. https://bugzilla.gnome.org/show_bug.cgi?id=660833
Diffstat (limited to 'gtk/gtkcssselector.c')
-rw-r--r--gtk/gtkcssselector.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gtk/gtkcssselector.c b/gtk/gtkcssselector.c
index d300d41baa..2abe0923a7 100644
--- a/gtk/gtkcssselector.c
+++ b/gtk/gtkcssselector.c
@@ -130,6 +130,7 @@ _gtk_css_selector_print (const GtkCssSelector *selector,
"nth-child(odd)",
"first-child",
"last-child",
+ "only-child",
"sorted"
};
guint i;
@@ -201,6 +202,8 @@ compute_region_flags_for_index (const GtkWidgetPath *path,
flags |= GTK_REGION_FIRST;
if (sibling_id + 1 == n_siblings)
flags |= GTK_REGION_LAST;
+ if (n_siblings == 1)
+ flags |= GTK_REGION_ONLY;
return flags;
}