- 28 May, 2019 40 commits
-
-
Matthias Clasen authored
All uses of it can be replaced by gtk_widget_get_root.
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
No longer used.
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
It is no longer used.
-
Matthias Clasen authored
Replace all uses of gtk_widget_get_surface by gtk_native_get_surface.
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
Add a facility for renamed properties, and use it for GtkPopover::modal.
-
Matthias Clasen authored
This is the term we use for the surface, and it matches the behavior a bit better than modal. Update all callers.
-
Matthias Clasen authored
-
Matthias Clasen authored
This was affected by a recent fix to GtkAboutDialog.
-
Matthias Clasen authored
-
Matthias Clasen authored
GtkWidgets unrealize accesses the frame clock of the surface, so we need to keep the surface in place until after we've chained up.
-
Matthias Clasen authored
Not used anymore. Only GtkNative's have surfaces.
-
Matthias Clasen authored
Unneeded.
-
Matthias Clasen authored
Drop special-casing of GtkNative in most widget vfuncs. GtkNative implementations need to override these anyway.
-
Matthias Clasen authored
These serve no purpose anymore - widgets don't have surfaces, unless they're a GtkNative.
-
Matthias Clasen authored
-
Matthias Clasen authored
Bring back the code that draws an arrow.
-
Matthias Clasen authored
Now that popups share the frame clock of their parent, we have to be much more careful about freezing the clock, since that may stop updates for another surface. This commit makes two changes that make the X11 handling of the frame clock more similar to the Wayland backend: - Use gdk_surface_freeze_updates instead of gdk_surface_freeze_toplevel_updates to avoid affecting the frame clock - Bail out early in before_paint/after_paint if the surface is frozen, to avoid affecting the frame clock Together, these two make the X11 popup surface type work without freezing updates for the toplevel.
-
Matthias Clasen authored
With separate clocks, the phases are not coordinated, which messes with GTKs size allocation machinery treating the entire widget tree as a whole, and causes us to run into assertion where popups get drawn before they are allocated.
-
Matthias Clasen authored
This triggers a critical warning in gtk_widget_snapshot.
-
Matthias Clasen authored
We never run this since GtkPopover has its own size_allocate, anyway.
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
-
Matthias Clasen authored
Call gtk_native_check_resize() from size_allocate, as is required now. This gets volume buttons closer to working again (dragging the slider still doesn't work).
-
Matthias Clasen authored
We need to do the same thing the menu button does, and call gtk_native_check_resize for all our popovers
-
Matthias Clasen authored
I can't think of a case where this is the desired behavior. So, instead of setting an explicit cursor on all popups, just stop walking the parents at surface boundaries.
-
Matthias Clasen authored
When a GtkNative widget is marked as resize_needed, we need a current position for its parent and we need the parent to be allocated (so we can position our surface), but we don't need the parent to be marked as resize_needed, since the parent size is entirely independent of the popup size.
-
Matthias Clasen authored
When we print warnings about a widget, using gtk_widget_get_name() is slightly better than G_OBJECT_TYPE_NAME(), since it will give us the widgets unique name when available.
-
Matthias Clasen authored
The api is the same, the parent is different. This now returns the parent of popup surfaces.
-
These are useless now that we don't have child surfaces
-
-
Matthias Clasen authored
The new api is made for this case.
-
Matthias Clasen authored
This api is meant to mimic xdg-popover.grab - we show the surface, and dismiss it when we get events on other surfaces. For foreign surfaces, the compositor handles that for us; for our own, we check outselves before delivering events to GTK.
-