mrkai77 / mrkai77/Loop

✨ Multi-window actions (Window sets)

Open
#988 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature
Dominant language
Swift
Stars
11.6k
Forks
270
Avg merge
8h 7m
Merged PRs (30d)
3

Description

Feature Request Summary

Create a custom set that automatically sorts all the windows in a space (stage manager set, desktop space, or monitor)

Problem / Opportunity & Desired Solution

Problem:

  • Too many cycles/keybindings to do my usual window setup
    • One app as two thirds of screen on one side
    • Either:
      • One app top opposite sixth, one on bottom sixth
      • One app on opposite third
  • This usually takes about 4-6 key presses not including my main binding using my cycles.

Solution:

  • Create a multi-binding that can work on multiple apps in one go!
Alternatives Considered

There are a few ways I can think to do this:

Select windows for each new option
  1. Define each action you want the sequence to do in succession
  2. Start a Multi-action sequence
  3. Click first app — perform first action
  4. Click second app — perform second action
  5. Click nth app — perform nth action
  6. profit
    This might have two issues though:
  • I might want to do either the 3 window setup or the 2 window setup, which means I might have to set up two multi-binds. This is a biiiit inefficient, and could be resolved by either adding some sort of "next action selector" or adding a way to do different actions based on how many windows are detected in the current space.
  • Inactive or hidden windows can't be selected, which could be fixed by adding another UI for window selection or by using stage manager/mission control.
Select windows at start
  1. Define where at least one window goes, and have the other windows fill in the remaining space equally
  2. Start a Multi-action sequence
  3. Select all windows that will be used
  4. profit
    This removes the issue of 3 or 2 window setups, but not the issue of selecting inactive or hidden windows.
Make a "drag and drop" template
  1. Define where at least one window goes; size and/or position.
  2. Start Multi-action sequence
  3. Drag windows into the defined spots or the "miscellaneous" section
  4. more profit!!!
    This might make it more effective at selecting windows and can even make it possible to move the defined window around before finalizing the setup, making it easy to have even more dynamic sets.
Visuals or References

No response

Additional Context

No response

Priority

Medium (important but not blocking)

Final Checks
  • My issue is written in English.
  • My issue title is descriptive.
  • This is a single feature request (multiple feature requests should be reported individually).
  • I have looked to see if this is a duplicate of another feature request.
  • I can help with research or testing.
  • I can help code this feature.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing Loop's existing window-management actions and cycle/keybinding behavior on macOS. Compare the proposed selection, initial-window, and drag-and-drop approaches before defining one concrete interaction. Done should mean a window set can reliably arrange the selected windows in a space, but the issue does not yet specify which design to implement.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, swift
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.