Bug: Toggling stacked or tabbed layout off changes the container's split direction
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 30/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- javascript
- 領域
- desktop
調査の方向性
The issue names determineSplitLayout() as the function that picks split direction from the monitor shape. Locate it in the extension's JavaScript source and read how callers exit tabbed/stacked groups. The external reproduction script exercises the toggles; done means the original split direction is restored per the acceptance criteria.
索引モデルが issue の本文から書いたものです。
説明
Problem. Take a container whose windows sit one above the other (vertical split). Press Super+Shift+S (stacked) and then Super+Shift+S again. The windows come back side by side instead of one above the other. The same happens with Super+Shift+T (tabbed), when a tab group auto-exits because only one window is left, and when the stacked or tabbed feature is turned off in the settings.

Cause. Every way back from a group to a split uses determineSplitLayout(). That picks a direction from the monitor's shape (side by side on a landscape monitor), not from the container. The direction the container had before is not kept anywhere.
Desired outcome. Leaving a tabbed or stacked group restores the split direction the container had before it became a group. The monitor's shape is used only for a group that never was a split, such as one created by drag and drop.
Acceptance criteria.
- A vertical split toggled to stacked and back is a vertical split again; the same for a horizontal split, and for tabbed.
- Switching stacked → tabbed → split (or tabbed → stacked → split) restores the original direction.
- Auto-exit of a tab group, and turning off the stacked or tabbed feature, restore the original direction.
- A group created directly (drag and drop to the centre) still gets the monitor's direction when it leaves the group.
Reproduction: scenarios/17_stack_tab_switching.py (17.1, 17.2).
- 主要言語
- JavaScript
- スター
- 1.3k
- フォーク
- 112
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
forge-ext/forge のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
Bug: Changing a setting while Forge is disabled (e.g. screen locked) throws errors; old handlers keep running対応中かも @mattchristenson が 38 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
-
Bug: Windows overlap while resizing, until slower apps catch up対応中かも @mattchristenson が 39 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
-
Bug: Tabbed and stacked groups that contain a split show windows on top of each other対応中かも @mattchristenson が 39 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 20/100
-
Bug: Windows in a stacked group are hidden without a trace対応中かも @mattchristenson が 39 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
forge-ext/forge の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Fei2411/DeepSeek-Bot#1113 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
arfct/timezone.fyi#19 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
fastify/fastify-http-proxy#493 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
eliasstravik/herdr-projects#785 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
tensorflow/tfjs#8754 ·