i added support for loading custom tinted-theming themes such as from https://github.com/tinted-theming/schemes
the screenshot is using ayu_dark: https://github.com/tinted-theming/schemes/blob/spec-0.11/base16/ayu-dark.yaml
i added support for loading custom tinted-theming themes such as from https://github.com/tinted-theming/schemes
the screenshot is using ayu_dark: https://github.com/tinted-theming/schemes/blob/spec-0.11/base16/ayu-dark.yaml
i added the base code for base16 themes and the skeleton sidebar (no buttons or actual pages yet)
i plan for the sidebar to do something with navigation so like a playlists button and because i want the music player to be minimal it will probably become floating and will probably become a small menu icon that when clicked will expose the Playlists button
i will probably make some sort of abstract button wrapper since i still need to make the actual full screen player ui which will at least have 3 icons (pause/play, backwards, forwards)
the slow resizing issue was fixed by using gpui’s git repository and not crates.io
the next steps are to add custom theme support which means i will need to also locate a config folder; i plan on using https://codeberg.org/dirs/directories-rs; colors will probably be in yaml so that you can copy and paste tinted-theming schemes from https://github.com/tinted-theming/schemes other config settings will likely be in toml
oh also i will need to set up automatic binary releases for amd64 and arm64 on linux and macos with github actions, which should be easier because it already uses Nix
gpui at least with the crates.io version has very slow resizing so i might switch to iced
i have some ideas for how data will be stored:
i have also disabled bounds on the gpui window, so thats the screenshot
I set up the flake at first using rust-overlay but realized crane is probably better so I asked opencode to refactor it to use crane
The default gpui example now runs
i setup the project
there are many options in zig for using wayland + vulkan together but i decided on using wio https://github.com/ypsvlq/wio instead of other options like raylib because it exposes the wl_display and wl_surface we would need to make the window display on top of everything else using wayland protocols
for now though it is just an orange square example