Compare commits

...

3 Commits

Author SHA1 Message Date
Bit Borealis 55ee5d6548 update flake.lock 2023-08-26 12:53:45 +00:00
Bit Borealis 15ce139d13 add urlview 2023-08-26 12:53:36 +00:00
Bit Borealis 32397fc8fd add settings mockup and adjust focusability of url 2023-08-26 12:53:19 +00:00
6 changed files with 63 additions and 62 deletions

View File

@ -5,11 +5,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"lastModified": 1692799911,
"narHash": "sha256-3eihraek4qL744EvQXsK1Ha6C3CR7nnT8X2qWap4RNk=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"rev": "f9e7cf818399d17d347f847525c5a5a8032e4e44",
"type": "github"
},
"original": {
@ -20,11 +20,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1692614049,
"narHash": "sha256-RF+eM5oQGZ58rvdBV4NoF/J3S1z11g52WPWcLsYJVVY=",
"lastModified": 1692964503,
"narHash": "sha256-BUsxLHBiLKEb/d1mhj7rLmtca0/01ubBikkCrRupWB4=",
"owner": "theotheroracle",
"repo": "nixpkgs",
"rev": "908fc0c68613ee426a81427693a9b26aaba9b224",
"rev": "39653f036c7a837304b4c6e0f4ca5b9908561d90",
"type": "github"
},
"original": {

3
settings Normal file
View File

@ -0,0 +1,3 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- Created with Cambalache 0.12.1 -->
<interface/>

6
settings.ui Normal file
View File

@ -0,0 +1,6 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- Created with Cambalache 0.12.1 -->
<interface>
<requires lib="libadwaita" version="1.3"/>
<object class="AdwPreferencesWindow"/>
</interface>

View File

@ -1,50 +1,38 @@
use adw::prelude::*;
use adw::{ToolbarView, ActionRow, Application, ApplicationWindow, HeaderBar};
use gtk::{Box, ListBox, Orientation, SelectionMode};
use adw::{ToolbarView, Application, ApplicationWindow, HeaderBar, WindowTitle};
use gtk::{Box, ListBox, Orientation};
fn main() {
let application = Application::builder()
.application_id("com.example.FirstAdwaitaApp")
let xenon_app = Application::builder()
.application_id("os.saturn.xenon")
.build();
application.connect_activate(|app| {
// ActionRows are only available in Adwaita
let row = ActionRow::builder()
.activatable(true)
.title("Click me")
xenon_app.connect_activate(|app| {
let xenon_url = WindowTitle::builder()
.title("xenon")
.subtitle("https://example.com")
.focusable(true)
.focus_on_click(true)
.build();
row.connect_activated(|_| {
eprintln!("Clicked!");
});
let list = ListBox::builder()
.margin_top(32)
.margin_end(32)
.margin_bottom(32)
.margin_start(32)
.selection_mode(SelectionMode::None)
// makes the list look nicer
.css_classes(vec![String::from("boxed-list")])
let xenon_headerbar = HeaderBar::builder()
.decoration_layout("icons:close")
.title_widget(&xenon_url)
.build();
list.append(&row);
// Combine the content in a box
let content = ToolbarView ::new();
// Adwaitas' ApplicationWindow does not include a HeaderBar
content.add_top_bar(&HeaderBar::new());
content.set_content(Some(&list));
let xenon_view = ToolbarView ::builder()
.build();
xenon_view.add_top_bar(&xenon_headerbar);
let window = ApplicationWindow::builder()
.application(app)
.title("xenon")
.default_width(350)
// add content to window
.content(&content)
.content(&xenon_view)
.build();
window.show();
});
application.run();
window.present();
});
xenon_app.run();
}

View File

@ -2,19 +2,12 @@
<!DOCTYPE cambalache-project SYSTEM "cambalache-project.dtd">
<cambalache-project version="0.12.0" target_tk="gtk-4.0">
<ui>
(1,None,"xenon.ui","xenon.ui",None,None,None,None,None,None,None)
(1,None,"xenon.ui","xenon.ui",None,None,None,None,None,None,None),
(3,None,None,"settings.ui",None,None,None,None,None,None,None)
</ui>
<object>
(1,1,"AdwApplicationWindow",None,None,None,None,None,None,None),
(1,4,"GtkBox",None,1,None,None,None,None,None),
(1,5,"AdwHeaderBar",None,4,None,None,None,None,None),
(1,7,"GtkButton",None,5,None,"start",None,None,None),
(1,8,"GtkButton",None,5,None,"start",None,None,None),
(1,9,"GtkButton",None,5,None,"start",None,None,None),
(1,10,"GtkButton",None,5,None,"start",None,None,None),
(1,11,"AdwWindowTitle",None,5,None,"title",None,None,None),
(1,12,"GtkButton",None,5,None,"start",None,None,None),
(1,13,"GtkButton",None,5,None,"end",None,None,None),
(1,14,"GtkBox",None,4,None,None,None,1,None),
(1,26,"GtkScrolledWindow",None,14,None,None,None,None,None),
(1,27,"GtkBox",None,26,None,None,None,None,None),
@ -25,22 +18,21 @@
(1,32,"AdwAvatar",None,27,None,None,None,4,None),
(1,33,"AdwAvatar",None,27,None,None,None,5,None),
(1,34,"AdwAvatar",None,27,None,None,None,6,None),
(1,35,"AdwAvatar",None,27,None,None,None,7,None)
(1,35,"AdwAvatar",None,27,None,None,None,7,None),
(1,36,"AdwHeaderBar",None,4,None,None,None,None,None),
(1,37,"AdwWindowTitle",None,36,None,None,None,None,None),
(1,38,"GtkButton",None,36,None,"start",None,None,None),
(1,39,"GtkButton",None,36,None,"start",None,1,None),
(1,40,"GtkButton",None,36,None,"start",None,2,None),
(1,41,"GtkButton",None,36,None,"start",None,3,None),
(1,42,"GtkButton",None,36,None,"start",None,4,None),
(1,43,"GtkButton",None,36,None,"end",None,5,None),
(3,1,"AdwPreferencesWindow",None,None,None,None,None,None,None)
</object>
<object_property>
(1,1,"AdwApplicationWindow","content",None,None,None,None,None,4,None,None,None,None),
(1,1,"GtkWindow","title","xenon",None,None,None,None,None,None,None,None,None),
(1,4,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
(1,5,"AdwHeaderBar","decoration-layout","icon:close",None,None,None,None,None,None,None,None,None),
(1,5,"AdwHeaderBar","title-widget",None,None,None,None,None,11,None,None,None,None),
(1,7,"GtkButton","icon-name","camera-photo-symbolic",None,None,None,None,None,None,None,None,None),
(1,8,"GtkButton","icon-name","image-x-generic-symbolic",None,None,None,None,None,None,None,None,None),
(1,9,"GtkButton","icon-name","folder-download-symbolic",None,None,None,None,None,None,None,None,None),
(1,10,"GtkButton","icon-name","media-playback-start-symbolic",None,None,None,None,None,None,None,None,None),
(1,11,"AdwWindowTitle","subtitle","https://example.com",None,None,None,None,None,None,None,None,None),
(1,11,"AdwWindowTitle","title","example",None,None,None,None,None,None,None,None,None),
(1,12,"GtkButton","icon-name","go-home-symbolic",None,None,None,None,None,None,None,None,None),
(1,13,"GtkButton","icon-name","open-menu-symbolic",None,None,None,None,None,None,None,None,None),
(1,14,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
(1,26,"GtkScrolledWindow","hscrollbar-policy","never",None,None,None,None,None,None,None,None,None),
(1,26,"GtkScrolledWindow","propagate-natural-height","True",None,None,None,None,None,None,None,None,None),
@ -60,6 +52,17 @@
(1,34,"AdwAvatar","icon-name","web-browser-symbolic",None,None,None,None,None,None,None,None,None),
(1,34,"AdwAvatar","size","60",None,None,None,None,None,None,None,None,None),
(1,35,"AdwAvatar","icon-name","web-browser-symbolic",None,None,None,None,None,None,None,None,None),
(1,35,"AdwAvatar","size","60",None,None,None,None,None,None,None,None,None)
(1,35,"AdwAvatar","size","60",None,None,None,None,None,None,None,None,None),
(1,36,"AdwHeaderBar","decoration-layout","icon:close",None,None,None,None,None,None,None,None,None),
(1,36,"AdwHeaderBar","title-widget",None,None,None,None,None,37,None,None,None,None),
(1,37,"AdwWindowTitle","subtitle","https://example.com",None,None,None,None,None,None,None,None,None),
(1,37,"AdwWindowTitle","title","example",None,None,None,None,None,None,None,None,None),
(1,37,"GtkWidget","focusable","True",None,None,None,None,None,None,None,None,None),
(1,38,"GtkButton","icon-name","camera-photo-symbolic",None,None,None,None,None,None,None,None,None),
(1,39,"GtkButton","icon-name","image-x-generic-symbolic",None,None,None,None,None,None,None,None,None),
(1,40,"GtkButton","icon-name","folder-download-symbolic",None,None,None,None,None,None,None,None,None),
(1,41,"GtkButton","icon-name","media-playback-start-symbolic",None,None,None,None,None,None,None,None,None),
(1,42,"GtkButton","icon-name","go-home-symbolic",None,None,None,None,None,None,None,None,None),
(1,43,"GtkButton","icon-name","open-menu-symbolic",None,None,None,None,None,None,None,None,None)
</object_property>
</cambalache-project>

View File

@ -13,6 +13,7 @@
<property name="decoration-layout">icon:close</property>
<property name="title-widget">
<object class="AdwWindowTitle">
<property name="focusable">True</property>
<property name="subtitle">https://example.com</property>
<property name="title">example</property>
</object>