diff --git a/data/app.gschema.xml b/data/app.gschema.xml
index 426386525..a0354cfb6 100644
--- a/data/app.gschema.xml
+++ b/data/app.gschema.xml
@@ -12,9 +12,6 @@
0
-
- false
-
[]
diff --git a/demos b/demos
index fdab20945..77f2822d3 160000
--- a/demos
+++ b/demos
@@ -1 +1 @@
-Subproject commit fdab20945d5d36dad549585ae489111549835922
+Subproject commit 77f2822d36e5a4af0e25bdfe973779ce4e99e47c
diff --git a/src/Extensions/Extensions.blp b/src/Extensions/Extensions.blp
index 0d32e070e..6517ffdcd 100644
--- a/src/Extensions/Extensions.blp
+++ b/src/Extensions/Extensions.blp
@@ -1,18 +1,14 @@
using Gtk 4.0;
using Adw 1;
-Adw.Window window {
- hide-on-close: true;
- modal: false;
- default-height: 750;
- default-width: 600;
- title: _("Workbench — Extensions");
+Adw.Dialog dialog {
+ content-height: 750;
+ content-width: 600;
+ title: _("Extensions");
Adw.ToolbarView {
[top]
- Adw.HeaderBar {
- show-title: false;
- }
+ Adw.HeaderBar {}
content: ScrolledWindow {
hscrollbar-policy: never;
@@ -38,15 +34,6 @@ Adw.Window window {
}
}
- Label {
- label: _("Extensions");
- margin-bottom: 36;
-
- styles [
- "title-1"
- ]
- }
-
ListBox {
selection-mode: none;
diff --git a/src/Extensions/Extensions.js b/src/Extensions/Extensions.js
index b97275488..b557315d6 100644
--- a/src/Extensions/Extensions.js
+++ b/src/Extensions/Extensions.js
@@ -4,7 +4,6 @@ import { build } from "../../troll/src/main.js";
import Interface from "./Extensions.blp" with { type: "uri" };
import illustration from "./extensions.svg";
-import { settings } from "../util.js";
import "./Extension.js";
@@ -13,9 +12,9 @@ export const action_extensions = new Gio.SimpleAction({
parameter_type: null,
});
-export default function Extensions({ application }) {
+export function Extensions({ window }) {
const {
- window,
+ dialog,
picture_illustration,
extension_rust,
extension_vala,
@@ -36,19 +35,10 @@ export default function Extensions({ application }) {
}
action_extensions.connect("activate", () => {
- settings.set_boolean("open-extensions", true);
- window.present();
+ dialog.present(window);
});
- window.connect("close-request", () => {
- settings.set_boolean("open-extensions", false);
- });
-
- if (settings.get_boolean("open-extensions")) {
- window.present();
- }
-
- application.add_action(action_extensions);
+ window.add_action(action_extensions);
}
let rust_enabled;
diff --git a/src/application.js b/src/application.js
index f3d9392a4..7da6d97d6 100644
--- a/src/application.js
+++ b/src/application.js
@@ -6,7 +6,6 @@ import Actions from "./actions.js";
import { settings, data_dir, ensureDir } from "./util.js";
import { overrides } from "./overrides.js";
import Library, { getDemo } from "./Library/Library.js";
-import Extensions from "./Extensions/Extensions.js";
import {
Session,
addToRecentProjects,
@@ -60,10 +59,6 @@ application.connect("startup", () => {
application,
});
- Extensions({
- application,
- });
-
ShortcutsWindow({ application });
restoreSessions().catch(console.error);
diff --git a/src/window.blp b/src/window.blp
index 0c194500c..bae76c4d1 100644
--- a/src/window.blp
+++ b/src/window.blp
@@ -681,7 +681,7 @@ menu menu_app {
item {
label: _("Extensions");
- action: "app.extensions";
+ action: "win.extensions";
}
section {
diff --git a/src/window.js b/src/window.js
index 11c627a9a..9320ca4b9 100644
--- a/src/window.js
+++ b/src/window.js
@@ -37,6 +37,7 @@ import {
action_extensions,
isRustEnabled,
isValaEnabled,
+ Extensions,
} from "./Extensions/Extensions.js";
import { JavaScriptDocument } from "./langs/javascript/JavaScriptDocument.js";
import { BlueprintDocument } from "./langs/blueprint/BlueprintDocument.js";
@@ -64,6 +65,10 @@ export default function Window({ application, session }) {
window.application = application;
window.title = `Workbench — ${session.name}`;
+ Extensions({
+ window,
+ });
+
// Popover menu theme switcher
const button_menu = builder.get_object("button_menu");
const popover = button_menu.get_popover();
diff --git a/src/workbench b/src/workbench
index 762f298d0..ab28ecf32 100755
--- a/src/workbench
+++ b/src/workbench
@@ -2,7 +2,7 @@
export WEBKIT_DISABLE_DMABUF_RENDERER=1
# export G_MESSAGES_DEBUG=@app_id@
-export GSK_RENDERER=gl
+# export GSK_RENDERER=gl
# Required to allow pkgconfig to find pc files in /app/lib/pkgconfig
export PKG_CONFIG_PATH=/app/lib/pkgconfig/:$PKG_CONFIG_PATH