[gnome-shell/wip/fmuellner/gtk4: 1/10] extensions-app: Explicitly dispose window when removed
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/fmuellner/gtk4: 1/10] extensions-app: Explicitly dispose window when removed
- Date: Fri, 8 Jan 2021 23:00:00 +0000 (UTC)
commit b21c0d9265cffcaa622c4ca20095c7b730eeb222
Author: Florian Müllner <fmuellner gnome org>
Date: Wed Nov 18 02:16:26 2020 +0100
extensions-app: Explicitly dispose window when removed
Unlike in previous GTK version (or Clutter), destroy() no longer
breaks reference cycles but just releases the reference held by
GTK itself.
So any reference we hold - either the explicit property or any signal
handlers that bind the window as `this` - prevents the window from
being disposed when closed, and the application won't quit.
Work around this by explicitly running dispose() on the window when
it is removed from the application.
subprojects/extensions-app/js/main.js | 2 ++
1 file changed, 2 insertions(+)
---
diff --git a/subprojects/extensions-app/js/main.js b/subprojects/extensions-app/js/main.js
index dc993ef966..8ff753d56b 100644
--- a/subprojects/extensions-app/js/main.js
+++ b/subprojects/extensions-app/js/main.js
@@ -42,6 +42,8 @@ class Application extends Gtk.Application {
_init() {
GLib.set_prgname('gnome-extensions-app');
super._init({ application_id: 'org.gnome.Extensions' });
+
+ this.connect('window-removed', (a, window) => window.run_dispose());
}
get shellProxy() {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]