Tiling Original

Kwin Scripts

Source (link to git-repo or to original if based on someone elses unmodified work): https://github.com/kwin-scripts/kwin-tiling

12
Score 84.1%
Description:

Tiling script for kwin, featuring:

- Four layouts, all mouse-resizable
- One layout with the option to set multiple "master" windows ("M-S-+" to increment, "M-S--" to decrement)
- The option to deactivate tiling per-desktop via keybinding
- A configuration menu for floating windows (by class)
- A useractionmenu to selectively tile windows
- An option to remove windowborders
- "Animated" resizing and moving
- Optional "useless" gaps

Hotkeys:
("M" here stands for what is usually the windows key, "S" stands for shift)
M-PgUp / M-PgDown: Switch layout for current desktop
M-S-F11: Deactivate tiling on current desktop
M-f: Toggle between tiling and floating for active window
M-S-m: Swap active window with the master window
M-S-+: Increment number of master windows in (default) "HalfLayout"
M-S-h, M-S-j, M-S-k, M-S-l: Move window in corresponding direction

If you would like to help, consider reporting bugs and maybe even sending pullrequests to www.github.com/kwin-scripts/kwin-tiling
Last changelog:

2.3 1 month ago

- Workarounds for clients with empty class, firefox' secondary windows (downloads etc), kfind, kcalc and evolution's gpg keyphrase entry dialog
- Smart window placement for floating windows should now work better

zeltak

6 years ago

Hya

really like this script , thx alot, it makes coming from a tiling wm much easier

one thing i wanted to ask is about multi monitor support? IE i have scree #1 a laptop and sometimes at home i add an additional screen (#2). can the script auto tile on screen #2 when the monitor is connected and auto tile on screen #1 when only laptop is connected? the new kcreen module:

http://www.afiestas.org/kscreen-1-0-released/

seems very intelligent on knowing when a new monitor is connected/disconnected so that could be really helpful

also related can the script auto make the tiled windows on screen #2 be sticky so that when you switch desktops on laptop monitor it will still be on screen #2?

sorry for the long post, just some ideas i thought could be useful for other people!

thx alot

Z

Report

C

faho

6 years ago

Hya

Quote:one thing i wanted to ask is about multi monitor support?

It's supposed to do multi-monitor, but it's barely tested as I don't really use it.

If you want to help out, test it and tell me when exactly it doesn't work or how it could be better (though github would probably be a better place for that)

Quote: the new kscreen module

Not helpful unfortunately as I can only use what kwin gives me (which should be enough).

Quote:also related can the script auto make the tiled windows on screen #2 be sticky so that when you switch desktops on laptop monitor it will still be on screen #2?

Quite frankly that should be something for another script.

Report

EthanAdams

6 years ago

I'm getting a bug with KDE 4.11 and tiling 1.2. If you drag a window, but not far enough to change positions (like if you have two windows open side by side and you drag one window down instead of to the other side of the screen) I get strange transparency bugs.
PIC: http://i.imgur.com/zsx7lvG.png

Report

C

faho

6 years ago

I can't seem to reproduce this, so it's probably related to your configuration or setup (including graphics drivers), but I committed a possible fix.

Can you try 1.2.1?

Report

EthanAdams

6 years ago

I'm still getting this bug on 1.2.1. I'll try using my desktop to see if it has the same problem.

Report

9

alemsogel

6 years ago

cool... .this is really working as it should!

i have one issue:

the tiling algorith seems to ignore the panel.
i set the panel to alway-visible (default) - but the tiled window are below it. (the panel area should be like a screen margin...)

it is working the first time i install the script. after reboot the unwanted behaviour occurs. deactivating and reactivating the script in the systemsettings helps, but after reboot it doesn't work anymore.

thx

Report

C

faho

6 years ago

Thanks for the info.

I pushed 1.1.1 which should make it retile once you open a window or move something after you changed the panels.

I could reproduce the rebooting issue and it appears to be fixed, too. Please tell me if it isn't.

Report

9

alemsogel

6 years ago

update.

seems to work on workspace 1 - not on 2,3,...

it is not depending on the application.

greets and thx

Report

C

faho

6 years ago

Thanks, that did it.

This seems to be a kwin bug, but I can work around it.

See 1.1.2.

Report

9

alemsogel

6 years ago

i hope you dont mind if i request a feature:

after selecting a new layout, it should be rendered automatically (at the time you need to switch to another workspace and back to ivoke it)

Report

C

faho

6 years ago

I've been working on that - it's a bug, not a feature, I just can't seem to isolate it.

Report

9

alemsogel

6 years ago

hehe already pushed... works... nice

1000 thx

a desktop without tiling is completely unusable :D

Report

9

alemsogel

6 years ago

thanks, it works now.

waited so long for a decent tiling script, and this one is just what i need.

