Commit Graph

351 Commits

Author SHA1 Message Date
Matthew Kosarek
7084a0541d
(#300) bugfix: patch for not being able to switch workspaces via waybar (#302)
Some checks are pending
Build & Test / build (push) Waiting to run
Snap Publish / Snap (amd64) (push) Waiting to run
Snap Publish / Snap (arm64) (push) Waiting to run
Snap Publish / Snap (armhf) (push) Waiting to run
2024-11-21 16:04:17 +00:00
Matthew Kosarek
0297e0a424
feature: implementing the remainder of the focus IPC (#298)
Some checks failed
Build & Test / build (push) Has been cancelled
Snap Publish / Snap (amd64) (push) Has been cancelled
Snap Publish / Snap (arm64) (push) Has been cancelled
Snap Publish / Snap (armhf) (push) Has been cancelled
2024-11-17 11:21:42 -05:00
Matthew Kosarek
514f39fbc2
feature: implementation of scratchpad minus the window selection feature (which is important) (#296)
Some checks failed
Build & Test / build (push) Has been cancelled
Snap Publish / Snap (amd64) (push) Has been cancelled
Snap Publish / Snap (arm64) (push) Has been cancelled
Snap Publish / Snap (armhf) (push) Has been cancelled
2024-11-12 21:40:41 +00:00
Matthew Kosarek
05fdc92f21 bugfix: typo in default configuration name 2024-11-07 14:01:18 -05:00
Matthew Kosarek
bffda06c25
feature: implemented named workspaces that can lack a number entirely (#288) 2024-11-05 07:04:01 -05:00
Cosima Neidahl
0a8809d436
CMakeLists.txt: Drop PKG_CONFIG_PATH modification (#211)
Leave that to the environment to fix, messing with it just makes setup more complicated.
2024-11-04 15:50:38 -05:00
TibboddiT
495fd35621
fix unpinning window to new workspace (#278) 2024-11-04 15:45:14 -05:00
Matthew Kosarek
ce24996ebf
feature: named workspaces + massively refactoring how workspaces are handled in preparation for named workspaces (#285)
- Implemented the beginnings of named workspaces
- Massively refactored how workspaces function by holding the list of workspaces in the outputs themselves and no longer making the list be static
2024-11-04 14:24:27 +00:00
Matthew Kosarek
176f8f04fe
refactor: update how we check configurations big time in preparation for showing errors in a second process (#284)
- Refactored FilesystemConfiguration big time to process errors all at once with a reference to line and column number
- Renamed MiracleConfig to Config
- Logging the errors when they happen, but prepared to write them to a process as well
2024-11-03 10:56:10 +00:00
Matthew Kosarek
fc1ab026ab
minor: remove libnotify because it is unnecessary (#283) 2024-11-01 16:49:00 +00:00
Matthew Kosarek
4bf11ee065
bugfix: we don't need to dereference the surface when getting the rectangle for our outlines (#279) 2024-11-01 09:51:32 +00:00
TibboddiT
9b186b0352
fix focus property in json payloads (#275) 2024-10-31 10:30:32 -04:00
Matthew Kosarek
5b63bcdc83
(#271) bugfix: fix for being unable to click shell components (#276) 2024-10-31 13:41:21 +00:00
Matthew Kosarek
c7e586d221 bugfix: if a window is initially full/maximized, we set it to restored after it is ready (#273) 2024-10-30 10:17:25 -04:00
Matthew Kosarek
5595a7dba2
bugfix: when we change workspaces, we now properly hide windows that are on hidden workspaces + we cannot focus windows on other workspaces + reworking of WindowManagerToolsAccessor to avoid singleton (#270) 2024-10-28 15:52:58 +00:00
Matthew Kosarek
d8e89cea93
bugfix: child windows should not animate their opening and movement (#268) 2024-10-27 16:25:49 +00:00
Matthew Kosarek
84e269fa05
bugfix: make it so that outlines on firefox are sane (#266) 2024-10-27 15:23:38 +00:00
Matthew Kosarek
fa979a5b7e
bugfix: adding my own fork of MinimalWindowManager to accomodate better dragging support (#263)
- Fixes #90
- Makes it so that the default floating keybind is Meta + Shift + Space
- Fork MiinimalWindowManager for our own purposes
2024-10-26 07:48:12 +00:00
Matthew Kosarek
6c171eb0b0
Merge pull request #261 from miracle-wm-org/release/0.3.7
Release v0.3.7
2024-10-22 10:04:39 -04:00
Matthew Kosarek
36b8048924 Merge branch 'develop' into release/0.3.7 2024-10-22 09:59:12 -04:00
Matthew Kosarek
251f10b308 bugfix: fixing build errors when cherry-picking 2024-10-22 09:50:10 -04:00
Matthew Kosarek
497c1889df Bump to version 0.3.7 2024-10-22 09:46:29 -04:00
Matthew Kosarek
44153476da bugfix: fix processing exec IPC call (#260)
This fixes the command that is sent to the exec IPC call and
makes sure that we don't parse incorrect params into options.
2024-10-22 09:45:25 -04:00
Matthew Kosarek
faf0129188
bugfix: fix processing exec IPC call (#260)
This fixes the command that is sent to the exec IPC call and
makes sure that we don't parse incorrect params into options.
2024-10-22 13:41:36 +00:00
Matthew Kosarek
5e1a4ba23d
feature: support for the i3 layout command (#259)
- Implemented the i3 layout command per https://i3wm.org/docs/userguide.html#manipulating_layout
- Added integration tests for the i3 layout command
2024-10-15 18:23:51 +00:00
Matthew Kosarek
2e533d55c1
feature: add static display config when running with a systemd session (#258) 2024-10-14 10:02:46 -04:00
Matthew Kosarek
58cd8cc81b
feature: added the ability to move windows between workspaces via mirclemsg + testing (#257)
- Most movement commands for windows/containers between workspaces now function appropriately
- Integration tests for moving windows between workspaces
2024-10-13 14:46:51 +00:00
Matthew Kosarek
e48e3feaf2
feature: workspace switching IPC support (#256)
- 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
2024-10-10 23:46:00 +00:00
Matthew Kosarek
cd4a6efa54
feature: implementation of GET_TREE via ipc + integration tests (#250)
* 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
2024-10-07 17:54:13 +00:00
Matthew Kosarek
81066fc779
bugfix: tiled windows now always get forced into an initial size and windows that are default to maximized/fullscreened are floating by default (#249)
- We always set the initial size when placing in the tiling grid
- We always place windows that want to be in any state other than "regular" as floating windows
2024-10-01 20:37:59 +00:00
Matthew Kosarek
6b23e6724f
bugfix: taking iborder size into account when laying out a new window (#247) 2024-10-01 10:56:57 +00:00
Matthew Kosarek
3b2082d137
Merge pull request #246 from miracle-wm-org/release/0.3.6
release: v0.3.6
2024-09-25 18:53:27 -04:00
Matthew Kosarek
a50768ad2b release: update version to 0.3.6 2024-09-25 17:51:37 -04:00
Matthew Kosarek
d74d495800 feature: upgrade renderer to 2.18 wto properly use src_bounds (#244) 2024-09-25 17:51:10 -04:00
Pranav Sharma
ec613765c9 Update README.md to point to correct wiki url (#241) 2024-09-25 17:50:55 -04:00
Matthew Kosarek
2efe0a670e feature: adding a reasonable CoC (#240) 2024-09-25 17:50:48 -04:00
Matthew Kosarek
2bb62f1266
feature: upgrade renderer to 2.18 wto properly use src_bounds (#244) 2024-09-25 07:01:58 -04:00
Matthew Kosarek
826e5a844b
feature: implementation of stacking windows (#242) 2024-09-10 10:09:54 +00:00
Pranav Sharma
1b88e8bd2b
Update README.md to point to correct wiki url (#241) 2024-09-10 09:58:27 +00:00
Matthew Kosarek
3085d64bb8
feature: adding a reasonable CoC (#240) 2024-09-08 19:41:47 +00:00
Matthew Kosarek
98312534b5 Merge branch 'release/0.3.5' into develop 2024-09-08 10:05:34 -04:00
Matthew Kosarek
3f8c894b28 version: bump to 0.3.5 2024-09-07 15:42:42 -04:00
Matthew Kosarek
639e4e1674 feature: miracle can now integrate with systemd in a meaningful way (#228)
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.
2024-09-07 15:42:08 -04:00
Matthew Kosarek
3362984bf0 (#236) XWayland apps nologner steal focus from other apps even though they're hidden (#237) 2024-09-07 15:40:50 -04:00
Matthew Kosarek
5b5f9902da bugfix: shell components can now be clicked in all situations (#227) 2024-09-07 15:40:42 -04:00
Neal Gompa (ニール・ゴンパ)
727db1b4ad fix: Drop broken method for seeding default configuration (#226)
With b4fa88e9fa, the main method for
initializing default configuration copies over a whole configuration
directory for the purpose of being able to handle a full set of
configuration all at once. This is the much more coherent and
expected method for seeding default configuration.

Thus, we do not need the method for copying a single file anymore,
and this change drops it to simplify the understanding of seeding
configuration in MiracleWM.
2024-09-07 15:40:22 -04:00
Matthew Kosarek
f965e4eb67 feature: create a miraclemsg subproject (#224) 2024-09-07 15:40:13 -04:00
Matthew Kosarek
685bfa742a docs: update README for new URL (#225) 2024-09-07 15:40:04 -04:00
Neal Gompa (ニール・ゴンパ)
78433c0807 fix: Correctly handle default configuration when user dirs do not exist (#222)
We assumed that the user configuration directory hierarchy always
exists, but with a completely fresh installation, it does not.

Consequently, populating the default configuration silently failed
and the environment is broken.

To resolve this issue, we now check to see if the directory the
configuration file lives in exists, and we create it if it does not.

Additionally, we now support populating a full set of default
configuration in case multiple files and folders are required for
initial configuration.
2024-09-07 15:39:53 -04:00
Matthew Kosarek
690da3a8f4
feature: miracle can now integrate with systemd in a meaningful way (#228)
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.
2024-09-07 13:07:58 +00:00