Complete GtkRoot
A GtkRoot interface has been added, and GtkWindow implements it.
What its implementations need to control eventually:
-
the surface -
the display -
the renderer -
connect to surface signals, ::render, ::size-changed, ::notify:state, ::event -
focus (in popup branch) -
default (in popup branch) -
grabs (see gdk_surface_show_with_auto_dismissal) -
pointer focus (in popup branch) -
modality (redone as autodismissal) -
mnemonics (in popup branch)
It needs to be implemented by various things that currently rely on gtk_window_add_popover or on GTK_WINDOW_POPUP:
-
window -
popover -
entry completion -
menu -
tooltip -
magnifier -
touch handles -
drag icons
GtkRoot may or may not have a parent. Those without will appear in the list model returned by gtk_window_get_toplevels