thx again :)

Report

9

alemsogel

6 years ago

it works better. my workspace with 4 urxvt's is now correct. (no panel overlap)

the workspace with firefox is still not working. (firfox top is below panel)

but , when i maximize firefox and unmaximze it, it is rendered correctly (same with other applications, f.e. systemsettings)

after i switch to another workspace , and switch back it is wrong again.

maybe this helps :)

p.s. if you need i can record a video.

Report

9

alemsogel

6 years ago

screenshot:

http://i.imgur.com/1OtyFmB.png

Report

9

herrbatka

6 years ago

This script does not always work as intended when using it with window tabbing.

Also: what about per activity tilling settings?

Report

C

faho

6 years ago

I know about tabbing in general, it's on my TODO.

However, can you tell me where exactly it's having problems? (e.g. when you tab a window, when you change tabs)

I'm not sure about per-activity stuff yet - it'd introduce additional complexity, and I don't really know how activities work. I'll try, but it's low on my priorities.

Report

9

herrbatka

6 years ago

In fact tabbing itself works.

When you have 3 windows and group two you are getting two windows allinged horizontally (including window group) ? everything ok so far.

But when you detach one of grouped windows you have 3 windows, earch with maximum heigh.

And now the windows won't tile automaticly. Not sure why, maybe window sizes are wrong, maybe one of windows is out of screen border. Anyway, there is a case not covered by the script and it is not really related to the tilling i guess.

Report

9

herrbatka

6 years ago

Good job on the script! Hopefully it will become even better in the future :)

Report

9

D--

6 years ago

Hi, thanks for the script!

Is there a way to remove the titblar when tiling is enabled?

Report

C

faho

6 years ago

Hi,

I just looked into it (it was on my TODO anyway) and it seems like I can expose it as a config option in the next release (probably some time this week).

Report

9

D--

6 years ago

awesome :)

Report

9

t1010011

6 years ago

Hi there, that's really a great script! But I can't use it as my setup with a Top panel.

The windows get maximized to full screen, and the titlebar (also sometimes part of the window) goes below the panel.

Any chance to fix this?

Report

9

t1010011

6 years ago

Well that is not just a issue with top panels, actually windows always goes below the panels, and I have it set as always visible (not windows go below)

Report

C

faho

6 years ago

Which version are you using?

Just yesterday I pushed 1.0.1 which should deal with just that - you'll have to restart the script though every time you change the panel setup (also be sure to set the panel to "always visible").

Report

2.3 1 month ago

- Workarounds for clients with empty class, firefox' secondary windows (downloads etc), kfind, kcalc and evolution's gpg keyphrase entry dialog
- Smart window placement for floating windows should now work better

2.2 4 months ago

- Some shortcuts are now not bound by default, to focus on the core feature set
- The default layout switching shortcuts have been changed to Meta+Shift+PgUp/PgDown
- Floating windows are remembered across layout switches
- Better support for screen resizing and rotation
- Support for rotating layouts
- Improved handling for maximized clients (requires KWin >= 5.16!)
- Move window left/right now moves the client to another screen if necessary
- The default split ratio for HalfLayout is now configurable

2.1 4 months ago

- The resize bindings now resize by a fraction of the screen, not a certain number of pixels
- "wine" is added to the blacklist
- Preexisting clients are tiled again
- The configuration screen has switched a widget that is now unavailable by default for one that is
- Shortcuts for switching to the next/previous tile
- A new i3-like layout
- The blacklist is now case-insensitive
- The long-standing problem where clients freeze up until they are resized has hopefully been fixed
- A new OSD is shown when switching layouts
- Better multimonitor support
- A whole bunch of minor bug fixes

2.0.0 2 years ago



This release features a bunch of stuff, including:

Improved compatibility with KWin 5 (including working shortcuts with KWin >= 5.8.3)

Ignore transient windows (improves compat with e.g. eclipse)

Use basicUnits (fixes emacs without frame-resize-pixelwise)

Improved multi-monitor support

Always respect minimum/maximum size - anything else is unsupported by KWin upstream

Improved re-tiling of unfullscreening clients

5 years ago

* Forgot to enable bladelayout, could lead to crashes/script not working.

* 1.0.1: Fix some issues with panel at the top

* 1.1.0: Add an option to disable borders
This should only be used with FocusUnderMouse, as because of a kwin limitation focus can jump and it's impossible to tell which window has focus

* 1.1.1: Bugfixes and an attempt to adjust to new or removed panels

* 1.1.2: Enable resize "animations" and bugfixes (again including panel struts)

* 1.1.3: Retile on layout switch and keep desktop floating state

* 1.1.4: Bugfixes related to tabgroups and the focus hotkeys

* 1.2: Properly retile when a client resizes (including borders), "animate" moving, improve resizing "animation", add keybinding to toggle window border and bugfixes

