Matthias Clasen
67fd975d77
Adwaita: Drop global pseudostate selectors
...
These cause massive style recomputation whenever the
window state changes.
2020-01-15 15:22:54 -05:00
Matthias Clasen
686dacf5be
Adwaita: drop backdrop
2020-01-15 15:22:54 -05:00
Matthias Clasen
fba444b945
Revert "main: debug spew"
...
This reverts commit deeda017d7ba487bc1b5b89665fc31887a90df4e.
2020-01-15 15:22:54 -05:00
Matthias Clasen
5f277ed013
main: debug spew
2020-01-15 15:22:54 -05:00
Matthias Clasen
b413662ae2
cssnode: debug spew
2020-01-15 14:04:21 -05:00
Matthias Clasen
02cd36afb7
testsuite: Don't print default styles
...
This somewhat defeats the point that we want
to verify the regulars styles, not some weird
initial conditions.
2020-01-15 14:03:51 -05:00
Matthias Clasen
04fa4b15fe
css: Mark the default style in debug dumps
...
This helps identifying unexpected situations,
since the default style should never be seen
in the wild.
2020-01-15 14:03:51 -05:00
Matthias Clasen
a8e9cc27d9
css: Don't got to the selector tree for change
...
The tree is optimized for mimizing the decisions, and
that prevents us from taking advantage of the more exact
superset matching that we can do now. So, instead do what
we used to do for verifiation: use the tree for finding the
superset matches, then just walk the rulesets to collect the
changes.
2020-01-15 14:03:51 -05:00
Matthias Clasen
305fbd2a5d
css: Avoid computing change too often
...
Most of the time when styles need to be recreated,
the name and classes of the css node haven't changed.
In this case, the change value will not either, since
we are computing change under the assumption that
name and classes are unchanged, so there is no need
to recompute the change.
2020-01-15 12:45:23 -05:00
Matthias Clasen
a7323ed190
Make the superset matcher more exact
...
When the superset matcher is built from a node matcher,
we can make the parent matcher be a superset matchers for
the corresponding node, with the same relevant parts.
This is more precise than the ANY matcher that we were
returning previously.
2020-01-15 12:44:18 -05:00
Matthias Clasen
b928bdf428
Allow printing css matchers
...
This can help in debugging css matching.
2020-01-15 11:24:10 -05:00
Matthias Clasen
75b88b4385
cssmatcher: Add a type enum
...
For now, this just replaces the is_any boolean
by a type field in the class, and does away with
the unused Superset struct.supserset matcher fixup
2020-01-15 11:24:10 -05:00
Matthias Clasen
e2bbf83f01
Add selector statistics to the debug output
2020-01-15 11:24:10 -05:00
Matthias Clasen
791a81f092
cssstyle: Try harder to skip initial values
...
Compare values against the computed value of their
properties initial value. This works for fine for
all expect the border-width properties, whose special
handling defeats this.
2020-01-15 11:24:10 -05:00
Matthias Clasen
7c02f7ff2f
testsuite: Update expected output for css style tests
...
These now include the change values.
2020-01-15 11:24:10 -05:00
Matthias Clasen
5c57f7b4fc
testsuite: Include change in css style tests
...
This will help debugging css change tracking.
2020-01-15 11:24:10 -05:00
Matthias Clasen
7321719e97
Add a way to dump css node change values
...
Add a GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE flag that
tells gtk_style_context_to_string to include the
change values of nodes in the output. This will
help debugging css change tracking.
2020-01-15 11:24:10 -05:00
Matthias Clasen
c57aba0ac5
inspector: Show change in the css node tree
...
This is useful for debugging why we update to damn much
css on enter/leave.
2020-01-15 11:24:10 -05:00
Matthias Clasen
7888033e28
Revert "wip: reimplement css matching from scratch"
...
This reverts commit 7047a2e9c6f32da068bbfef78c6a4bda2d7d39f2.
2020-01-15 11:24:09 -05:00
Matthias Clasen
602d29a51a
wip: reimplement css matching from scratch
...
First step: Strip out all optimizations.
2020-01-15 11:23:56 -05:00
Matthias Clasen
7e3842c3ea
Add some css style tests
...
These are meant to test selectors.
2020-01-15 11:14:51 -05:00
Matthias Clasen
8394b93acf
css: Add gtk_css_style_get_static_style
...
This lets us avoid poking directly at the GtkCssAnimatedStyle
struct in gtkcssnode.c.
2020-01-15 11:14:51 -05:00
Matthias Clasen
d803149fd2
Revert "css: Faster matching for simple selectors"
...
This reverts commit 05f7d68e29 .
2020-01-15 11:14:51 -05:00
Matthias Clasen
436af79fa7
css: Faster matching for simple selectors
...
Inline simple selectors for node matchers.
A bit ugly, but works.
2020-01-15 11:14:51 -05:00
Matthias Clasen
a9e599d720
css: Implement the superset matcher smarter
...
Instead of wrapping the individual vfuncs, and having
a branch in the inner loop, rewrite the matcher class.
2020-01-15 11:14:51 -05:00
Matthias Clasen
7a5ab6eea0
css: Compute selector tree changes ahead of time
...
These only depend on the selector tree, so we can
compute them while constructing the tree.
2020-01-15 11:14:51 -05:00
Matthias Clasen
e8eb1df29f
Speed up gtk_widget_pick
...
Add early exits, and avoid as much work as
possible.
2020-01-15 11:01:20 -05:00
Matthias Clasen
82dc7b903c
Fix the filetransfer portal initialization
...
Reusing the cancellable only works if you don't throw
it away after first use.
2020-01-15 10:58:54 -05:00
Matthias Clasen
b020a3fcf9
Try harder to make ci not timeout
...
Make getting the file transfer portal proxy more
async, and avoid leaking a bus connection. This
causes GTestDBus to hang at the end of the test
run.
2020-01-14 18:32:05 -05:00
Matthias Clasen
cb88de5938
css: Drop unsused bitmasks
...
GtkCssProvider was maintaining bitmasks for the
set properties in each ruleset. The masks are never
used, so drop them.
2020-01-14 18:32:05 -05:00
Matthias Clasen
94b1e72aa3
css: Remove an unused function
...
_gtk_css_style_property_get_mask_affecting was superseded
by GtkCssStyleChange back in 2015.
2020-01-14 18:32:05 -05:00
Matthias Clasen
20b92638ec
testsuite: Improve --generate support
...
We don't want annoying spew from GTest when
using --generate, since it interferes with just
piping the output to a text file.
2020-01-14 18:32:05 -05:00
Matthias Clasen
dccb83c9ec
quiet a compiler warning in release builds
2020-01-14 18:32:05 -05:00
Alex Samorukov
d668d2fa25
Use bundle id instead of package name for the macOS preview as filename is now changed
2020-01-14 22:15:05 +00:00
Matthias Clasen
34f1ae8fad
fontchooser: Fix up the previous commit
2020-01-14 15:42:01 -05:00
Matthias Clasen
042537cf0d
fontchooser: Fix objects-finalize test
...
The treeview is evil and keeps reference cycles in the
form of various tree row references. That gets cleaned up
if you explicitly gtk_widget_destroy the treeview. But since
07f2024bfc , the scrolled window no longer destroys
its child, exposing this issue as a reference leak in
the objects-finalize test.
The font chooser widget is affected here because it calls
gtk_tree_view_scroll_to_path from init(), which creates one
of those reference cycles. Work around this in the font
chooser by unsetting the tree view model in dispose, which
clears up this cycle.
2020-01-14 15:25:27 -05:00
Matthias Clasen
d03f38470e
Fix encoding symbolic pixbufs
...
This was broken in 1a931da046 .
2020-01-14 14:14:45 -05:00
Sucipto
a7d72cf69b
Update Indonesian translation
2020-01-14 15:11:27 +00:00
Matthias Clasen
256139baab
testsuite: Skip GtkDragIcon
...
GtkDragIcon needs a special surface, so skip it
in the notify tests.
2020-01-14 09:20:18 -05:00
Daniel Mustieles
a935aae6f1
Updated Spanish translation
2020-01-14 12:39:44 +01:00
Kukuh Syafaat
9955d686ee
Update Indonesian translation
2020-01-14 06:27:18 +00:00
Matthias Clasen
a9da41c66a
Merge branch 'adwaita-cross-fade-fix-gtk4' into 'master'
...
Adwaita: Fix syntax error in cross-fade() (GTK4)
Closes #2371
See merge request GNOME/gtk!1308
2020-01-14 06:08:24 +00:00
Matthias Clasen
4d8691b762
Merge branch 'wip/chergert/fix-dragicon-installation' into 'master'
...
build: fix gtkdragicon header installation
See merge request GNOME/gtk!1306
2020-01-14 06:06:35 +00:00
Matthias Clasen
806e159b8b
Handle lack of file transfer portal
...
Don't block for 25 seconds trying to get a bus
connection. Give up after 1 second.
2020-01-14 01:03:48 -05:00
Matthias Clasen
794ee0b8c0
gtk-demo: Use a default action in the infobars demo
...
This makes the question infobar activatable by clicking
anywhere in it.
2020-01-14 00:05:23 -05:00
Matthias Clasen
2b7de841a9
Adwaita: Add hover for clickable infobars
2020-01-14 00:05:23 -05:00
Matthias Clasen
45309811c5
infobar: Activate default action on clicks
...
When we have a default action set on the infobar, activate it
for clicks anywhere in the infobar. Also add an .action style
class in this case, so we can add a hover highlight to the infobar
just for this case.
2020-01-14 00:05:23 -05:00
Matthias Clasen
2b695ac8d1
Merge branch 'wip/chergert/textview-propagate-undo-state' into 'master'
...
textview: propagate GtkTextBuffer can-undo/redo action state
See merge request GNOME/gtk!1311
2020-01-14 01:59:22 +00:00
Christian Hergert
cb03969c5f
textview: propagate GtkTextBuffer can-undo/redo action state
...
This ensures the action state for undo and redo are propagated from the
buffer. Doing so means menu items now properly show sensitivity.
2020-01-13 17:26:18 -08:00
Matthias Clasen
57e71a6a69
Merge branch 'wip/chergert/textview-undo-menu-item' into 'master'
...
textview: add undo/redo menu actions
See merge request GNOME/gtk!1310
2020-01-13 23:51:40 +00:00