1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-04-20 11:54:23 +02:00
Commit graph

170 commits

Author SHA1 Message Date
Disr0
76a68165f0
feat(upower): add new formatting properties 2024-02-12 23:05:31 +00:00
Ross MacLeod
f4384b6252 feat: enable use of markup in clock module format and format_popup, and update documentation to reflect supporting Pango markup in both 2024-02-08 23:33:32 -05:00
f3687c5f9e
refactor: replace deprecated indexmap method 2024-02-02 20:05:29 +00:00
133632d1ad
fix(tray): vastly improve rendering performance 2024-02-01 22:38:14 +00:00
b3a70ce8fa
fix(tray): not handling checkbox items 2024-01-27 01:04:30 +00:00
thmasq
ddf91b18cc build: add focused and launcher feature flags 2024-01-13 22:08:31 -03:00
b004d5007c
fix(launcher): favourites not focused when opened
Fixes #225
2024-01-13 17:15:19 +00:00
c702f6fffa
refactor: major client code changes
This does away with `lazy_static` singletons for all the clients, instead putting them all inside a `Clients` struct on the `Ironbar` struct.

Client code has been refactored in places to accommodate this, and module code has been updated to get the clients the new way.

The Wayland client has been re-written from the ground up to remove a lot of the needless complications, provide a nicer interface and reduce some duplicate data.

The MPD music client has been overhauled to use the `mpd_utils` crate, which simplifies the code within Ironbar and should offer more robustness and better recovery when connection is lost to the server.

The launcher module in particular has been affected by the refactor.
2024-01-09 23:33:07 +00:00
57b57ed002
refactor: pass context into modules controllers
This paves the way to keep things tidier for the next refactors.
2024-01-07 23:42:34 +00:00
b4d75450ac
fix(regression): GTK refactor causing updates to be missed
Regression introduced by recent GTK refactor.

The `glib_recv` macros  previously using the passed in expression as the receiver, which was causing a new receiver to be created *every* time an event was received. This caused some peculiar behaviours where some events just never got through if sent too close to each other.

This was most obvious in the `workspaces` module.

Fixes #381
2023-12-31 15:56:41 +00:00
967801dc32
refactor(workspaces): avoid sending unknown update info 2023-12-31 00:50:41 +00:00
c356b22401
fix(workspaces): favourites missing inactive class on startup
Fixes #390
2023-12-30 23:30:03 +00:00
e847a84c21
refactor: fix casting based clippy warnings 2023-12-18 22:09:21 +00:00
bea442ed96
refactor: update gtk/glib, remove glib channels
This is a major refactor which updates GTK, GLib and GTK Layer Shell to their latest versions.

GLib channels, previously used for receiving events on the GLib Main Context thread have been deprecated and a new method for running Futures on the main thread has been added instead. This commit also replaces all the deprecated code with this.

