Commit Graph

52032 Commits

Author SHA1 Message Date
Matthias Clasen
cd4892c50a Stop using gsk_cairo_node_new_for_surface
Best to avoid handling the surface ourselves.
2017-10-08 20:05:16 -04:00
Matthias Clasen
6e5ded8492 Add another blendmodes reftest
This tests all blendmodes. Again, the Vulkan renderer fails.
2017-10-08 19:58:09 -04:00
Matthias Clasen
5280a2c874 Revise the coordinate handling one more time
This makes the new reftests pass and hopefully does not
break other things.
2017-10-08 19:21:52 -04:00
Daniel Boles
2cd65158a0 Dialog: Clarify that response ID 0 is not reserved
I only got so far in math, but it looks to me like zero isn’t positive.
We don’t reserve it, so be clear about that.
2017-10-08 22:21:12 +01:00
Daniel Boles
77b75bdab1 MenuButton: Document the correct no-direction icon
Document open-menu-symbolic, which we use, not view-context-menu, which
does not exist.
2017-10-08 21:09:42 +01:00
Matthias Clasen
87aaa5685b Add a cross-fade node ref test
The Vulkan renderer doesn't pass this one either, currently.
2017-10-08 14:36:35 -04:00
Matthias Clasen
eacdeec29e Add a blendmode node reftest
The Vulkan renderer doesn't pass this, currently.
2017-10-08 14:29:27 -04:00
Matthias Clasen
ab22734159 Fix application window snapshot differently
As Timm Baedert pointed out, the previous fix made the
menubar go on top of popovers, which is just wrong. Instead,
make gtk_window_snapshot handle all direct children of the
window, taking care to stack popovers correctly.
2017-10-08 14:03:19 -04:00
Matthias Clasen
8dc48d0322 Expand the repeat node test
Still not exhaustive, but enough to find some issues.
2017-10-08 13:50:41 -04:00
Matthias Clasen
1fe4e12356 Add a repeat node test 2017-10-08 12:23:18 -04:00
Matthias Clasen
df549c4e9f Add a basic cairo node test 2017-10-08 12:21:45 -04:00
Matthias Clasen
95f29de710 Allow backend-specific reference images
This is not ideal, but lets us deal with differences for now.
2017-10-08 12:21:36 -04:00
Matthias Clasen
9a9aec05c0 vulkan: Fix cross-fade node coordinates
This is the same fix as was just committed for blendmode nodes.
2017-10-08 11:31:55 -04:00
Matthias Clasen
4d7b8f5a66 vulkan: Fix blendmode coordinate handling
We were node handling coordinates correctly when dealing
with differently sized child nodes in a blendmode node.
This was showing up in the gtk4-demo css blendmode example,
for blendmodes other than normal.
2017-10-08 09:02:35 -04:00
Matthias Clasen
fe6e80fdde vulkan: Fix repeat node coordinates
We were not treating non-trivial child bounds right at all.
This was visible in the css blendmode cmyk example in gtk4-demo,
for the normal blendmode.
2017-10-08 09:02:35 -04:00
Matthias Clasen
9e613be8c6 inspector: Show child bounds for repeat nodes
The more information, the better.
2017-10-08 09:02:35 -04:00
Umang Jain
74a677a79d Create tests for cairo node
https://bugzilla.gnome.org/show_bug.cgi?id=788534
2017-10-08 18:22:34 +05:30
Umang Jain
a933c7c4bd gsk: Move gsk_cairo_node_new_for_surface into public API
https://bugzilla.gnome.org/show_bug.cgi?id=788534
2017-10-08 18:22:34 +05:30
Umang Jain
74f8fc80d3 gsk: Fix serialization of cairo node
https://bugzilla.gnome.org/show_bug.cgi?id=788534
2017-10-08 18:22:34 +05:30
Daniel Boles
6cafb62e9b testmenubutton: Fix inverted keynav in the GtkMenu
GtkMenu’s own keynav code, which actually bothers to account for the
layout of items, only happens if columns > 1. So, adding items to 1
column using a reverse loop meant they were placed in the Menu’s list of
children in that order, and because we only have 1 column, Menu passes
keynav up to MenuShell, which doesn’t adjust for the items’ positions.

‘Fix’ that here by adding items in the same order they’ll have when laid
out in the Menu, so keynav does what you’d expect, not the opposite. For
that, it’s simpler just to use gtk_container_add().

