diff --git a/docs/GTK4.md b/docs/GTK4.md new file mode 100644 index 0000000..7c11838 --- /dev/null +++ b/docs/GTK4.md @@ -0,0 +1,48 @@ +As the GTK3 and gtk-layer-shell crates are now deprecated, there is a need to move to GTK 4. + +The `refactor/gtk-4` branch and PR [#112](https://github.com/JakeStanger/ironbar/pull/112) are tracking the code upgrade. +This page documents the port progress. + +Assistance in the porting process is very much welcomed, no matter how small. + +As many modules have not been ported, the default feature set will fail to compile. +It is therefore necessary to compile manually with `--no-default-features`, enabling only the working modules: + +```shell +cargo run --no-default-features \ + --features config+all,clock,cairo +``` + +A full list of feature flags can be found [here](Compiling#features). + +## Core functionality + +| Area | Status | Notes | +|-----------------|--------|-------------------------------------------------------------------------------------------------| +| Bar | ✅ | | +| Popups | ⚠️ | GTK4 removed window resize event - always display in position zero. | +| Theming - CSS | ✅ | | +| Theming - Icons | ⚠️ | GTK4 does not support icon theming - always uses default theme. Image scaling may be incorrect. | + +## Modules + +| Module | Status | Notes | +|-----------------|--------|------------------------------------------------------------------------------------------------------------------------------------------| +| Cairo | ✅ | | +| Clipboard | ❌ | | +| Clock | ✅ | | +| Custom | ❌ | | +| Focused | ✅ | | +| Keyboard | ❌ | | +| Label | ✅ | | +| Launcher | ❌ | | +| Music | ❌ | | +| Network Manager | ❌ | | +| Notifications | ❌ | | +| Script | ❌ | | +| Sway Mode | ❌ | | +| SysInfo | ❌ | | +| Tray | ❌ | GTK4 removes widgets required to move the tray. No `libdbusmenu-gtk4` either. will need to manually re-create menus with custom widgets. | +| UPower | ❌ | | +| Volume | ❌ | | +| Workspaces | ❌ | | \ No newline at end of file diff --git a/docs/_Sidebar.md b/docs/_Sidebar.md index 1463115..260518c 100644 --- a/docs/_Sidebar.md +++ b/docs/_Sidebar.md @@ -4,6 +4,7 @@ - [Configuration guide](configuration-guide) - [Images](images) - [Styling guide](styling-guide) +- [GTK 4 Port](gtk4) # Dynamic content