As part of the above, a bug was uncovered related to creating the GLib main context inside the Tokio runtime. Spawning of Tokio tasks has been refactored to fix this.
2023-12-18 22:09:21 +00:00
Chris Maniewski
5f82b6e9e0
fix(tray): existing icons rendering as text 2023-12-02 22:26:15 +01:00
34ed6a9e11
fix(focused): not clearing when switching to empty workspace 2023-10-19 22:43:18 +01:00
f24b21d242
fix(focused): clear when no window is focused
Fixes #337
2023-10-19 20:34:18 +01:00
60bb69feec
feat: add widget and widget-container css classes on all widgets 2023-09-05 22:37:58 +01:00
Alice Janik
25c490b8b4
feat(workspaces): visible CSS selector 2023-08-25 20:50:51 -05:00
fea1f18524
refactor: fix new clippy warnings, fmt 2023-08-25 22:55:12 +01:00
yavko
9f65cf293d
feat(workspaces): add favorites and hidden options 2023-08-15 20:09:32 +01:00
8ec0237bc5
amend 54f0f232 2023-08-13 20:38:49 +01:00
9e2ac0f43d
Merge pull request #272 from JakeStanger/build/stray
build: replace `stray` with `system-tray` fork
2023-08-13 15:25:30 +01:00
b6e4ed6608
build: replace stray with system-tray fork
Fully resolves #166
2023-08-13 15:11:29 +01:00
54f0f232f2
fix(launcher): popup not closing when hover leaves widget
Fixes #224
2023-08-13 15:07:31 +01:00
901a86caa4
fix(custom): crash when clicking non-popup button 2023-08-01 21:29:00 +01:00
89ec06fc7b
fix(music): hide album art widget when no image 2023-07-26 22:03:27 +01:00
2367faab04
fix(image): using fallback in places it shouldn't 2023-07-26 21:49:45 +01:00
6f57ad47ac
fix(launcher): not setting focus state when opening favourite
Fixes partially #225.
2023-07-16 20:41:53 +01:00
87dd7646fc
fix(launcher): not clearing focused state when closing window
Fixes #213.
Fixes partially #225.
2023-07-16 20:24:23 +01:00
06251e293e
refactor: fix new pedantic clippy warnings 2023-07-16 20:17:32 +01:00
b7ee794bfc
feat(ipc): commands for opening/closing popups
Also includes some refactoring around related GTK helper code
2023-07-16 19:15:55 +01:00
738b9e3da7
feat(config): use default fallback with config instructions
When no config file is found, the bar will now automatically instead load a hard-coded default consisting of the `focused` and `clock` modules, and a `label` informing you the bar is not configured. Instructions are also printed to the log.
2023-07-04 17:38:39 +01:00
1a272e00fb
fix(label): not using markup 2023-07-04 17:38:08 +01:00
b310ea7636
feat(clock): localization support 2023-07-03 23:20:37 +01:00
1759945912
fix(music): correctly show/hide popup elements based on player capabilities 2023-06-30 19:27:00 +01:00
12053f111a
feat(music): progress/seek bar in popup
Resolves #128.
2023-06-30 19:26:49 +01:00
bd90167f4e
feat(clock): format option for popup header 2023-06-30 11:10:19 +01:00
7016f7f79e
refactor: use new smart pointer macros throughout codebase 2023-06-29 23:16:31 +01:00
cc181a8b6d
refactor: fix new clippy warnings 2023-06-29 16:57:47 +01:00
27f920d012
feat(launcher): slightly improve focus logic when clicking item with multiple windows 2023-06-29 16:42:03 +01:00
4a9410abac
Merge pull request #199 from JakeStanger/feat/cli-ipc
IPC, CLI and Dynamic Variables
2023-06-29 16:39:56 +01:00
ded50cca6f
feat: support for 'ironvar' dynamic variables 2023-06-29 16:26:54 +01:00
d121dc3d1e
refactor: fix unused var warning 2023-06-22 23:21:02 +01:00
5be0750792
Merge pull request #160 from JakeStanger/feat/upower-icon-size
feat(upower): icon size option
2023-06-18 17:01:57 +01:00
103a224355
fix(launcher): crash when focusing newly opened window in popup
Attempting to focus a newly opened window from the launcher popup attempted to close the popup directly in an invalid manner, which caused the bar to hard crash. The controller already handles this correctly, so removed this code.

Resolves #41 🎉
2023-06-18 16:21:35 +01:00
de3aa5d7b1
fix(focused): previous icon does not clear if new icon fails to load
Fixes #169
2023-06-17 16:43:58 +01:00
ac34c05d2e
fix(focused): empty icon rendered when show_icon = false
Fixes #184
2023-06-17 16:43:38 +01:00
e11177fea3
fix: add sensible class names for icon labels
BREAKING CHANGE: Where both textual and image icons are supported, CSS classes have changed to better reflect their targets. `.icon` has changed to `.icon-box` and `.icon` now targets the underlying element. `.label` has been changed to `.icon.text-icon`. This affects icons on the **music**, **workspaces**, and **clipboard** modules.

Resolves #185.
2023-06-12 22:25:23 +01:00
c3e9654cd3 feat(upower): icon size option
Adds missing `icon_size` config option to upower module.
2023-05-26 19:41:02 +01:00