Matthias Clasen
89fb042fea
Adwaita: Give popover menus a background
...
This makes the hover highlight on menu items visible.
2019-04-28 12:36:04 +00:00
Matthias Clasen
5594c2dccd
popover menu: Reinstate styling
2019-04-28 12:36:04 +00:00
Matthias Clasen
a6a54d6ccb
surface: Remove code dealing with child surfaces
...
We no longer have child surfaces, so this code
is never run.
2019-04-28 12:36:04 +00:00
Matthias Clasen
29db3bc052
surface: minor cleanup
...
Make gdk_surface_new fully private, and reduce the use
of GdkSurfaceAttr.
2019-04-28 12:36:04 +00:00
Matthias Clasen
abf17eed83
Drop child surfaces
...
Drop gdk_surface_child_new and the child surface type,
since we no longer use them. Deprecate surface apis
that only make sense with child surfaces.
2019-04-28 12:36:04 +00:00
Matthias Clasen
6cc1e557dd
widget: Stop using child surface apis
...
All our surfaces are toplevels now, and thus all native.
2019-04-28 12:36:04 +00:00
Matthias Clasen
7454f41283
a11y: Stop supporting ATK_XY_SCREEN
...
We were already not supporting ATK_XY_PARENT, and we can't
support global positions, so just always do ATK_XY_WINDOW.
2019-04-28 12:36:04 +00:00
Matthias Clasen
1a467518f4
xim: Stop using child surface apis
...
We no longer have child surfaces.
Drop code that only makes sense in
their presence.
2019-04-28 12:36:04 +00:00
Matthias Clasen
a0f7cfeb5b
wayland: Stop using child surface apis
...
We no longer have child surfaces.
Drop code that only makes sense in their
presence.
2019-04-28 12:36:04 +00:00
Matthias Clasen
fb6c0a27e0
x11: Stop using child surface api
...
We no longer have child surfaces.
Drop code that only makes sense in
that case.
2019-04-28 12:36:04 +00:00
Matthias Clasen
7cb44e7d40
text: Adapt to new popover lifecycle
...
Unparent the popover in dispose.
2019-04-28 12:36:04 +00:00
Matthias Clasen
84b99bb83b
scale button: Adapt to new popover lifecycle
...
Unparent the popover in dispose.
2019-04-28 12:36:04 +00:00
Matthias Clasen
076f91bb58
placesview: Adapt to new popover lifecycle
...
We must unparent popovers in dispose now.
2019-04-28 12:36:04 +00:00
Matthias Clasen
4c863d5429
entry: Adapt to new popover lifecycle
...
We need to unparent popovers in dispose.
2019-04-28 12:36:04 +00:00
Matthias Clasen
ed08ae6faf
Reimplement GtkPopover
2019-04-28 12:36:04 +00:00
Matthias Clasen
aac8d6d369
surface: Start sketching a new surface type
...
Start by adding a constructor. We have to call it
gdk_surface_new_popup_full for now, since gdk_surface_new_popup
is taken. This may be reshuffled later.
2019-04-28 12:36:04 +00:00
Matthias Clasen
48847f6c58
widget: Don't snapshot foreign children
...
When snapshotting, we walk down the widget tree.
We need to skip children that have a different
root, since those will do their own snapshot.
2019-04-28 12:36:04 +00:00
Matthias Clasen
896c7e6ff0
icon view accessible: Stop presenting windows
...
Thats really not its business.
2019-04-28 12:36:04 +00:00
Matthias Clasen
121c54a6f0
Review and replace uses of get_toplevel
...
Now that roots can have parent widgets, we need to
carefully examine all calls of gtk_widget_get_toplevel,
and replace them with gtk_widget_get_root if we want
the nearest root, and not the ultimate end of the parent
chain.
2019-04-28 12:36:04 +00:00
Matthias Clasen
046dfc475b
widget: Use root pointer focus apis
2019-04-28 12:36:04 +00:00
Matthias Clasen
9b32ec663b
main: Use root pointer focus apis
2019-04-28 12:36:04 +00:00
Matthias Clasen
2c03d59422
window: Implement root pointer focus apis
2019-04-28 12:36:04 +00:00
Matthias Clasen
6367d5a898
root: Add pointer focus apis
...
This copies all the private GtkWindow apis for
handling pointer focus.
2019-04-28 12:36:04 +00:00
Matthias Clasen
c7d6a3cc59
main: Use root api for mnemonic activation
2019-04-28 12:36:04 +00:00
Matthias Clasen
2a1b5ef613
label: Use root api for mnemonic setup
2019-04-28 12:36:04 +00:00
Matthias Clasen
704abc659e
window: Implement root mnemonic api
...
Hook up the root mnemonic api to the existing
mnemonic machinery.
2019-04-28 12:36:04 +00:00
Matthias Clasen
75a7def255
root: Add api for mnemonics
...
Copy the add/remove_mnemonic and activate_key apis
from GtkWindow.
2019-04-28 12:36:04 +00:00
Matthias Clasen
1cf4a31541
label: Make default activation work in roots
...
Use the GtkRoot API when activating the default widget.
This makes things work in GtkWindow and GtkPopup.
2019-04-28 12:36:04 +00:00
Matthias Clasen
509695702f
text: Make default activation work in roots
...
Use the GtkRoot API when activating the default widget.
This makes things work in GtkWindow and GtkPopup.
2019-04-28 12:36:04 +00:00
Matthias Clasen
5e43e39c81
widget: Make grabbing default work for roots
...
Use the GtkRoot api to make grabbing the default
work in roots other than GtkWindow.
2019-04-28 12:36:04 +00:00
Matthias Clasen
b18ca74800
window: Implement GtkRoot::default-widget
...
Implement the ::default-widget property.
2019-04-28 12:36:04 +00:00
Matthias Clasen
e5b0bfa6b9
root: Add an activate_focus api
...
This makes sense to parallel what GtkWindow has,
and for key bindings.
2019-04-28 12:36:04 +00:00
Matthias Clasen
ac991957a2
root: Add default handling
...
Add a default-widget property with getter/setter
and a gtk_root_activate_default() function.
2019-04-28 12:36:03 +00:00
Matthias Clasen
7d2e3843c6
main: guard window-specific code paths
...
This was overlooked when I first tried to
make things for GtkRoot.
2019-04-28 12:36:03 +00:00
Matthias Clasen
022bcc6efc
widget: guard popover-specific code paths
...
This is essentially a special case just for GtkPopover,
which is the last widget with a child surface.
2019-04-28 12:36:03 +00:00
Matthias Clasen
ad8e92a52e
window: Implement GtkRoot::check_resize
...
Hook up the existing window configure machinery
to the new idle sizer.
2019-04-28 12:36:03 +00:00
Matthias Clasen
9aec6e1b25
widget: Use the new idle sizer
2019-04-28 12:36:03 +00:00
Matthias Clasen
e813738f28
css: Use the new idle sizer
2019-04-28 12:36:03 +00:00
Matthias Clasen
278ce030cf
root: Move the idle sizer here
...
Move the idle sizer from GtkContainer to GtkRoot
and call it layout phase. The new (private) entry
points are gtk_root_queue_restyle() and
gtk_root_start/stop_layout_phase().
2019-04-28 12:36:03 +00:00
Timm Bäder
59fd48cee0
entry: Fix primary icon allocation in RTL entries
...
The primary icon is on the right in RTL, so don't offset the text child
to the right for it.
Fixes the text and icon overlapping in the second entry
in tests/testentryicons
2019-04-28 08:36:36 +02:00
Timm Bäder
c848b9014b
gl renderer: Add simple blend node implementation
2019-04-28 07:58:31 +02:00
Timm Bäder
1e16cb088a
treeview: Always update expand when allocating columns
...
It doesn't make sense to keep track of all the last_* values anymore now
that widgets only get allocated when their size changes anyway.
Remove all the associated (and thus now unused) flags as well.
2019-04-28 06:54:10 +02:00
Timm Bäder
f4cf43359d
treeview: Remove a useless check
2019-04-28 06:50:57 +02:00
Timm Bäder
6c8a5f5e2f
treeview: Remove unused member
2019-04-28 06:45:33 +02:00
Matthias Clasen
da64d687d1
Merge branch 'popover-demos' into 'master'
...
Popover demos
See merge request GNOME/gtk!782
2019-04-27 18:09:57 +00:00
Matthias Clasen
aab803b7ae
widget-factory: Make a resizing popover
...
Add an expander to a popover to test how
changing sizes works with popovers.
2019-04-27 18:00:22 +00:00
Matthias Clasen
936aba884a
Merge branch 'file-chooser-search' into 'master'
...
file chooser: Fix Ctrl-L
Closes #1829
See merge request GNOME/gtk!781
2019-04-27 17:52:02 +00:00
Matthias Clasen
e1200230c4
widget-factory: Add some nested popovers
...
These are mainly for stress-testing our
popover implementations.
2019-04-27 17:50:22 +00:00
Matthias Clasen
d3ad816d63
widget-factory: Add non-modal popovers
...
This makes is easy to test moving the toplevel
or repositioning the parent while the popover
is shown.
2019-04-27 17:50:14 +00:00
Matthias Clasen
eea1388cf4
file chooser: Fix Ctrl-L
...
We were forwarding key events to the search entry
and unconditionally considered search started
afterwards. That is not correct, since things
like a Ctrl key press should not trigger search.
Fix this by only switching to search mode when
the event was actually consumed.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/1829
2019-04-27 17:43:59 +00:00