Eon S. Jeon
0f8b4edaf2
detailed client resize/move event
2019-01-18 17:13:18 +09:00
Eon S. Jeon
32154d4f4e
cleanup signal binding logic
...
- `windowShown` signal disconnection
- `onClientChanged` for handling general rearranging signasl
2019-01-17 02:36:47 +09:00
Eon S. Jeon
00a44f2b0c
update years in copyright notice
2019-01-16 14:29:42 +09:00
Eon S. Jeon
b1ca95c3f6
split LayoutStorage
into a separate file
2019-01-16 14:23:05 +09:00
Eon S. Jeon
3e7bdc3f7a
remove unnecessary 1 px shift in tiling layout
...
The shift caused unwanted 1 px gap b/w master and stack.
2019-01-03 11:38:12 +09:00
Eon S. Jeon
050575c9d2
refactor tile stakcing logic
...
This specific logic can be reused in other layouts, which will be
implemented soon(?)
2019-01-03 04:31:04 +09:00
Eon S. Jeon
c9d2b9e851
do not apply layout if there's no tiles
2019-01-02 21:29:46 +09:00
Eon S. Jeon
841c540984
allow moving focus when focusing ignored window
2019-01-02 19:12:22 +09:00
L1Q
db0754ffb7
Fix a typo
...
titel -> title
2018-12-27 05:01:32 +02:00
Eon S. Jeon
7c54d59764
fix regression: size enforcement blocks fullscreen
...
If an application tries to enable fullscreen for its window, KWin fires up
`geometryChanged` signal before `fullScreenChanged`. This, after 10ms, returns
the window back to its original position.
2018-12-26 17:26:59 +09:00
Eon S. Jeon
c2576c19d6
fix regression related to floating
...
un-floating tile threw it back to previous window
2018-12-25 22:19:51 +09:00
Eon S. Jeon
4a485dba6e
add instruction for installing KWin script package
2018-12-24 21:36:27 +09:00
Eon S. Jeon
9f0ec52613
bump version number to 0.3
2018-12-24 21:20:50 +09:00
Eon S. Jeon
36c97226d1
distinguish QByteArray
from string
...
there was a type safety issue during development.
2018-12-24 20:55:42 +09:00
Eon S. Jeon
b631f44ab4
fix stupid regression
...
- I'll just call it a stupid regression, becuase it is.
2018-12-24 20:31:01 +09:00
Eon S. Jeon
75e4151c5c
delayed enforcement of tile geometry
...
- the behaviour remains the same as before, but prevents windows
from freezing by delaying geoemtry commit
- would likely resolve issue #16 too
2018-12-24 18:49:11 +09:00
Eon S. Jeon
cfa9a38bb6
better debugging message for Engine.arrange
2018-12-24 14:05:51 +09:00
Eon S. Jeon
7d5ea74cea
fix source code wildcard pattern
2018-12-24 13:52:37 +09:00
Eon S. Jeon
b5cc33e764
prevent concurrent rearrangement
...
- add a flag to protect the critical area
- possible fix for issue #16
2018-12-19 08:36:48 +09:00
Eon S. Jeon
cb7f96837b
fix unit size computation
...
include padding(title + border) size in unit factor computation
2018-12-19 08:17:03 +09:00
Eon S. Jeon
7ebfe76d47
float tiles as soon as manually moved/resized.
...
- there was a race condition b/w moveResizeChanged and screenChanged
- screenChanged signals for floating tiles are effectively ignored
2018-12-18 20:36:44 +09:00
Eon S. Jeon
d249ea6386
add debug printing option
2018-12-18 20:14:06 +09:00
Eon S. Jeon
b9fb00ae90
adjust tile geometry whenever it is updated
2018-12-18 19:47:36 +09:00
Eon S. Jeon
8023304921
Add issue templates
2018-12-17 16:28:10 +09:00
Eon S. Jeon
18cba1c8d3
respect window resize increment hints
...
- calculate window size based on increment hint, if available.
- fixes freezing issues with xterm, lxterm, and similar applications
2018-12-17 10:41:19 +09:00
Eon S. Jeon
5caa4e0633
disconnect signals when script is disable
...
- signals are automatically disconnected when the script is disable
(either through `KWin Script` or `make unload`)
- prevents old instances from causing race condition and freezes
- addresses issue #16
2018-12-17 06:41:58 +09:00
Eon S. Jeon
faac0df29c
remove unnecessary method scope binding
2018-12-17 05:40:45 +09:00
Eon S. Jeon
4ad8707672
manage clients only after being shown
...
- delay registering tile until client is actually mapped
- resolves issues related to #14
2018-12-16 12:16:33 +09:00
Eon S. Jeon
e8db3e3020
disable debug output
2018-12-14 12:02:41 +09:00
Eon S. Jeon
af21bb8b96
separate layout per desktop/activity
...
- update key generation method in `LayoutStorage`
- add corresponding config options
- implements feature from #15
2018-12-14 11:14:05 +09:00
Eon S. Jeon
b936cfa434
implement LayoutStorage
...
- replaces `Screen`-based layout management
2018-12-14 10:14:29 +09:00
Eon S. Jeon
49f1d53a96
improve event debugging
2018-12-13 18:46:38 +09:00
Eon S. Jeon
cf4c2d3d52
fix regression: float moved/resized windows
...
This is a regression caused by `Tile` refactoring.
The tiles should retain its geometry after moved/resized with mouse.
2018-12-12 13:16:43 +09:00
Eon S. Jeon
61e00f0147
assign QRect
to geometry of floating tiles
...
The same reason as commit 87d9683
.
2018-12-12 13:07:07 +09:00
Eon S. Jeon
87d96833b8
assign QRect
to client.geometry
...
Instead of updating fields of `client.geometry` one by one, assign a
whole new `QRect` instance. This prevents race condition caused by a
series of partial updates.
Addresses bug #13 .
2018-12-12 08:33:39 +09:00
Eon S. Jeon
0c36785851
implement jiggleTiles
option
...
- jiggles tiles when desktop is switched.
- a workaround for bug #12 , where clients ocasionally fail to re-render.
- this feature is a brutal hack, thus is disabled by default.
2018-12-09 19:07:12 +09:00
Eon S. Jeon
db66747ea3
separate Qt definition file
2018-12-09 18:07:08 +09:00
Eon S. Jeon
a61ca5437e
add/remove debug messages
2018-12-09 15:41:45 +09:00
Eon S. Jeon
a460006d0b
fix window class rule regression bug
2018-12-09 13:29:50 +09:00
Eon S. Jeon
00c0891813
refactor Tile
2018-12-09 13:16:28 +09:00
Eon S. Jeon
77ed39b327
parametrized Engine::setMaster
2018-12-08 23:34:15 +09:00
Eon S. Jeon
97f3226565
update README (Set Master, Window to Screen)
2018-12-08 10:25:47 +09:00
Eon S. Jeon
e8ef825d7e
support moving windows b/w screens
...
- correctly handle related KWin features:
* `Window to Next Screen`
* `Window to Previous Screen`
2018-12-08 10:05:35 +09:00
Eon S. Jeon
ab6ddf7f3b
Config
in a separate file
2018-12-08 02:45:40 +09:00
Eon S. Jeon
687943f10c
split layout.ts
2018-12-08 01:46:38 +09:00
Eon S. Jeon
a82f86fdc2
automatically compile all TS files
2018-12-08 01:44:28 +09:00
Eon S. Jeon
6b40e423f1
code cleanup
...
- remove expired TODOs
- sorting and grouping parts
- simplify geometry value assignment
2018-12-08 01:10:55 +09:00
Eon S. Jeon
9a987e1447
add keybindings for existing layouts
...
- implements the feature suggested by user (#5 )
2018-12-07 16:52:00 +09:00
Eon S. Jeon
168e75c656
optional data parameter for user input handling
2018-12-07 16:51:21 +09:00
Eon S. Jeon
a164d8c102
add option "Remove borders of tiled windows"
...
- sets `noBorder` for tileables
- adds user option `noTileBorder`
- implements a feature suggested by user in #8
2018-12-07 12:16:50 +09:00