Czy uniemożliwić systemowi OS X zmianę odstępów po zamknięciu aplikacji?

22

Po zamknięciu aplikacji automatycznie wybierana jest poprzednia aplikacja, z którą miałem kontakt. Jeśli pracowałem w Terminalu, przełączyłem się na Chrome, a potem zdecydowałem się zamknąć Chrome, Terminal staje się aktywnym kontekstem. Niestety, jeśli Terminal był w tym czasie w innym miejscu, OS X zamienia się na to miejsce dla mnie.

Ten efekt jest dość wstrząsający za każdym razem, gdy się zdarza, i naprawdę przeszkadza, jeśli, powiedzmy, Chrome tylko się ponownie uruchamia. W takim przypadku nie tylko zostaję wysłany w zupełnie inne miejsce, ale Chrome otworzy się w tym miejscu, gdzie go nie chcę.

Jedyne pytanie, które mogłem znaleźć podobne do mojego problemu, brzmiało: Jak mogę zatrzymać automatyczne przełączanie spacji?

Sugeruje przejście do Preferencji systemowych -> (Kontrola przestrzeni / misji) i odznaczenie When switching to an application, switch to a space with open windows for the application.

Chociaż technicznie rozwiązuje to mój problem, nie mogę teraz przejść do otwartej aplikacji, po prostu klikając jej ikonę w Docku. Mogę z tym żyć, jeśli będę musiał, ale wolę mieć prawdziwe rozwiązanie, które nie wymaga ode mnie poświęcenia szybkiego przełączania aplikacji.

Idealnie chciałbym, aby zmienił kontekst na ostatnio używaną aplikację, która jest obecnie otwarta w istniejącej przestrzeni. Jeśli nie istnieje, domyślnie jest to Finder.

Pewpewarrows
źródło
3
Nie
zamykaj

Odpowiedzi:

8

O ile mi wiadomo, nie ma sposobu, aby zrobić dokładnie to, co chcesz, ale możesz podejść bardzo blisko. To prawda, że jeśli odznacz „Po włączeniu ...” pole wyboru, to nie idź do aplikacji po kliknięciu ikony w doku, ale należy przejść do aplikacji, gdy dwukrotnie kliknij go (lub po prostu ogólnie kliknij go drugi raz, gdy aplikacja jest aktywna, ale nic nie jest widoczne).

Używam tego w ten sposób od lat - prawie zapomniałem, że było inne zachowanie.

Bobson
źródło
1
Dziękuję Ci! Właśnie tego chciałem: pozostawione niezauważone zachowanie „Podczas przełączania ...” z zachowaniem Docka. Jedynym innym niepożądanym efektem jest to, że wbudowana karta Cmd-Tab również się nie przełącza. W tym celu właśnie zastąpiłem wbudowany przełącznik tabulatorów Witch.
Pewpewarrows
2
Myślałem, że tak się dzieje, ponieważ system wraca do poprzedniej aplikacji, ale to nie wszystko. Coś powoduje jawne przełączanie się na aplikacje na różnych komputerach (a następnie przełączanie przestrzeni). Po wyłączeniu opcji „Podczas przełączania ...” oprócz nie przełączania spacji, nie przełącza się również na „niewłaściwą” aplikację. Zamiast tego po prostu wraca do aplikacji, z której korzystałeś tuż przed zamknięciem aplikacji. Chciałbym, żeby istniał sposób na wyłączenie tego błędu. Powiedziałbym, że zmiana spacji przy zmianie aplikacji sama w sobie jest w porządku.
Timo Tijhof,
1

To działa na 10.6.8 . Właśnie tego użyłem. Cieszyć się!

W systemie Leopard 10.5.0–10.5.2 rozwiązaniem było uzyskanie dostępu do ukrytej preferencji dla Spaces poprzez wydanie następującego polecenia w oknie terminala lub xterm (X11):

defaults write com.apple.dock workspaces-auto-swoosh -bool NO

następnie ponownie uruchom Dock za pomocą następującego polecenia:

killall Dock

Źródło

OrangeBox
źródło
4
Jak zauważono w artykule, ma to taki sam efekt jak Preferencje systemowe dla:, When switching to an application, switch to a space with open windows for the applicationczego nie chcę. Nadal chciałbym móc używać Docka do przełączania się na aktualnie otwarte okna aplikacji.
Pewpewarrows,
To nadal działa na El Capitan 10.11
mahal tertin
0

Możesz wymusić otwieranie aplikacji w określonych przestrzeniach w Preferencjach systemowych, co rozwiązałoby problem otwierania Chrome w przestrzeni, której nie powinien.

Wadą jest to, że nie sądzę, aby zatrzymało przejście z jednej przestrzeni do drugiej, a następnie z powrotem.

Cchana
źródło