アプリウィンドウを元のスペースに復元する


25

アプリを再度開くと、元の配置に関係なく、すべてのウィンドウが最初のスペースに表示されます。

元のレイアウト:1つのアプリが2つのウィンドウを開いており、それぞれが別々のスペースにある

+-----[ Space 1 ]-----+  +-----[ Space 2 ]-----+
|                     |  |                     |
|  [Chrome window 1]  |  |  [Chrome window 2]  |
|                     |  |                     |
|                     |  |                     |
+---------------------+  +---------------------+

アプリの再起動後のレイアウトが正しくない:両方のウィンドウが最初のスペースにある

+-----[ Space 1 ]-----+  +-----[ Space 2 ]-----+
|                     |  |                     |
|  [Chrome window 1]  |  |                     |
|  [Chrome window 2]  |  |                     |
|                     |  |                     |
+---------------------+  +---------------------+

アプリが終了する前に元々あった場所にあるアプリのウィンドウを元の場所に復元できるようにする設定やアプリはありますか?


個々のウィンドウに個別のスペースを割り当てる場合、基本的に同じことを行うフルスクリーンモードを使用することはできませんか?
ウィリアムTフログガード

4
フルスクリーンは私が探しているものではありません。私の典型的なワークフローは、作業中のプロジェクトごとに専用のスペースを用意することです。そのため、多くのアクティブなスペースがあり、各スペースには通常、Chromeウィンドウ、エディターウィンドウ、ターミナルウィンドウなどがあります。また、アプリを再起動、再起動、またはアプリがクラッシュします。ですから、上の図にあるものに本当に興味があります。アプリやOS に、各ウィンドウがアプリが終了する前にどのスペースだったかを記憶させることです。
ヤクブロズトシル

11
なぜ人々がOPの質問に問題を抱えているのか分かりません。Spaces and Mission Controlがどのように機能するかを人々は理解していないという印象を受けます。私の観点からは、OPの問題が頻繁に見られ、SafariやFinderウィンドウなどのさまざまなアプリケーションで動作が一貫していません。窓はさまざまなスペースに行くこともあれば、そうでないこともあります。
Vzzdak

@Vzzdak一貫性のない動作についての良い点。それに言及するのを忘れました。
ヤクブロズトシル

1
この質問は2015年のものですが、2019年でも完全に関連しています。Chromeだけではありません。たとえば、Finderウィンドウでも同じ問題が発生します。
ジェイミーコックス

回答:


8

Chromiumにはバグ#74812があります。投票してください!

スーパーユーザーに関する同じ質問

編集:最新の開発バージョン(Chrome 79)に実装されました!

ただし、デフォルトでは、AppleのUI要件に準拠して、Cmd-QでChromeを終了した場合、この機能はワークスペースを復元しません。引用sfy、機能の作成者:

Chromeで常にウィンドウを元のスペースに復元したい場合は、ターミナルウィンドウで次のコマンドを実行して設定できます(カナリアの場合はを使用しますcom.google.Chrome.canary)。

defaults write com.google.Chrome NSWindowRestoresWorkspaceAtLaunch -bool YES

デフォルトの動作に戻すには、次を実行します:

defaults delete com.google.Chrome NSWindowRestoresWorkspaceAtLaunch

0

私の答えがあなたの問題に対処していないことは承知していますが、それは密接な回避策です。CinchとSizeUpというソフトウェアを使用して、ウィンドウの位置を変更しています。スペースと画面にまたがるウィンドウのサイズ変更は非常に高速で、キーボードショートカットを使用して実行されます。

ソフトウェアには、テスト用の試用版が付属しています。 http://www.irradiatedsoftware.com/sizeup/


0

完全な答えはありませんが、今日、この問題でアップルスクリプトを使用してきちんと刺し始めました。次のApplescriptは、ほぼ半分の仕事をします。すべてのデスクトップで開いているすべてのアプリケーションのすべてのウィンドウを報告します。次のステップでは、これらすべてをファイルに記録し、再起動後にウィンドウを再配布するスクリプトを実装します。

