zeroxoneafour / kwin-autotile Goto Github PK
View Code? Open in Web Editor NEWAutotile script for kwin
Home Page: https://store.kde.org/p/2003956
License: MIT License
Autotile script for kwin
Home Page: https://store.kde.org/p/2003956
License: MIT License
Currently, if a tiled window is moved with the mouse, it goes into floating mode. The other windows left untouched fill out the remaining space, as expected. If I recall correctly, Bismuth had an option where you could select if you wanted a window moved with the mouse to go into floating (as it does now) or to return to tiling mode. When enabling this option, the expected action would be similar to that with the Swap Left (or right, etc.) keyboard shortcut
Tested with v1.1.0
Hi, I've noticed that most of flatpak apps and some of the native -ones do not maximize/tile after launch.
They are just floating.
OS: Fedora 38 kde-spin
DE: Plasma 5.27.4
DS: Wayland
Addon was installed from kde store
The only autotiled apps are dolphin and kde settings.
It would be great if kwin-autotile would maximize how windows cover the desktop space, meaning that if the number of windows is smaller than the number of tiles, present windows borrow that free space.
Is there a monocle mode with kwin-autotile?
Hello, sorry to bother you again but there is this bug where if i put a window in full size, the tile script don't work.
I put a video to make you see what i mean
When i tile in another virtual desktop, sometime, on the other desktop put the window on half screen, even if there is only that window.
You can try to recreate it by open firefox in desktop 1, then switch to desktop 2 and do some tiling
Sometime everything works fine, but other time there is this strange bug.
Oh, and sometime the autotile don't work, like the second image
Can you please elaborate why it doesn't work on Xorg? If it's a Plasma problem maybe create an issue there? I can't use Wayland because I have NVidia.
i am not sure whether it is a bug in kde plasma itself, or this extension, but sometimes the focus goes from window to wallpaper itself, the wallpaper also getting tilied,
after that i has to use kde with a mouse otherwise wallpaper stating to take half of the window..... or i have restart system...
i am not sure where to get logs, please ask me if needed any extra information/guide me to get....
Thanks for making this extention... i have been using this for few months now.... hopfully kde will improve tiling capabilities in kde6
Using either Window to Previous screen or Window to Next Screen as a keyboard shortcut, it moves the window to the other screen but doesn't resume tiling on the next screen and instead goes into floating mode. It also leaves the space it previously occupied empty on the previous monitor, where the remaining windows don't expand and fill out the available space. Expected behaviour would be that the window that is changing screen adapt and tile, while the window that don't change screen also adapts and take up the remaining place.
I have tried to make the panels identical across both monitors as well as making sure that each monitor used the same tiling layout (4 identical rectangles), neither of which had any effect on the issue.
This issue might be similar to #2.
Tested with v1.1.0.
What would it take to make it work with X11 ? (I haven't looked at the source.)
Would be nice to save layouts and be able to recall them.
Would be nice to use a different layout on each virtual desktop.
I have a basic vertical split in the middle.
If I launch konsole it takes the full screen. If I launch a 2nd konsole, they split nicely.
But at some point things started going wrong with emacs, where the emacs window opens behind. So this is what happens:
emacsclient
FYI, running with "Debug Mode" enabled gives no output in the journal
Sorry, idk where to find API docs to new tile system for adequate write and connect functions, but i can suggest some improvements:
Floating windows always on top:
In theory, we can add window role for black/whitelisted apps (client.resourceClass, if i right understand code)
Or make another list for app, what's we need to guaranteed been floating
Prevent change screen, when retiling
As i see, we has func desctopChange with checking client.screen, but now on retiling it can change current app screen to main. Maybe we need add function for checking selected screen on retile, orr add suboption for app for remember it.
Add possiblity to save/remove user templates
Now we has only 3 default template on tile management screen. Idk, where find access to this, but if possible, we can realize this with create 2 new lists: 1 with user templates and second with default user, what's replace default list, if we has our custom templates, and add func to checking, for prevent user remove defaults.
Rearranging tiling inside areas and in global screen area through key combos (if possible)
Some code improvements
Like replace black/whitelists and some another lists from Array to Map's/Set, for prevent addition of same names and redundant rechecking through loops
before script :D
Thank you for this script. I missed auto tiling so much after upgrading to wayland-awesome 5.27. It's a pity that Bismuth died. You are my personal hero โค๏ธ
I think that first new window has to appear at full screen, second on zone 1, and third window should appear also on zone one, but two first windows should be placed on zones 3 (first) and zones 2 (second) accordingly. Instead, what I see is first window is full screen, second window at zone 1, and third window at zone 3. I think that all new windows should appear at master zone 1 and other windows should move in order from bottom to top. I hope I explained it clearly ๐
It would be great to have a border window of different color on the focused window, it'll be very great!
Anyway, nice work you made here!
The FAQ contains answers to many common questions and problems. If you cannot confirm that you looked at the FAQ and tried solutions, or do not have a journalctl log as described in the FAQ, your bug will not be evaluated!
Hi, let me open by thanking you for this amazing script. Since the switch to plasma 5.27, Bismuth was not working anymore on wayland and that was really hindering my workflow, but this script manage to fill that void. With that said, I have been having a bug where new windows being opened are not tiled but are float windows by default. However, if I use the shortcut they are tiled according to the current layout. I am on the latest plasma 5.27.3. I do not know what further information it may need necessary to analyze the issue.
Unable to install v1.3.0
using make install
.
Output after make
:
mkdir -p pkg mkdir -p pkg/contents/code mkdir pkg/contents/config mkdir pkg/contents/ui cp res/metadata.json pkg/ cp res/main.xml pkg/contents/config/ cp res/config.ui pkg/contents/ui/ sed -i "s/%VERSION%/1.3.0/" pkg/metadata.json tsc make: tsc: No such file or directory make: *** [Makefile:32: src] Error 127
Output after make install
:
make: *** No rule to make target 'autotile.kwinscript', needed by 'install'. Stop.
Somehow the file autotile.kwinscript
is not generated.
I tried to apply the commands manually:
make res
make src
zip -r autotile.kwinscript pkg
After this, I was able to install v1.3.0
.
However, tiling is not working in this v1.3.0
. I don't know whether it is because of the new version or because of how I installed it.
I had to revert back to v1.2.2
through no-activities
branch.
btw, I did a clean install of v1.3.0
instead of git pull
. Also, Makefile
is working properly for v1.2.2
Sorry to bother you again, but I notice that in settings if a pop-up window appear, is tiled and not floating.
Like that
I don't know if I had to insert something in the whitelist, I try but that window is see as "setting" and i can't put setting in the whitelist because it'll make all setting floating, not only the pop.up one.
Hello, sorry to bother you again but i found another bug.
When i try to open VS code with another window open, like Konsole, it doesn't tile.
But, instead, go up and in full screen mode.
What to do to see the bug:
1)Open konsole
2)Open VS Code
thanks in advance :)
When spawning a new window on an empty screen, it goes full screen as expected. When adding a second window, the window that was spawned first remains full screen but goes into the background while the second window takes up a quarter of the screen (my split is an even 2x2). Adding even more windows results in that they continue to assume their position as determined by the split, not by the numbers of windows. I.e. adding a total of three windows, with the first being behind in full screen, the third window takes up the second quarter of the screen, not the other half. Hopefully, the images can explain it better.
Log:
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: Config Updated
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: useWhitelist == false
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: blacklist == krunner,yakuake,kded,polkit
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: tilePopups == true
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: borders == 3
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: invertInsertion == false
Mar 29 22:05:55 user kwin_wayland[27485]: js: Autotile DBG: keepTiledBelow == true
Mar 29 22:06:04 user kwin_wayland[27485]: js: Autotile DBG: Tiling client org.kde.kate
Mar 29 22:06:06 user kwin_wayland[27485]: js: Autotile DBG: Tiling client Alacritty
Mar 29 22:06:07 user kwin_wayland[27485]: js: Autotile DBG: Tiling client Alacritty
Mar 29 22:06:08 user kwin_wayland[27485]: js: Autotile DBG: Tiling client Alacritty
This is true of several applications, not just the ones shown. After removing the window first window, having already spawned four on top, the tiling works as expected where new windows take and fill up the space correctly. This also seems to be monitor specific, so a window that is spawned first and goes full screen on one monitor, will occupy that same space (full screen and below) when moved to another monitor, even if there already were a few windows there.
Tested with both v.1.1.0 and v.1.1.1.
Suppose I have opened a dolphin window (say) in workspace 1 of activity 1. It will tile perfectly. Suppose I switch to activity 2 and open a terminal window in workspace 2; it will not tile as expected. Instead, it cares about the dolphin window opened in Activity 1 in the same workspace and tiles on the right side of the screen, leaving a blank space on the left side. Similarly, if I switch to activity 1 again, the dolphin window will tile to the left side of the screen and leaves a blank space on the right side. The workaround to this is to work on different workspaces across activities. However, this is not very convenient. Is it possible to isolate the windows in the activities so that they do not leave blank spaces for other windows in other activities and tile them accordingly?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.