* Refactored GET_TREE tremendously so that it returns a tree with proper, parseable values
* Wrote IPC tests but had to disable them in CI until further notice
- Added support for the i3 focus command: https://i3wm.org/docs/userguide.html#_focusing_moving_containers
- Laid down a lot of the foundation of i3 commands in general, including parsing
- CI now builds against the latest version of Mir's libraries
- Snap builds are now disabled while we wait to update to core24
Responses made to: https://bugzilla.redhat.com/show_bug.cgi?id=2272744#c3
- Added license headers to all of the source code files
- Added a `desktop-file-validate` line to the spec file
- Running tests in the spec file
- Added CI for fedora that builds the source rpm
* feature: selecting a sensible terminal, configurable terminal command, and notifying when we can't open it
* bugfix: using CMAKE_INSTALL_BINDIR for miracle-wm-sensible-terminal
Co-authored-by: Cosima Neidahl <opna2608@protonmail.com>
* enhancement: update program_exists check wihout bounds check
---------
Co-authored-by: Cosima Neidahl <opna2608@protonmail.com>
* Switching workspaces now emits a signal to i3 IPC clients which makes it so that waybar works
* Refactored a lot of workspace code for readability and usability