- Most movement commands for windows/containers between workspaces now function appropriately
- Integration tests for moving windows between workspaces
- Add support for "workspace next/prev/next_on_output/prev_on_output"
- Add support for "workspace back_and_forth"
- Add support for "workspace <name>"
- Add support for "workspace number <name>"
- Integration tests
* 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
Miracle now supports running through systemd, including logging to the
journal and invoking processes as transient units through systemd-run.
This is controlled as a build-time feature in CMake.
- Begin an implementation for FloatingTreeContainer
- Hide FloatingTreeContainer behind a feature flag
- Added the ability to apply filters on rendering
- Further refactoring of how Containers are handled in general
* refactor: select_window_from_point is now on WorkspaceContent
* refactor: moving more bits to WorkspaceContent, including advise_new_window
* refactor: various reworks, including toggle_floating
* refactor: renaming OutputContent to Output, WorkspaceContent to Workspace, + other refactors
* refactor: remove Workspace::get_tree and even fix a bug!
* backout: renderer.cpp changes
- bugfix: borders disappearing behind other windows on floating windows
- bugfix: animation percentage not being clamped between 0 and 1
- feature: IPC_GET_VERSION
- feature: IPC_GET_BINDING_MODES
- feature: IPC_GET_BINDING_STATE
- feature: IPC_GET_OUTPUTS
- 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
- Refactored the `Node` concept into `LeafNode`s and `ParentNode`s so that we always know what we're working with
- Implemented the concept of a `Node::commit_changes()` which is used at the end of a series of complex operations to push changes to the screen at the end.
- Prepared the `TilingWindowTree` for testing, which will come next