a3f1596069
Add some missing (nullable) annotations
...
https://bugzilla.gnome.org/show_bug.cgi?id=771826
2016-09-22 14:02:07 +02:00
3756d92367
Move private widget path functions away
...
We don't put private functions in public headers anymore.
https://bugzilla.gnome.org/show_bug.cgi?id=761339
2016-02-04 15:19:51 +01:00
c60cea3037
gtkwidgetpath: update gtk_widget_path_to_string
...
From gtk_widget_path_iter_set_object_name documentation:
"When set, the object name overrides the object type when matching CSS"
Update gtk_widget_path_to_string to match this behaviour.
2016-01-15 00:36:23 +02:00
101df329ae
API: Add gtk_widget_path_iter_set_object_name()
...
... and gtk_widget_path_iter_get_object_name(). This allows applications
that still use widget paths to use the new object names to get the
correct styling.
Mutter and webkit-gtk are examples here.
2015-10-27 01:44:50 +01:00
ee8eb91523
widget path: Don't leak sibling paths
2015-09-15 19:33:49 -04:00
2a6a841db1
widget path: No need for atomic refcounting
...
We are all in one thread, anyway.
2015-09-12 12:50:39 -04:00
c6a5a12922
widgetpath: Implement using GtkCssNodeDeclaration
...
This removes a bunch of code but more importantly allows providing the
declaration in CSS matchers.
2015-09-12 05:27:35 +02:00
41b386cd6a
cssnode: Optimize listing of classes
...
Avoid creating the GList of strings when the GQuarks
will just be determined again. Instead have
gtk_style_context_list_classes() do it specifically.
2015-09-11 18:26:11 +02:00
f7c0fcd074
widget path: Use gtk_internal_return_if_fail
2015-09-08 08:07:34 -04:00
b9919153b2
widget path: Fix compiler warnings
...
Fix warnings due to -Wdeclaration-after-statement and -Wshadow.
2015-06-02 09:08:16 -04:00
70f6faf0f1
Don't return G_TYPE_INVALID as a pointer
...
Use NULL for g_return_val_if_fail checks if the function returns
a pointer. Pointed out by clang.
2015-03-22 15:19:59 -04:00
36a2e7ca8e
css: Add a :checked pseudoclass
...
https://bugzilla.gnome.org/show_bug.cgi?id=733967
2014-08-16 16:34:14 +02:00
b276b6198f
widgetpath: Use CSS-like syntax in to_string()
...
Print pseudo-classes using ':' sign.
2014-08-13 16:51:16 +02:00
a0566770da
GtkWidgetPath: Don't forget to copy the state
...
gtk_widget_path_copy was not copying the state of each element.
This was showing in "GtkRadioButton:active GtkLabel" not matching
in stack switchers.
2014-07-21 20:35:59 -04:00
2df06d3490
GtkWidgetPath: Show states in the path string
...
This shows clearly that some widgets don't set the state on their
path currently.
2014-07-21 19:49:11 -04:00
09dd0ffcd0
API: Add gtk_widget_path_iter_set_state()
...
And the corresponding gtk_widget_path_iter_get_state().
2014-07-19 23:42:38 +02:00
93b3179042
widgetpath: Deprecate regions
...
This is a foolowup to d80bf0790d
2014-06-21 15:46:44 +02:00
7f6a964c47
Docs: Remove all entities and turn off sgml mode
...
With all element markup gone, it is time to turn off
sgml mode, and get rid of entities as well.
2014-02-09 17:58:07 -05:00
13998c55e7
docs: use proper quotations instead of '*'
2014-02-07 14:22:39 -05:00
63e887e165
docs: replace all <examples> with markdown headings
2014-02-04 16:58:54 -05:00
245c385ae7
Docs: Don't use note elements
...
In most cases, the text itself makes the message clear enough.
2014-02-02 01:22:14 -05:00
4c8bd8e7cf
docs: Identify examples that are C code
...
https://bugzilla.gnome.org/show_bug.cgi?id=723119
2014-01-29 12:45:49 -05:00
768bc44081
docs: use |[ ]| instead of <programlisting></programlisting>
...
https://bugzilla.gnome.org/show_bug.cgi?id=723119
2014-01-29 12:45:49 -05:00
e5317f0f9a
Improve struct packing in various places
2013-09-21 23:50:55 -04:00
f89d5c8280
Optimize gtk_widget_path_copy() by preallocating "elems" array
...
gtk_widget_path_copy() currently calls g_array_append_val() in a loop,
which is inefficient due to reallocating the array's memory. Calling
g_array_set_size() before entering the loop reduces the number of CPU
cycles used by roughly 30%.
Patch by John Lindgren,
https://bugzilla.gnome.org/show_bug.cgi?id=679978
2012-08-07 00:38:48 -04:00
9d0febc9a6
Change FSF Address
2012-02-27 17:06:11 +00:00
92e6444163
widgetpath: correctly print the siblings index
...
In gtk_widget_path_to_string() we were counting siblings from zero
instead of one, resulting in confusing output.
2011-11-23 11:22:30 -05:00
1f2cfb5619
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
2011-10-04 11:47:47 -04:00
e81426dbd6
Add sibling information to widget path string representations
2011-06-18 12:36:38 -04:00
bf0d8402f5
gtk: Use const instead G_CONST_RETURN
2011-06-10 13:07:54 +01:00
79de8e4d08
API: Add support for siblings to widget paths
2011-06-02 02:03:51 +02:00
b669efa1a3
docs: Fix typo
2011-06-02 02:03:51 +02:00
67fe600b2e
widgetpath: Factor out the element copy function
...
I'll need that function soon.
2011-06-02 02:03:51 +02:00
f0e5b57699
widgetpath: Use ref/unref in boxed function
...
This way we avoid lots of copying when using widget paths as properties.
Keeping this as a separate patch so bugs where people were modifying a
structure they shouldn't are easily visible.
2011-06-02 02:03:51 +02:00
03eb4c38c9
widgetpath: Make structure refcounted
...
I want to use widget paths in a way that make a lot more sense with a
refcounted structure. See the following patches.
2011-06-02 02:03:51 +02:00
abe63e8aa1
gtk: add "Since: 3.2" to gtk_widget_path_to_string()
2011-03-27 15:43:31 +02:00
8b4b3cf090
API: Add gtk_widget_path_to_string()
...
Dumps the widget path into a string representation. It tries to match the CSS
style as closely as possible (Note that there might be paths that cannot be
represented in CSS).
The main use of this code is for debugging purposes, so that you can
g_print() the path or dump it in a gdb session.
2011-03-27 01:47:17 +01:00
06f590456f
widgetpath: Sanitize pos argument for iters correctly
...
The comparison done was off by one and would have caused invalid
reads or writes.
2011-03-26 23:51:28 +01:00
a12dad75a2
Split out private style context api into a private header
2011-01-23 18:29:28 -05:00
3c8fc21e9b
[GI] Fixes of existing incorrect annotations
2011-01-20 13:56:06 +01:00
0b7496558d
Make GtkCssProvider deal with widget types not being in plain CamelCase
...
Fixes bug #Bug 639754, reported by Kjell Ahlstedt. gtkmm doesn't
use plain CamelCase for its widget type names, so in order to
distinguish widget type names from regions in the CSS parser,
the following checks are now done:
* if it contains an uppercase letter -> widget class (that should
also work for gtkmm)
* if it's a string compound by lowercase letters and '-' -> it's
a region, checks have been added in gtk_style_context_add_region()
and gtk_widget_path_iter_add_region() to ensure this.
2011-01-19 04:28:49 +01:00
b792a31995
widgetpath: allow GTypes non-derived from GTK_TYPE_WIDGET
...
This makes things like GtkCellRenderer or GtkNumerableIcon more easily
themeable.
https://bugzilla.gnome.org/show_bug.cgi?id=637169
2010-12-17 18:30:57 +01:00
2578f4f4c3
Trivial doc fixes
2010-12-04 15:39:47 +01:00
b2d338d370
GtkWidgetPath documentation tweaks
2010-12-04 15:39:27 +01:00
6d1cf76822
GtkWidgetPath: Make iter API deal with gints.
...
now gtk_widget_path_iter_* takes gints instead of guints, and also accept
numbers == -1 or > path_length for the path head.
2010-12-04 15:39:18 +01:00
5f88997297
GtkWidgetPath: Make gtk_widget_path_prepend_type() return nothing.
...
It's senseless to always return 0
2010-12-04 15:39:18 +01:00
e1819055b9
Copy GtkWidgetPaths correctly
...
The code was forgetting to copy class information.
2010-12-04 15:39:17 +01:00
770f050d8c
GtkWidgetPath: turn into a boxed type.
2010-12-04 15:38:24 +01:00
c9a3da5025
GtkStyleContext: s/set/add/ and s/unset/remove/ for classes/regions.
...
Several classes and regions may be set to GtkStyleContext, so rename
the functions to be more intuitive.
2010-12-04 15:38:24 +01:00
a79626b7fb
Add theming docs
...
Both API and file format is documented, there's still missing
a migration doc though.
2010-12-04 15:38:21 +01:00