Window: Clarify documentation of set_application()
authorDaniel Boles <dboles@src.gnome.org>
Mon, 18 Sep 2017 23:05:09 +0000 (00:05 +0100)
committerDaniel Boles <dboles@src.gnome.org>
Mon, 18 Sep 2017 23:20:06 +0000 (00:20 +0100)
Clarify that ::destroy, not ::hide*, removes a window from its app, by
replacing the mention of open windows with the blurb on destruction from
:application, completing commit 7db4bee4b62bc9b6f20ba4e599e8d030314984fd

Also link to the equivalent gtk_application_(add|remove)_window() calls,
since Application.add_window() already links back to Window:application.

* unless you use gtkmm…

https://bugzilla.gnome.org/show_bug.cgi?id=639931

gtk/gtkwindow.c

index 72db9a8e0f2c892df2b6f8e193291521c5f868bb..9f1e52ab04793f9b8cb2c0a88f86e466618ca9e0 100644 (file)
@@ -3515,12 +3515,20 @@ gtk_window_release_application (GtkWindow *window)
 /**
  * gtk_window_set_application:
  * @window: a #GtkWindow
- * @application: (allow-none): a #GtkApplication, or %NULL
+ * @application: (allow-none): a #GtkApplication, or %NULL to unset
  *
  * Sets or unsets the #GtkApplication associated with the window.
  *
- * The application will be kept alive for at least as long as the window
- * is open.
+ * The application will be kept alive for at least as long as it has any windows
+ * associated with it (see g_application_hold() for a way to keep it alive
+ * without windows).
+ *
+ * Normally, the connection between the application and the window will remain
+ * until the window is destroyed, but you can explicitly remove it by setting
+ * the @application to %NULL.
+ *
+ * This is equivalent to calling gtk_application_remove_window() and/or
+ * gtk_application_add_window() on the old/new applications as relevant.
  *
  * Since: 3.0
  **/