mirror of
https://github.com/JakeStanger/ironbar.git
synced 2026-07-11 07:15:19 +01:00
[PR #19] [MERGED] Major module refactor #3265
Labels
No labels
A:Build
A:CI
A:Client
A:Config
A:Core
A:Documentation
A:Documentation
A:IPC
A:Testing
A:UX/UI
blocked
BREAKING CHANGE
duplicate
good first issue
GTK4
help wanted
invalid
M:Battery
M:Battery
M:Bindmode
M:Bluetooth
M:Brightness
M:Cairo
M:Clipboard
M:Clock
M:Clock
M:Custom
M:Focused
M:Keyboard
M:Launcher
M:Menu
M:Music
M:Music
M:Music
M:Network Manager
M:Notifications
M:SysInfo
M:Tray
M:Volume
M:Workspaces
partially resolved
P:Critical
P:High
P:Low
P:Medium
pull-request
T:Bug
T:Bug
T:Core Enhancement
T:Module Enhancement
T:New Module
T:Question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
JakeStanger/ironbar#3265
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/JakeStanger/ironbar/pull/19
Author: @JakeStanger
Created: 9/25/2022
Status: ✅ Merged
Merged: 9/25/2022
Merged by: @JakeStanger
Base:
master← Head:refactor/controller📝 Commits (3)
8deca0cexperiment with refactoring into MVC-like model47c220aMerge branch 'master' into refactor/controller801b81arefactor: major module restructuring📊 Changes
26 files changed (+2353 additions, -1818 deletions)
View changed files
📝
Cargo.lock(+235 -264)📝
Cargo.toml(+6 -6)📝
src/bar.rs(+133 -42)➕
src/bridge_channel.rs(+43 -0)📝
src/collection.rs(+15 -0)📝
src/main.rs(+33 -20)➕
src/modules/clock.rs(+114 -0)➖
src/modules/clock/mod.rs(+0 -71)➖
src/modules/clock/popup.rs(+0 -40)📝
src/modules/focused.rs(+80 -44)📝
src/modules/launcher/item.rs(+244 -237)📝
src/modules/launcher/mod.rs(+474 -262)📝
src/modules/launcher/open_state.rs(+5 -13)➖
src/modules/launcher/popup.rs(+0 -36)📝
src/modules/mod.rs(+57 -5)📝
src/modules/mpd/client.rs(+90 -19)📝
src/modules/mpd/mod.rs(+308 -117)➖
src/modules/mpd/popup.rs(+0 -175)📝
src/modules/script.rs(+53 -31)📝
src/modules/sysinfo.rs(+47 -21)...and 6 more files
📄 Description
Modules now implement a "controller", which allows for separation of logic from UI code and enforces a tighter structure around how modules should be written. The introduction of this change required major refactoring or even rewriting of all modules.
This also better integrates the popup into modules, making it easier for data to be passed around without fetching the same thing twice
The refactor also improves some client code, switching from
kswayto the much more stableswayipc-async. Partial multi-monitor for the tray module has been added.BREAKING CHANGE: The
mpdmodule config has changed, moving the icons to their own object.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.