Commit Graph

452 Commits

Author SHA1 Message Date
Eon S. Jeon
5c619a633d replace activity/desktop event to context event 2019-02-24 15:46:33 +09:00
Eon S. Jeon
b07a2c92f3 remove unused screenCount property 2019-02-24 15:41:09 +09:00
Eon S. Jeon
096ce54642 regression: unset keepBelow when fullscreened 2019-02-24 15:30:21 +09:00
Eon S. Jeon
534d8803eb code clean up 2019-02-24 15:20:00 +09:00
Eon S. Jeon
55c787827b utilize FreeTile state in QuarterLayout 2019-02-24 04:47:52 +09:00
Eon S. Jeon
f1af74c928 remove keepBelow property from Window
the value of `keepBelow` is decided by the state of window. No need to
rely on external decision.
2019-02-24 04:44:33 +09:00
Eon S. Jeon
8125f130c2 simplify logical window state management 2019-02-24 04:15:28 +09:00
Eon S. Jeon
27ea7b5fd3 use find to find all source files 2019-02-23 04:04:44 +09:00
Eon S. Jeon
8f38b1618e implement KWinWindow.toString
also fixes `KWin.TopLevel` signature
2019-02-23 04:04:03 +09:00
Eon S. Jeon
4cd3fe396c implement KWinContext.toString 2019-02-23 03:46:03 +09:00
Eon S. Jeon
cc09bb5649 define IConfig and move Config to driver layer 2019-02-23 03:42:01 +09:00
Eon S. Jeon
819a32560a relocate window.ts to engine/ 2019-02-23 00:52:41 +09:00
Eon S. Jeon
c0efcd6776 refactor: rename common/* 2019-02-23 00:51:50 +09:00
Eon S. Jeon
aded26e1eb refactor: move ILayout to interfaces.ts 2019-02-22 21:00:14 +09:00
Eon S. Jeon
49874d33bf refactor: move UserInput to interfaces.ts 2019-02-22 20:57:30 +09:00
Eon S. Jeon
0192f16a65 refactor: split Rect to a new file 2019-02-22 20:56:15 +09:00
Eon S. Jeon
7f01e9e465 make Rect unaware of QRect 2019-02-22 20:54:24 +09:00
Eon S. Jeon
117066007f fill out and apply IDriver interface 2019-02-22 20:40:49 +09:00
Eon S. Jeon
cc6221d88d split KWinContext to a new file 2019-02-22 20:34:37 +09:00
Eon S. Jeon
9ce8560baf move window focus changing to driver 2019-02-22 20:33:49 +09:00
Eon S. Jeon
4cc65175fb declare and implement IDriverWindow and IDriverContext 2019-02-21 17:31:16 +09:00
Eon S. Jeon
b658bed75b restructure directory 2019-02-21 15:05:23 +09:00
Eon S. Jeon
2c9da80158 split setTimeout out of KWinDriver 2019-02-21 13:45:55 +09:00
Eon S. Jeon
babf31f76f implement KWinDriver.forEachScreen
this eliminates any calls to `KWinContext.withScreen`. It's better not to
fiddle with driver context information inside the engine layer.
2019-02-21 10:33:31 +09:00
Eon S. Jeon
a3d0ed981c implement Window.context 2019-02-21 10:26:48 +09:00
Eon S. Jeon
81a2a4f3a0 simplify activity name retrieval inside KwinContext
No need to build a separate mapping inside `Driver`. `KWinContext` is a
part of driver layer, so let's just access `activityInfo` QML object
directly.
2019-02-21 10:13:54 +09:00
Eon S. Jeon
2ffbe74669 refactor: adjust names related to Context class 2019-02-21 10:02:37 +09:00
Eon S. Jeon
dec01eed74 replace term "tile" w/ "window" 2019-02-21 09:51:53 +09:00
Eon S. Jeon
cbc1b6ab06 bump version number to 0.5 2019-02-18 15:55:19 +09:00
Eon S. Jeon
b979fc3574 move setLayout to LayoutStore 2019-02-15 19:41:59 +09:00
Eon S. Jeon
cddec7d4ec Context.includes should also check screen 2019-02-15 14:02:37 +09:00
Eon S. Jeon
378fae3d65 simplify Tile class interface
* replace `toggleFloat` with `float` setter
 * remove `isGeometryChanged` - too simple
 * remove one-shot properties by moving filtering into `Tile`
   (`className`, `modal`, `title`, `special`, `utility`)
 * reorder members
2019-02-15 14:00:28 +09:00
Eon S. Jeon
42c946551e implement activity ID to name translation
* Necessary to implement #23
 * Tried `DataEngine` method, but was unreliable.
2019-02-15 02:38:18 +09:00
Eon S. Jeon
33ce8cae54 split context information into Context 2019-02-15 01:19:58 +09:00
Eon S. Jeon
8b1e607d17 bugfix: quarter layout multi-screen bug
include XY-coord of the area in calcuation.
2019-02-14 16:34:38 +09:00
Eon S. Jeon
97e08fc580 add DataSource definition 2019-02-12 08:54:19 +09:00
Eon S. Jeon
f7ab98778c option for ignoring activity and screen
* ignore screen with screen id
 * ignore activity with **activity id**
   - need to implement activity id -> activity name mapping
2019-02-12 08:54:19 +09:00
Eon S. Jeon
40d8975611 regression: fullscreeen kept below in some cases 2019-02-12 08:53:00 +09:00
Eon S. Jeon
2f3b91adf6 regression: keep floating windows over tiled ones 2019-02-12 03:40:24 +09:00
Eon S. Jeon
52cd58396d uppercase constant variables 2019-02-11 18:46:07 +09:00
Eon S. Jeon
3ef7b89a3f Tile class refactor
* rather minor changes to ensure separation b/w layers
 * prevent direct access
   - make `client` private
   - add new properties to `Tile`
 * move client activation from driver to `Tile`
 * remove unused functions
2019-02-11 18:19:00 +09:00
Eon S. Jeon
1101284321 simplify isEnabled into enabled property 2019-02-11 03:13:21 +09:00
Eon S. Jeon
1129b6a6e6 ignore/float windows by matching title string
* dumb substring match on window title
 * implements user suggested feature (#23)
2019-02-11 02:29:24 +09:00
Eon S. Jeon
7282e32073 organize config UI
* split gap settings into a new tab
 * rename & re-label some widgets
 * remove superficial tab index info
2019-02-11 01:30:57 +09:00
Eon S. Jeon
4673135436 implement monocle maximization option
* When enabled, always maximizes tiles in monocle layout
 * implements user suggestion (#28)
2019-02-10 19:35:38 +09:00
Eon S. Jeon
241a9445b9 make ILayout.handleUserInput optional 2019-02-10 19:16:05 +09:00
Eon S. Jeon
b85b34c89a add option for Quarter layout 2019-02-10 18:59:50 +09:00
Eon S. Jeon
518a21db9a disable keepBlow of soft-float tiles in quarter 2019-02-10 17:54:48 +09:00
Eon S. Jeon
f1f125a40b soft-float tiles in quarter layout
Instead of force-floating extra tiles, set their geometries to their
`floatGeometry`. This doesn't mess up other logic.
2019-02-10 17:16:37 +09:00
Eon S. Jeon
8c72bf3b5c apply gaps in QuarterLayout 2019-02-09 07:58:36 +09:00