Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Swap windows #32

Open
wants to merge 11 commits into
base: master
Choose a base branch
from
Open

Conversation

azarakovskiy
Copy link
Contributor

@azarakovskiy azarakovskiy commented Jul 13, 2023

A function that swaps two windows.

The issue i'm solving is the following:

  • My screen on the left is big, and I don't like turning my head to the left :D
  • I have two windows there, one of them is usually in my focus, and then another one. Like a debug panel and a console.

Implementation:

  • Select a window and hit mesh+s, save the window ID
  • Select another window. mesh+s will now swap it with the first one
  • Hitting mesh+s on the first window, removes the saved ID and resets the swapping pair

@azarakovskiy azarakovskiy changed the title Swap windows Draft: Swap windows Jul 13, 2023
@azarakovskiy azarakovskiy changed the title Draft: Swap windows Swap windows Jul 13, 2023
@peterklijn
Copy link
Owner

Hey @azarakovskiy,

Thanks for the PR. In general I like the idea of being able to swap two windows, but I find the usage a bit complicated.
I installed it locally, but don't find the usage very intuitive. The showing of letters is pretty cool, but I struggled to select two windows, as well as to un-assign one.

I wonder if there's a more intuitive / simpler way to approach this. One way to validate it is to write documentation on how to use the feature, I think the current implementation requires quite some explanation for others to understand.

I'll give it some thought, but feel free to come up with a simpler approach as well.

Apart from that:

  • I prefer all additional features outside of the standard ShiftIt features to be opt-in (like this one)
  • Add some tests to validate the code of the feature
  • Update the readme documentation so others can use it too.

But I would park these until after a more intuitive approach is found :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants