Comments (3)
I'm not sure if this size restoration is a generic X property or an Xfwm4-internal feature.
To the best of my knowledge, it's an Xfwm4-internal feature, similar to how QuickTile can't un-set KWin's edge/corner tiling because, when a Window is tiled in KWin, it ignores attempts by random applications to un-tile it on the assumption that it's probably the application itself trying to veto the user's decision.
Would it be possible to support Xfwm4's size restoration feature in quicktile?
Unlikely. It's probably implemented as a variation on how maximization works, where the window manager leaves the old dimensions intact in its records and just adds some new "maximized to ___ tile" status field.
If that's how it works, there'd be fundamentally no way to extend the behaviour beyond the existing set of tiling positions without patching Xfwm4, because there would be no way to describe "maximized to... " tiles outside the hard-coded set.
Heck, if I can ever get around to it, I want to do a similar "define an internal grid and just specify which cell the window is in" rework for QuickTile because it enables stuff like hotkeys for grow/shrink colum/row and makes it easier to make "cycle window to next monitor" behave intuitively when monitors aren't the same shape.
from quicktile.
Hey, thanks for the answer. That's unfortunate, I found Xfwm4's size restoration to be quite useful.
Maybe Xfwm4's feature can't be extended, but Quicktile might be able to hack it. Remember window size before tiling, then listen for resize/move events on that window. When it's being modified outside of Quicktile, instantly restore the old size. That would be WM-agnostic too ^^
from quicktile.
Possibly, but it could also result in an unpleasant conflict with the WM as it and QuickTile fight over what should happen.
I'll leave this open for that but, given how much of a pit I have to climb out of on TODOs, I want to focus on things that are less of a gamble first.
from quicktile.
Related Issues (20)
- FIX quicktile thinks my screen is much smaller than it is HOT 17
- Incorrect Monitor Geometry HOT 4
- move-to-{top,left,right,bottom} behavior changed in 0.4.0 HOT 8
- Overlapping windows when positioning vertically on Ubuntu 20.04 HOT 25
- Quicktile is not detecting IceWM taskbar HOT 12
- Currently unpredictable state cycling, suggest replace with much simpler logic, gains predictability and cognitive comfort. HOT 1
- PackageNotFoundError in Manjaro after last pacman update HOT 2
- Display a warning if ModMask and per-binding modifiers overlap in potentially confusing ways HOT 8
- Restore the previous window's size & position before tiling. HOT 8
- Skipping the 1/2 width option HOT 3
- While using "right" or "center" command on with external monitor, the windows switch to the next monitor HOT 21
- External keyboard, "Right" keyboard binding breaks HOT 14
- Control-C on `quicktile --daemonize` can hang X on LXDE HOT 1
- No errors and no funcionality on Ubuntu 20.04 HOT 1
- Bug detected - A programming error has been detected during the execution of this program HOT 4
- Failed to load module "xapp-gtk3-module" HOT 5
- Move window to other workspace HOT 4
- 3 columns layout, but gap between left and center HOT 6
- Release a new version. Please. HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quicktile.