Skärmbilder i README + --settings-flagga
All checks were successful
check / check (push) Successful in 1m44s
All checks were successful
check / check (push) Successful in 1m44s
Nya assets/screenshots (tagna i nästlad headless-Wayfire): hero-bild, dock-närbild och settings-fönstret. Ny CLI-flagga --settings öppnar inställningsfönstret direkt vid start. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,14 @@ Rust/GTK4 som **en enda binär**. Pinnade appar, körande fönster med
|
||||
gruppering, per-skärm-kontext, konfigurerbara menyer, settings-GUI och
|
||||
live-omladdning av JSON-configen.
|
||||
|
||||
## Skärmbilder
|
||||
|
||||

|
||||
|
||||
| Dockan (pins, grupper, indikatorer) | Inställningar (per skärm, live) |
|
||||
|---|---|
|
||||
|  |  |
|
||||
|
||||
- Config: `~/.config/waydock/config.json` (skapas automatiskt första starten)
|
||||
- Djupare docs: [`doc/plan.md`](doc/plan.md),
|
||||
[`doc/architecture.md`](doc/architecture.md),
|
||||
|
||||
BIN
assets/screenshots/dock-closeup.png
Normal file
BIN
assets/screenshots/dock-closeup.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 53 KiB |
BIN
assets/screenshots/dock-hero.png
Normal file
BIN
assets/screenshots/dock-hero.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 449 KiB |
BIN
assets/screenshots/settings.png
Normal file
BIN
assets/screenshots/settings.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 55 KiB |
@@ -7,6 +7,7 @@ waydock # normal start
|
||||
waydock --log debug # pratigare logg till stderr
|
||||
waydock --log-file ~/.cache/waydock.log
|
||||
waydock --config /annan/väg.json
|
||||
waydock --settings # öppna inställningsfönstret direkt
|
||||
```
|
||||
|
||||
Vid första start skapas `~/.config/waydock/config.json` med defaults.
|
||||
|
||||
0
install.sh
Normal file → Executable file
0
install.sh
Normal file → Executable file
0
release.sh
Normal file → Executable file
0
release.sh
Normal file → Executable file
14
src/main.rs
14
src/main.rs
@@ -28,14 +28,16 @@ struct Cli {
|
||||
config: Option<PathBuf>,
|
||||
log: Option<String>,
|
||||
log_file: Option<String>,
|
||||
open_settings: bool,
|
||||
}
|
||||
|
||||
fn parse_cli() -> Cli {
|
||||
let mut cli = Cli { config: None, log: None, log_file: None };
|
||||
let mut cli = Cli { config: None, log: None, log_file: None, open_settings: false };
|
||||
let mut args = std::env::args().skip(1);
|
||||
while let Some(arg) = args.next() {
|
||||
match arg.as_str() {
|
||||
"--config" => cli.config = args.next().map(PathBuf::from),
|
||||
"--settings" => cli.open_settings = true,
|
||||
"--log" => cli.log = args.next(),
|
||||
"--log-file" => cli.log_file = args.next(),
|
||||
"--version" | "-V" => {
|
||||
@@ -49,6 +51,7 @@ fn parse_cli() -> Cli {
|
||||
--config <fil> annan configfil (default ~/.config/waydock/config.json)\n \
|
||||
--log <nivå> error|warn|info|debug|trace (även env WAYDOCK_LOG)\n \
|
||||
--log-file <fil> skriv logg till fil\n \
|
||||
--settings öppna inställningsfönstret vid start\n \
|
||||
--version visa version"
|
||||
);
|
||||
std::process::exit(0);
|
||||
@@ -128,20 +131,21 @@ fn main() -> glib::ExitCode {
|
||||
let started = Rc::new(Cell::new(false));
|
||||
|
||||
let cfg_path2 = cfg_path.clone();
|
||||
let open_settings = cli.open_settings;
|
||||
app.connect_activate(move |app| {
|
||||
if started.get() {
|
||||
info!("waydock kör redan — ignorerar andra instansen");
|
||||
return;
|
||||
}
|
||||
started.set(true);
|
||||
activate(app, cfg_path2.clone());
|
||||
activate(app, cfg_path2.clone(), open_settings);
|
||||
});
|
||||
|
||||
// ge inte GTK våra egna flaggor
|
||||
app.run_with_args::<&str>(&[])
|
||||
}
|
||||
|
||||
fn activate(app: >k::Application, cfg_path: PathBuf) {
|
||||
fn activate(app: >k::Application, cfg_path: PathBuf, open_settings: bool) {
|
||||
let cfg: config::SharedConfig = Rc::new(RefCell::new(config::load_or_create(&cfg_path)));
|
||||
|
||||
let ctx = Rc::new(dock::Ctx {
|
||||
@@ -224,6 +228,10 @@ fn activate(app: >k::Application, cfg_path: PathBuf) {
|
||||
);
|
||||
}
|
||||
|
||||
if open_settings {
|
||||
settings::open(&ctx);
|
||||
}
|
||||
|
||||
// skärmar in/ut → bygg om (debouncat, skärmar kommer i klungor)
|
||||
{
|
||||
let ctx2 = ctx.clone();
|
||||
|
||||
Reference in New Issue
Block a user