Let’s presume users are using add(), attach() with a non-inverted loop,
or attach() with arguments that create 2+ columns and so GtkMenu keynav.
2017-10-08 13:17:04 +01:00
Timm Bäder
007e4639a8 snapshot: Set blend mode directly after pushing state
This is important since _push_state returns a pointer into a GArray
which could be invalidated and point to garbage after the subsequent
push_state call.
2017-10-08 08:28:35 +02:00
Matthias Clasen
f597de817e snapshot: Fix blend mode handling
We were getting out states confused and were always creating
a blend mode node with mode NORMAL.
2017-10-07 23:31:47 -04:00
Matthias Clasen
515f5268c2 gtk4-demo: fix a typo
The blend mode is called saturation, not saturate.
2017-10-07 23:26:57 -04:00
Matthias Clasen
f8c48240d9 Adwaita: theme the shortcuts window search results
Add some margins, and, since we can, also move the spacing here.
2017-10-07 22:45:49 -04:00
Matthias Clasen
c9eab36216 Shortcuts window: Make search results themable
Add a style class to the box containing search results,
so we can apply style here.
2017-10-07 22:45:05 -04:00
Matthias Clasen
4903f809a6 application window: Make menubar appear
This needed to be ported to snapshot, still.
2017-10-07 22:24:09 -04:00
Matthias Clasen
de2074d3a3 Adwaita: theme shortcuts windows a bit
Add some space around the content.
2017-10-07 20:13:13 -04:00
Matthias Clasen
fee3d20e44 shortcuts: Add css names to some widgets
This will let us put some styling in place for these.
2017-10-07 20:12:18 -04:00
Matthias Clasen
e1338e4e12 gtk4-demo: Fix the scrollbar popup menu example
A scrollbar is not a range anymore, so the callback
needs some adjustments (!).
2017-10-07 19:54:47 -04:00
Matthias Clasen
7e64ee52a8 scrollbar: keep populate-popup signal working
This is used for example in the source tab of gtk4-demo.
It broke because GtkScrollbar no longer is a GtkRange,
but rather has one. So we need to forward the signal.
2017-10-07 19:53:19 -04:00
Matthias Clasen
9f8f3fc7ac notebook: Don't steal right-clicks from content
We only want to pop up the context menu in the tab strip.
2017-10-07 19:26:39 -04:00
Matthias Clasen
0f0557157b Adwaita: Fix scrollbar theming a bit
Reinstate the fine-tune mode scrollbars.
2017-10-07 19:10:58 -04:00
Matthias Clasen
f2a7e1219b scrollbar: Correct css docs
The .fine-tune class appears on the range node.
2017-10-07 19:10:10 -04:00
Matthias Clasen
e49615184a Drop the env var for scrolling control
This was never meant to be an official api, but rather
a transition help. Time to drop it for GTK+ 4.
2017-10-07 18:27:51 -04:00
Matthias Clasen
5b8b892dd6 textview: Fix memory handling
When cleaning up the text appearance struct, we forgot
to add the new strikethrough_rgba member to the copy
function.
2017-10-06 23:06:52 -04:00
Matthias Clasen
41cd4c812e printing: Fix page drawing
We were drawing frames around our drawing areas.
2017-10-06 22:50:03 -04:00
Matthias Clasen
8e1ef3620a printing: Some fixes to the print dialog
Hide widgets that are meant to be hidden initially, and use
the right spin button apis.
2017-10-06 22:33:55 -04:00
Matthias Clasen
acb12e1198 button: Fix label alignment in checks and radios
Yes, this is ugly, but the alternative is broken ui.
2017-10-06 22:32:53 -04:00
Matthias Clasen
4d3cdfae44 gtk-demo: Deal with big images
We don't want to grow our window to huge size just because
there is a big source image.
2017-10-06 21:59:34 -04:00
Matthias Clasen
481ba13e8e gtk-demo: Add a new overlay demo
Replace the not very impressive transparent demo with
the blur-behind example.
2017-10-06 21:58:56 -04:00
Matthias Clasen
f352a0ec2b gtk-demo: Fix the overlay demo
We must make the label and the entry separate overlays, or
the entry will also be clickthru.
2017-10-06 21:35:21 -04:00
Matthias Clasen
6d75d0966a gtk-demo: Fix up the drawingarea example
This was not working anymore.
2017-10-06 20:42:04 -04:00
Matthias Clasen
0caec25ee0 gtk-demo: Make the color chooser example non-resizable
No need for it.
2017-10-06 20:42:04 -04:00
Daniel Boles
4269ca0bfa HC: Avoid inflated titlebar separator in GEdit etc
It was selecting paned separator, which means any separator at any level
of descent within a paned, including the toplevel container in GEdit.

We need to be more specific and only select the relevant separator that
is the direct child of the paned. This is what Adwaita does.

https://bugzilla.gnome.org/show_bug.cgi?id=788573
2017-10-07 01:30:49 +01:00
Daniel Boles
497e877755 TreeViewCol: Fix SEGV on remove/add, + memory leak
Nulling priv->button in _unset_tree_view() is asymmetrical: we create
it via init(), not _set_tree_view(), so we shouldn’t null in the latter.

Worse, doing so manifests in criticals + a SEGV easily with basic use of
testtreecolumns, removing the TVC from a TV then trying to add it to one

Finally, the wrong null-out meant dispose() failed to unref the button,
so it leaked.

https://bugzilla.gnome.org/show_bug.cgi?id=728452
https://bugzilla.gnome.org/show_bug.cgi?id=788614
2017-10-07 00:46:37 +01:00
Daniel Boles
af28c031fc TreeViewCol: Don’t try to disconnect null treeview
https://bugzilla.gnome.org/show_bug.cgi?id=788614
2017-10-07 00:46:37 +01:00
Daniel Boles
161b063909 Revert "treeviewcolumn: Don't leak button"
This reverts commit 2c28c627c1.

See following commits: the real problem is setting priv->button to NULL
soon after this, so this just makes that wrong decision look more right.

https://bugzilla.gnome.org/show_bug.cgi?id=788614
2017-10-07 00:45:40 +01:00
Daniel Boles
65b6e92c27 iconbrowser: Don’t repeat folder-download-symbolic
It was in both [general] with a description and [other] with none.
Leave it in [other] with the other folder- icons, + the description.

bonus: this makes all of [general] fit in our default window size!
2017-10-07 00:44:24 +01:00
Daniel Boles
c1a5afb3a8 FileChooserButton: Avoid unref()ing a null model 2017-10-07 00:44:24 +01:00
Matthias Clasen
ad9c70537d gtk-demo: Fix the assistant demo
The progress bar was no longer expanding as intended,
due to the demise of GtkBox::expand.
2017-10-06 19:38:16 -04:00