WinTile is a hotkey driven window tiling system for GNOME that imitates the standard Win-Arrow keys of Windows 10, allowing you to maximize, maximize to sides, or 1/4 sized to corner across a single or multiple monitors using just Super+Arrow. As of v14, WinTile also supports: - 2-5 columns and 1-4 rows for standard or ultrawide monitors - Top/bottom half support - Mouse preview and snapping for placing windows - 'Maximize' mode, which adds/removes GNOME animations - 'Ultrawide-only' mode, to allow standard screens to have different cols/row than ultrawides - Portrait screens will automatically swap columns and rows - Add gaps around tiles to avoid the 'crowded elevator' feeling' - Ctrl+Super+Arrow to grow a tile in that direction if space is available - Ctrl+drag to drop a tile in a specific spot - Ctrl+Super+drag to draw a grid for the new tile
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
Version | Status |
---|---|
15 | Active |
14 | Active |
13 | Active |
12 | Active |
11 | Rejected |
10 | Rejected |
9 | Rejected |
8 | Rejected |
7 | Active |
6 | Active |
5 | Active |
4 | Active |
3 | Inactive |
2 | Active |
1 | Rejected |
1. You cannot create objects in global scope which is the same as init: - line 43-52 extension.js - line 16-24 prefs.js https://gjs.guide/extensions/review-guidelines/review-guidelines.html#only-use-init-for-initialization 2. That's too much for global scope: - line 66 extension.js - line 69 extension.js - line 726-730 extension.js https://gjs.guide/extensions/review-guidelines/review-guidelines.html#only-use-init-for-initialization 3. Remove timeout on disable (line 643, 651, 674, 694, 859, 898 extension.js): https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources 4. `Tweener` is a deprecated module. Please remove it for the next version. You can use `ease()` instead. For example: ```js widget.ease({ x: newX, y: 10, opacity: 100, duration: 2000, mode: Clutter.AnimationMode.EASE_OUT_BOUNCE, onComplete: () => { log('Animation is finished'); } }); ``` 5. Remove line 926 (extension.js) if condition. You should disconnect those signals without being dependent on other condition. Also null out those signal id holders in disable (`onWindowGrabBegin` and `onWindowGrabEnd`). If you need any help with your extension you can ask us on: - [GNOME Matrix Channel](https://matrix.to/#/#extensions:gnome.org) - IRC Bridge: irc://irc.gimpnet.org/shell-extensions