Commit Graph

869 Commits

Author SHA1 Message Date
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
Eon S. Jeon
2d4e1132df add AUR shield to README 2018-12-07 11:43:16 +09:00
Eon S. Jeon
68b7df3296 auto-float utility windows
- tests if window type is any of dialog, splash, and utility.
 - adds user option `floatUtility`.
- implements the feature suggested by user in #7
2018-12-06 18:36:32 +09:00
Eon S. Jeon
9e1f54559b configure screen gap per side
implements user suggestion #4
2018-12-06 03:47:49 +09:00
Eon S. Jeon
218631c4bf bump version number to 0.2 2018-12-05 22:29:24 +09:00
Eon S. Jeon
6bab433642 increase spinbox maximum value in config.ui 2018-12-04 11:59:59 +09:00
Eon S. Jeon
fcdd1c5f5f a note regarding keepAbove/Below for fullscreen
KWin currently keeps fullscreen windows on the top, regardless of
keepAbove/Below settings.

I initially wanted to allow other tiled windows to appear when user switches
out of fullscreen windows, but, since KWin ignores those values, it's
impossible to show other windows over fullscreen windows.
2018-12-04 09:36:09 +09:00
Eon S. Jeon
2c8bee79cb add features section to README 2018-12-04 08:38:44 +09:00
Eon S. Jeon
dcd2bcb2ae clean up indentation in README.md 2018-12-02 23:15:23 +09:00
Eon S. Jeon
3807263c97 limiting max/min window size
This is more like a piece testing code, since it's not verified, yet it
likely will prevent some window-breaking resizes.
2018-12-02 23:07:18 +09:00
Eon S. Jeon
00592e2744 do not resize un-resizeable windows 2018-11-23 16:07:17 +09:00
Eon S. Jeon
aa1209ccfd move screenshot.png to img/ 2018-11-19 16:10:26 +09:00
Eon S. Jeon
fa15f51e4f explain how to enable script configuration 2018-11-19 16:09:26 +09:00
Eon S. Jeon
db72a15b1d implement general screen gaps 2018-11-19 15:50:07 +09:00
Eon S. Jeon
12bcb25295 implement tile gaps in Tile layout 2018-11-19 15:46:02 +09:00
Eon S. Jeon
865ff063b6 add more ignoreClass 2018-11-19 07:31:19 +09:00
Eon S. Jeon
38bb5268bb rebuild when debug.ts changes 2018-11-19 07:30:41 +09:00
Eon S. Jeon
cf7836d0cc rearrange when client "activities" is changed.
User can change on which activities a client will show up, and this commit
triggers `arrange` whenever it happens.
2018-11-19 07:30:08 +09:00
Eon S. Jeon
611dfa867e add 'yakuake' to ignoreClass.
This is both a test and a change.
2018-11-19 06:37:19 +09:00
Eon S. Jeon
f3bf68b26a fix invalid default configs 2018-11-19 06:29:46 +09:00
Eon S. Jeon
099f64525c auto-float modal windows 2018-11-19 05:10:36 +09:00
Eon S. Jeon
0c1229b2f3 stop setting keepAbove for floating windows 2018-11-19 05:06:59 +09:00
Eon S. Jeon
39015a4aa6 clean up messy Rect, QRect definitions 2018-11-17 22:51:24 +09:00
Eon S. Jeon
3220129d81 move debugging stuffs out of common.ts 2018-11-17 21:10:16 +09:00
Eon S. Jeon
fddb4cccad move Config to common 2018-11-17 20:19:00 +09:00
Eon S. Jeon
9b90df2edf simplify engine.arrange tile list filtering
* Handle keepAbove/Below in one place
 * Let's just waste some more CPU time than make things complicated.
2018-11-17 20:18:39 +09:00
Eon S. Jeon
c7136f5c7d add a note for editing ui files to README 2018-11-17 19:20:55 +09:00
Eon S. Jeon
92b0cb4c53 use user config values
This also affects following features:
 * Layout switching
 * ignore/float filtering based on resourceClass
2018-11-17 19:17:51 +09:00
Eon S. Jeon
d6e707d82c
Merge pull request #3 from wallace11/patch-1
Added uninstall option
2018-11-17 19:04:32 +09:00
wallace11
9b14ac8c6f
Added uninstall option 2018-11-17 14:18:09 +09:00
Eon S. Jeon
cce5da1f4f add user config infrastructure 2018-11-16 18:56:05 +09:00
Eon S. Jeon
72b7b2cc68 implement rule-based filtering and floating 2018-11-16 15:40:48 +09:00
Eon S. Jeon
542f71a9db use optional parameter instaed of union w/ null 2018-11-16 14:58:15 +09:00
Eon S. Jeon
2831d25a30 Change default typescript outFile path to package directory 2018-11-16 14:15:29 +09:00