Skip to content

Use an AdwDialog for Extensions #900

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Mar 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions data/app.gschema.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@
<key name="recent-code-language" type="i">
<default>0</default>
</key>
<key name="open-extensions" type="b">
<default>false</default>
</key>
<key name="recent-projects" type="as">
<default>[]</default>
</key>
Expand Down
2 changes: 1 addition & 1 deletion demos
Submodule demos updated 72 files
+10 −10 .gitignore
+13 −6 Makefile
+18 −0 STYLEGUIDE.md
+4 −5 demos/About Dialog/code.rs
+5 −4 demos/About Dialog/main.blp
+6 −8 demos/About Dialog/main.js
+1 −1 demos/About Dialog/main.json
+4 −5 demos/About Dialog/main.py
+4 −6 demos/About Dialog/main.vala
+20 −0 demos/Action Bar/main.vala
+2 −2 demos/Advanced Buttons/main.blp
+2 −2 demos/Animation/main.blp
+1 −1 demos/Avatar/main.blp
+1 −1 demos/Banner/main.blp
+19 −0 demos/Banner/main.vala
+1 −1 demos/Boxed Lists/main.blp
+2 −2 demos/Breakpoints/main.blp
+92 −0 demos/Camera/main.py
+1 −1 demos/Carousel/main.blp
+22 −0 demos/Checkboxes/main.vala
+1 −1 demos/Clamp/main.blp
+38 −0 demos/Clamp/main.vala
+44 −0 demos/Dialog/image.svg
+72 −0 demos/Dialog/main.blp
+20 −0 demos/Dialog/main.js
+6 −0 demos/Dialog/main.json
+0 −77 demos/Dialogs/main.vala
+14 −59 demos/Drawing Area/code.rs
+13 −64 demos/Drawing Area/main.js
+34 −0 demos/Drawing Area/main.py
+76 −0 demos/Drop Down/main.py
+67 −76 demos/Drop Zone/main.vala
+1 −1 demos/Email/main.blp
+10 −0 demos/Emoji Chooser/main.vala
+1 −1 demos/Header Bar/main.blp
+1 −1 demos/Launcher/main.blp
+1 −1 demos/Level Bars/main.blp
+1 −1 demos/List Model/main.blp
+108 −0 demos/List Model/main.py
+6 −6 demos/Location/main.js
+127 −0 demos/Location/main.py
+3 −3 demos/Message Dialogs/main.blp
+7 −15 demos/Message Dialogs/main.js
+0 −0 demos/Message Dialogs/main.json
+6 −14 demos/Message Dialogs/main.py
+73 −0 demos/Message Dialogs/main.vala
+1 −1 demos/Navigation Split View/main.blp
+1 −1 demos/Navigation View/main.blp
+1 −1 demos/Overlay Split View/main.blp
+52 −36 demos/Preferences Dialog/main.blp
+11 −6 demos/Preferences Dialog/main.js
+1 −1 demos/Preferences Dialog/main.json
+10 −6 demos/Preferences Dialog/main.py
+11 −6 demos/Preferences Dialog/main.vala
+2 −4 demos/Screenshot/main.js
+6 −9 demos/Screenshot/main.py
+4 −6 demos/Screenshot/main.vala
+75 −0 demos/Session Monitor and Inhibit/main.py
+14 −9 demos/Source View/main.vala
+1 −1 demos/Status Page/main.blp
+2 −2 demos/Styling with CSS/main.blp
+3 −3 demos/Tab View/main.blp
+2 −2 demos/Text Fields/main.blp
+1 −1 demos/Toasts/main.blp
+2 −2 demos/Toolbar View/main.blp
+3 −3 demos/View Switcher/main.blp
+41 −0 demos/View Switcher/main.py
+2 −5 demos/Welcome/code.rs
+3 −6 demos/Welcome/main.js
+4 −4 demos/Welcome/main.py
+3 −5 demos/Welcome/main.vala
+27 −22 demos/Window/main.blp
23 changes: 5 additions & 18 deletions src/Extensions/Extensions.blp
Original file line number Diff line number Diff line change
@@ -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;
Expand All @@ -38,15 +34,6 @@ Adw.Window window {
}
}

Label {
label: _("Extensions");
margin-bottom: 36;

styles [
"title-1"
]
}

ListBox {
selection-mode: none;

Expand Down
18 changes: 4 additions & 14 deletions src/Extensions/Extensions.js
Original file line number Diff line number Diff line change
Expand Up @@ -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";

Expand All @@ -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,
Expand All @@ -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;
Expand Down
5 changes: 0 additions & 5 deletions src/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -60,10 +59,6 @@ application.connect("startup", () => {
application,
});

Extensions({
application,
});

ShortcutsWindow({ application });

restoreSessions().catch(console.error);
Expand Down
2 changes: 1 addition & 1 deletion src/window.blp
Original file line number Diff line number Diff line change
Expand Up @@ -681,7 +681,7 @@ menu menu_app {

item {
label: _("Extensions");
action: "app.extensions";
action: "win.extensions";
}

section {
Expand Down
5 changes: 5 additions & 0 deletions src/window.js
Original file line number Diff line number Diff line change
Expand Up @@ -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";
Expand Down Expand Up @@ -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();
Expand Down
2 changes: 1 addition & 1 deletion src/workbench
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down