window>> [ gtk_widget_destroy ] [ unregister-window ] bi
event-loop? [ gtk_main_quit ] unless ;
+M: gtk-ui-backend resize-window [ handle>> window>> ] [ first2 ] bi* gtk_window_resize ;
+
M: gtk-ui-backend set-title
swap [ handle>> window>> ] [ utf8 string>alien ] bi*
gtk_window_set_title ;
<flag> ui-notify-flag set-global
] "ui" add-startup-hook
+HOOK: resize-window ui-backend ( world dim -- )
+M: object resize-window 2drop ;
+
+: relayout-window ( gadget -- )
+ [ relayout ]
+ [ find-world [ dup pref-dim resize-window ] when* ] bi ;
+
: with-ui ( quot: ( -- ) -- )
ui-running? [ call( -- ) ] [ '[ init-ui @ ] (with-ui) ] if ;