ssokolow / quicktile

Adds window-tiling hotkeys to any X11 desktop. (An analogue to WinSplit Revolution for people who don't want to use Compiz Grid)
https://ssokolow.com/quicktile/
GNU General Public License v2.0
860 stars 78 forks source link

Add config setting for margin between windows #100

Open warriordog opened 5 years ago

warriordog commented 5 years ago

This PR adds configuration options to specify a gap that will be placed between tiled windows.

The settings "MarginX" and "MarginY" specify the gap (in decimal % of screen size) that will be placed on each side of a window, and the setting "NoMarginAtEdges" determines whether a margin is placed between a window and an edge of the screen (in other words, if this setting is true then windows will stick to the edge of the screen but still have gaps between each other).

coveralls commented 5 years ago

Coverage Status

Coverage decreased (-0.4%) to 33.147% when pulling d4a7d6d267b72810cdf8e1ce2a544767909c0714 on warriordog:master into 06c4b036ba12bd40a07bf01bdeff340432be8108 on ssokolow:master.

ssokolow commented 5 years ago

Thanks for the PR.

I'll look into it, but it won't be immediately, because I have two other things that I need to work on first over the next week or two:

  1. Finish fixing up the last remaining effects of having to ditch legacy Firefox extensions. (I got delayed on this)
  2. Write a basic functional test suite for QuickTile.

(QuickTile has accumulated enough technical debt that my first priority has become a test suite. My plan is to whip up a minimal harness that's similar in concept to Selenium, where it can fire up a copy of Xvfb with a window manager in it, create some mock windows at known positions, then call QuickTile and check that the windows wound up where they were supposed to.)

ssokolow commented 11 months ago

Please ask before closing PRs.

I know it's been years, but the societal repercussions of the pandemic left me a bit of a mess in 2019 and it took me years to pick up the pieces to the point where I can get back to my hobby projects... and I do hope to get back to things like this in the near future.

ssokolow commented 11 months ago

More specifically, I have an open TODO for making a new release and I have plans to triage through all the open issues and PRs when I do so, adding appropriate information on what got fixed in which commit.

warriordog commented 11 months ago

@ssokolow You still want it even though its 5 years and 200+ commits out of date?

ssokolow commented 11 months ago

When I do my triage, I want to compare what you implemented against what I have and extract any implied TODOs or feature requests still not implemented.

warriordog commented 11 months ago

@ssokolow Gotcha. As long as you don't plan to keep the code - I hacked together that PR without any knowledge of Python so its probably terrible 😆

ssokolow commented 11 months ago

Yeah, my version doesn't have NoMarginAtEdges, so leaving this open to audit for TODOs was the right decision. I'll close it once I've got something for that committed.