* 1.2.1: Remove broken tabgroup handling (tabgroups float for now) and add a possible bugfix for some transparency issues

* 1.3 (unreleased): Readd clients that return (e.g. are unminimized) to their previous tile, bugfixes (including resizing)

* 1.3.1: Tabgroups, add shortcut (Meta+Shift+M) to swap a window with the master, bugfixes

* 1.3.1.1: Fix plasmoids immediately closing

* 1.3.1.2: Fix maximizing, fullscreen and resizing bugs

* 1.3.2: Fix windows not responding and focus-follows-mouse choosing the wrong window, add an option to open windows as master

* 1.3.3: Fix movement losing windows, add workaround for steam update window, fix tiling not working

* 1.4: Add option to disable tiling by default, add per-desktop layout configuration (as a line of text currently), add shortcut to toggle borders on all clients (M-S-U), add shortcuts to resize the master window (M-Alt-{h,j,k,l}), minor bug fixes

* 1.5: Bugfixes (including crashes), optional gaps between windows, respect min/maxsize (unfortunately this could cause crashes under certain circumstances)

* 1.6 (unreleased): Make resizing layout-agnostic, a manual tiling mode, code cleanup, fix tiling when compositing is disabled

* 1.6.1: Respect min/maxSizes, multiple (or zero) master support in halflayout, bugfixes

* 1.6.2: Make respecting min/MaxSizes an option, improve fullscreen behavior, improve configuration UI, remove shortcuts for toggling a border for a single window and switching focus (as they are provided by kwin itself already)

* 1.6.3: Fix crash when number of desktops isn't height * width of desktopgrid, fix default floating list

* 1.7.0: Bugfixes, add option to defer placement to kwin

12345678910
132
product-maker sndb Nov 04 2019 9 excellent
9 excellent
product-maker no1cares Jul 17 2019 9 excellent
9 excellent
product-maker timatgca Apr 29 2019 9 excellent
++April/May updates allowing drag and drop rearrangement of tiles has transformed this app. It is no longer powerful but hard to learn. Now it is powerful and easy to use. V2.1 seems to work better the multimonitors too. Last time I used this I got lost and turned tiling off, but it now seems much easier for a bear of little brain. Fantastic effort, hats off.
product-maker laloch Apr 22 2019 9 excellent
+
product-maker emplate430 May 19 2018 9 excellent
TY!
product-maker WildPenquin Feb 04 2018 9 excellent
Some bugs, but functional and useful!
product-maker KIMW Jun 16 2017 9 excellent
product-maker gegenderteBratwuarst May 13 2017 9 excellent
product-maker aram Jan 05 2017 9 excellent
product-maker mirkogennari Oct 07 2015 9 excellent
product-maker reflectionalist Sep 21 2014 9 excellent
product-maker Morphingbunny Sep 04 2014 9 excellent
product-maker Zipristin Jul 27 2014 9 excellent
product-maker DivanSantana May 27 2014 9 excellent
product-maker SicoBulo May 25 2014 3 bad
product-maker UnderTheGun May 20 2014 9 excellent
product-maker Iyuk May 18 2014 9 excellent
product-maker Zolnierzu May 09 2014 9 excellent
product-maker eticre Apr 20 2014 9 excellent
product-maker samyp Mar 20 2014 9 excellent
product-maker miktorel Jan 30 2014 9 excellent
product-maker junyx Jan 13 2014 9 excellent
product-maker unikum111 Jan 09 2014 9 excellent
product-maker frag Dec 29 2013 9 excellent
product-maker omeringen Dec 28 2013 9 excellent
product-maker dimparf Nov 24 2013 9 excellent
product-maker ms0145 Oct 29 2013 9 excellent
product-maker alemsogel Oct 23 2013 9 excellent
product-maker herrbatka Oct 23 2013 9 excellent
product-maker t1010011 Oct 16 2013 9 excellent
product-maker D-- Oct 16 2013 9 excellent
product-maker Contrast Oct 15 2013 9 excellent
product-maker saabzero Oct 15 2013 9 excellent
product-maker Base: 4 x 5.0 Ratings
no1cares
Jul 17 2019
anangrygoose
Jun 02 2019
jahp
May 17 2019
timatgca
Apr 29 2019
laloch
Apr 22 2019
Zipristin
Jul 27 2014
k3mist
Jun 28 2014
UnderTheGun
May 20 2014
samyp
Mar 20 2014
Brutus180
Mar 14 2014
arcanis
Nov 19 2013
ms0145
Oct 29 2013
File (click to download) Version Description Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
GPLv2 only
version
2.3
updated Sep 28 2019
added Oct 15 2013
downloads 24h
42
pageviews 24h 44
System Tags linux unix gplv2