Updated README.md
Updated the README to contain addition Issues & Limitations. Added entry about features of AWM - the WM itself and fullscreen mode. Fixed typos and spelling.
This commit is contained in:
parent
571e595c3b
commit
17c1dfb9db
35
README.md
35
README.md
|
|
@ -32,7 +32,7 @@ file. But the short version is as followed:
|
||||||
|
|
||||||
- When `awm` is executed, it will go and find all windows associated with
|
- When `awm` is executed, it will go and find all windows associated with
|
||||||
Alacritty (up to 4 at most).
|
Alacritty (up to 4 at most).
|
||||||
- Once it has found the windows, it organise them based on a set of predefined
|
- Once it has found the windows, it organises them based on a set of predefined
|
||||||
configurations depending on the number of windows found.
|
configurations depending on the number of windows found.
|
||||||
- This occurs simultaneously to give a smooth organisation transition for any
|
- This occurs simultaneously to give a smooth organisation transition for any
|
||||||
number of Alacritty terminal windows.
|
number of Alacritty terminal windows.
|
||||||
|
|
@ -48,7 +48,7 @@ placing it somewhere in your local user-space and adding that to your path. You
|
||||||
may wish to keep the compiled binary in the repo and have your path point to that
|
may wish to keep the compiled binary in the repo and have your path point to that
|
||||||
location.
|
location.
|
||||||
|
|
||||||
Compiling can be performed with any compiler. There's no linking of other libries
|
Compiling can be performed with any compiler. There's no linking of other libraries
|
||||||
or C++ source files, assuming that the appropriate header files are installed to
|
or C++ source files, assuming that the appropriate header files are installed to
|
||||||
the system, it should just compile.
|
the system, it should just compile.
|
||||||
|
|
||||||
|
|
@ -95,7 +95,21 @@ Alacritty windows accordingly.
|
||||||
**Note:** AWM does not listen for when Alacritty windows are created or destroyed.
|
**Note:** AWM does not listen for when Alacritty windows are created or destroyed.
|
||||||
It simply organises windows it's able to collect in a tiled manner when told to.
|
It simply organises windows it's able to collect in a tiled manner when told to.
|
||||||
|
|
||||||
|
## AWM Features
|
||||||
|
AWM comes with a couple different features, notably the WM itself.
|
||||||
|
- Window Manager – the core functionality of AWM. This goes without say that it's
|
||||||
|
the biggest and primary feature of AWM (AWM does what it says on the tin). It
|
||||||
|
supports up to four layouts of Alacritty instances, but does not organise new
|
||||||
|
Alacritty windows.
|
||||||
|
- Fullscreen Terminals – AWM supports toggling Alacritty terminals into fullscreen.
|
||||||
|
This doesn't hide the taskbar, nor consume the entire desktop work area, but it does
|
||||||
|
take up majority of the desktop. This allows for greater focus and work area within
|
||||||
|
a selected terminal, hiding other windows behind. Run `awm --fullscreen` to toggle
|
||||||
|
this behaviour. When exiting fullscreen, the window will be placed back in its
|
||||||
|
original tiled configuration with other Alacritty instances.
|
||||||
|
|
||||||
## Known Issues & Limitations
|
## Known Issues & Limitations
|
||||||
|
### With AWM Itself
|
||||||
As discussed in the note above, and elsewhere, AWM **does not** add event hooks
|
As discussed in the note above, and elsewhere, AWM **does not** add event hooks
|
||||||
to the system, or listen to any event hooks that might trigger when an Alacritty
|
to the system, or listen to any event hooks that might trigger when an Alacritty
|
||||||
window is created or destroyed. For this reason, AWM must be manually told when
|
window is created or destroyed. For this reason, AWM must be manually told when
|
||||||
|
|
@ -109,6 +123,23 @@ Manager is open, AWM will fail to organise the windows due to Task Manager. It's
|
||||||
currently unknown why this bug exists without `-O3`, and doesn't with the flag,
|
currently unknown why this bug exists without `-O3`, and doesn't with the flag,
|
||||||
but it can be easily avoided with the `-O3` flag using `g++`. A future patch may
|
but it can be easily avoided with the `-O3` flag using `g++`. A future patch may
|
||||||
be applied to this in the future.
|
be applied to this in the future.
|
||||||
|
### Due to Alacritty
|
||||||
|
It seems that there might be a few issues as a result of Alacritty (or perhaps
|
||||||
|
within the dependencies it uses). Firstly, after some more in-depth experimentation
|
||||||
|
of the Win32 API, it seems as though Alacritty does not set the correct flags on a
|
||||||
|
window defined in the API to indicate that a window is minimised. This makes it
|
||||||
|
impossible for AWM to correctly filter non-viewable terminals out of organisation.
|
||||||
|
### Shared & Due to Knowledge
|
||||||
|
When a new window is created in Alacritty, it simply spawns a new Console Host
|
||||||
|
program (`conhost.exe`). This is specific to Windows and whose purpose is out of
|
||||||
|
the scope of this document. However, it means that a single `alacritty.exe` program
|
||||||
|
exists with multiple conhost applications running PowerShell. From experiments,
|
||||||
|
you can't simply change the window's context of conhost apps without causing some
|
||||||
|
mischievious behaviour. A conhost app will refer back to Alacritty in some way,
|
||||||
|
but it's not possible to refer to Alacritty for changing the context of a window.
|
||||||
|
Or at least, it's not possible with the current knowledge of the project. Alacritty
|
||||||
|
might be behaving exactly as intended of Windows' apps, but as it stands, AWM
|
||||||
|
cannot organise new windows of Alacritty, only new instances.
|
||||||
|
|
||||||
## Licence
|
## Licence
|
||||||
This project is licenced until the GNU GPLv3+ licence agreement, which can be
|
This project is licenced until the GNU GPLv3+ licence agreement, which can be
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user