a531633660
Run gtk-builder-tool simplify over all templates
2015-09-12 11:24:36 -04:00
3c247f20ea
gtk-builder-tool: Canonicalize booleans
...
Always write booleans as '0' or '1'.
2015-09-12 11:24:36 -04:00
4b92f0895a
builder: Minor tweak
2015-09-12 11:24:36 -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
610452dda8
cssnode: Move clear_classes() into the NodeDeclaration
...
The previous code was crashing when used as the returned classes array
would have been invalid after the first deletion. So if a 2nd class
would be deleted, invalid memory might have been referenced.
2015-09-12 05:27:35 +02:00
6118893a4e
stylecontext: Fix list_classes() after optimization
...
Otherwise a junk value is returned.
2015-09-11 09:48:38 -07:00
6d29c1db92
widgetpath: Remove bad function prototypes
2015-09-11 09:48:38 -07:00
f92c861eec
iconcache: Guard deprecated gdk-pixbuf APIs
2015-09-11 18:33:05 +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
44460cd720
container: Don't add classes twice
...
_gtk_widget_create_path() already adds the style classes.
2015-09-11 17:56:44 +02:00
4539804086
gtkplug.c: remove draw function, not needed
...
Background will be rendered by parent class - GtkWindow.
https://bugzilla.gnome.org/show_bug.cgi?id=754854
2015-09-11 17:56:44 +02:00
3ffef0ca03
HighContrast: make sidebar list rows taller
...
sync with Adwaita
https://bugzilla.gnome.org/show_bug.cgi?id=754866
2015-09-11 12:40:48 +02:00
4993b02da8
GtkFileSystem: Add to the list of remote filesystems
...
Add afp and google-drive to the list of remote filesystems.
https://bugzilla.gnome.org/show_bug.cgi?id=754746
2015-09-10 21:46:36 +01:00
a6982cc76e
GtkWidget: Fix typo in #ifdef
...
It's ENABLE, not ENABEL. Also fix the corresponding #endif comments.
2015-09-10 11:47:34 +02:00
3900700479
GtkContainer: Fix paramter name in doc comment
2015-09-10 11:34:44 +02:00
cf0e087527
Optimize gtk_css_node_declaration_has_class
...
This function is getting called a lot. Statistics for the gtk3-demo
listbox example show most calls with 0-4 classes. Unrolling the cases
a bit brings the instruction count in callgrind from 93M to 52M.
2015-09-09 14:40:36 -04:00
59797754b4
More bit manipulation speedups
...
The same trick that was applied to _gtk_css_change_for_child in
the previous commit can be applied to _gtk_css_change_for_sibling
as well, and that is what this commit does.
With both functions converted, gtk_css_change_translate is no
longer needed and gets dropped.
2015-09-09 14:09:21 -04:00
d7dd6eccd5
Manipulate bits more efficiently
...
The function to translate GtkCssChange enum values to the PARENT
ones is called very frequently. This patch speeds it up tremendously.
The callgrind instruction count for this function in the listbox
demo goes from 108M to 7M.
2015-09-09 14:02:27 -04:00
a9481cb410
match_all: Only allocate an array when needed
...
My statistics show that more than half of all calls end up
with 0 matches, so we can avoid some overhead by not allocating
an array at all in this case.
2015-09-09 11:17:13 -04:00
2d29ae4159
Handle match_all returning NULL
...
This is in preparation for not allocating an array at all if there
are no matches.
2015-09-09 11:17:13 -04:00
117b50f8fb
Optimize gtk_css_selector_match_all
...
We are dealing with really short lists here.
95% are < 10 matches, and the longest I've been able to record was 19.
So just do away with the hash table and do sorted insertion in
the array directly.
2015-09-09 11:17:13 -04:00
f7894a7588
Adwaita: special case selection mode lists checks
...
...otherwise the special selection mode 40x40px checks are used
shrinked to 16x16.
See https://bugzilla.gnome.org/show_bug.cgi?id=754610
2015-09-09 16:37:49 +02:00
9da0aa5d40
Use G_ENABLE_CONSISTENCY_CHECKS for template finalization checks
2015-09-09 06:32:47 -04:00
0e86278fcc
css selector: Use the quarks we have
...
Unless I'm missing something, there is no reason to go from
quarks back to strings to implement hasing or comparison.
2015-09-09 06:32:47 -04:00
c8072c89ba
style provider private: Use gtk_internal_return_if_fail
2015-09-09 06:32:47 -04:00
3526b08e01
Clean up debug features
...
Introduce a GTK_DEBUG_CHECK() macro and use it to check for
GTK_DEBUG flags everywhere. Also guard all such places by
2015-09-09 06:32:46 -04:00
1b15588732
widget: Use G_ENABLE_CONSISTENCY_CHECKS for invariants checking
...
The logic here is that G_ENABLE_DEBUG is for compiling out
debug spew that can be triggered at runtime with the GTK_DEBUG
environment variable, while G_ENABLE_CONSISTENCY_CHECKS is for
consistency checks that are applied unconditionally.
2015-09-09 06:32:46 -04:00
bf9a72976f
size request: Redo the recursion checks
...
Use G_ENABLE_CONSISTENCY checks for the recursion checks
in gtksizerequest.c
2015-09-09 06:32:46 -04:00
f4b53d4b0c
notebook: Drop use of G_DISABLE_CHECKS
...
Rewrite the one check that the G_DISABLE_CHECKS macro was used for
in terms of g_return_if_fail.
2015-09-09 06:32:46 -04:00
ff530ae321
Drop an unused warning
...
It has been ifzeroed for many, many years.
2015-09-09 06:32:46 -04:00
6f2fcce494
Use a getter for widget direction
2015-09-09 06:32:46 -04:00
b8e82a1548
settings: Reuse a value
...
We've already gotten the value type, use it.
2015-09-09 06:32:45 -04:00
96d66a11cf
builder: Avoid some type-checking overhead
2015-09-09 06:32:45 -04:00
50983101d4
Adwaita: set -GtkRange-trough-border: 0 for scrollbars
...
which fixes firefox scrollbar not being fittsy when maximixed.
2015-09-08 22:12:12 +02:00
eef64df5f2
HighContrast: remove edge highlight
...
https://bugzilla.gnome.org/show_bug.cgi?id=754551
2015-09-08 17:24:19 +02:00
f7c0fcd074
widget path: Use gtk_internal_return_if_fail
2015-09-08 08:07:34 -04:00
38e5a805dc
css style property: Use gtk_internal_return_if_fail
2015-09-08 08:07:34 -04:00
e7a266ad95
css color: Use gtk_internal_return_if_fail
2015-09-08 08:07:33 -04:00
9cd302407f
allocated bitmask: Use gtk_internal_return_if_fail
2015-09-08 08:07:33 -04:00
0368cbd256
window: Use internal more internal getters
2015-09-08 08:07:33 -04:00
2255400db1
Trivial cleanup
2015-09-08 08:07:33 -04:00
64573ea979
widget: Use g_param_spec_get_name_quark
2015-09-08 08:07:33 -04:00
0bee97de5c
stack: Convert to gtk_container_child_notify_by_pspec
2015-09-08 08:07:33 -04:00
838d5beff7
notebook: Convert to g_object_notify_by_pspec
2015-09-08 08:07:33 -04:00
2580c050d8
grid: Convert to gtk_container_child_notify_by_pspec
...
For the same reasons as g_object_child_notify_by_pspec.
2015-09-08 08:07:32 -04:00
1e4369e8ef
box: Convert to gtk_container_child_notify_by_pspec
...
For the same reasons as g_object_child_notify_by_pspec.
2015-09-08 08:07:32 -04:00
93f8f12e39
Add some more child property API
...
Add gtk_container_install_child_properties and
gtk_container_child_notify_by_pspec to mirror te corresponding
GObject APIs.
2015-09-08 08:07:32 -04:00
e3025f2325
scrolled window: Convert to g_object_notify_by_pspec
2015-09-08 08:07:32 -04:00
7cb53685cf
app chooser button: Convert to g_object_notify_by_pspec
2015-09-08 08:07:32 -04:00
4785f460d3
settings: Convert more fully to g_object_notify_by_pspec
...
It turns out that we always have the pspec at hand already.
2015-09-08 08:07:32 -04:00