--This applescript reports a list of application windows present on each desktop
--This is only a sample script intended to eventually be used to restore all application windows to their pre-reboot desktops

tell application "System Events"

    set windows_string to ""
    set numDesktops to (first paragraph of (do shell script "strings ~/Library/Preferences/com.apple.spaces.plist | grep -c ^\\\\$")) + 1
    --the following tcsh command can determine the number of desktops:
    -- @ x = ( `strings ~/Library/Preferences/com.apple.spaces.plist | grep -c '^\$'` + 1 ); echo $x

    -- switch to the first desktop:
    repeat with aDesktop from 1 to numDesktops
        key code 123 using {control down}
    end repeat

    repeat with aDesktop from 1 to numDesktops

        set windows_string to windows_string & return & return & "Desktop " & (aDesktop as string) & return
        delay 1
        get (the name of every application process whose class of windows contains window)

        repeat with P in the result

            set windows_string to windows_string & return & return & P & return

            get (every window of process (contents of P) whose value of attribute "AXMinimized" is false)

            repeat with W in the result

                set window_name to ((name of W) as string)

                --Stickies window names can be multi-line, so this trims from the first hard return onward
                set better_window_name to (my replacePattern:"[\\n].*" inString:window_name usingThis:"")
                if window_name is not equal to "" then
                    try
                        set windows_string to windows_string & better_window_name & return
                    on error
                        set windows_string to windows_string & "couldn't get window name" & return
                    end try
                end if

            end repeat

        end repeat

        --switch to the next desktop
        key code 124 using {control down}

    end repeat

    display dialog "List of windows on this desktop: " & return & return & windows_string

end tell

--Call like this: set res to my replacePattern:"\\s+" inString:"1 subtratcing-these: -2 3 4" usingThis:"-"
use framework "Foundation"
use scripting additions

on replacePattern:thePattern inString:theString usingThis:theTemplate
    set theRegEx to current application's NSRegularExpression's regularExpressionWithPattern:thePattern options:0 |error|:(missing value)
    set theResult to theRegEx's stringByReplacingMatchesInString:theString options:0 range:{location:0, |length|:length of theString} withTemplate:theTemplate
    return theResult as text
end replacePattern:inString:usingThis:

これが、私が得るダイアログの例です。

List of windows on this desktop: 



Desktop 1


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
useful commands
System Config Notes
Special characters
Profile where a python scri…
XEMacs Tricks
Terminal Tips


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 2


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
DAI


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 3


iTunes
MiniPlayer


Finder
Searching “Scripts”
Searching “Scripts”
Searching “Scripts”


FluidApp
Found 626 tickets


Stickies
RPST
Issues to resolve with RPST…


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Terminal
Terminal — -csh


TextEdit
Untitled 35.txt
Untitled 34.txt
Untitled 27.txt
Untitled 15.txt


Slack
Slack - Princeton NPLC


Safari
AppleScript: Essential Sub-Routines
Using Applescript to Execute a Complicated Keystroke - Stack Overflow
How to restore windows to their original desktops after reboot? - Ask Different


Script Editor
Untitled.scpt
Untitled 4.scpt
Untitled 3.scpt
paste_file_contents.scpt
Untitled 2.scpt


FluidApp
Found 626 tickets


Automator
Subtract.workflow (Quick Action)


Desktop 4


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
GALAXY


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Terminal
Terminal — -bash
???c7??? 8yc`?h=??'?]b?c??k?k????Ԫ??m??d+ — -bash


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 5


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
TREEVIEW
When you start to work on a…
TreeView stats, legend, & d…
DATE OF SUBMISSION: 


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 6


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
ALIZZI


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 7


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
GARCIA


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets


Desktop 8


iTunes
MiniPlayer


FluidApp
Found 626 tickets


Stickies
EMILIA


Messages
Messages (3 unread)


FluidApp
Found 626 tickets


Slack
Slack - Princeton NPLC


FluidApp
Found 626 tickets
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.