Saya terbiasa terhubung ke proyektor ruang konferensi atau layar besar yang bervariasi dalam resolusi, jadi ketika saya berpindah dari kamar ke kamar sepanjang hari, jendela saya harus terus-menerus diubah ukurannya juga. Jadi saya merasakan sakit Anda. :-)
Untuk menghindari kebingungan, saya ingin mendefinisikan beberapa istilah untuk jawaban ini:
- Tampilan utama adalah tampilan dengan menubar di tab Arrangement di System Preferences.
- Layar utama adalah yang Anda inginkan, apakah itu layar utama atau tidak.
- Tampilan sekunder adalah yang tanpa menubar di tab Pengaturan di System Preferences.
Pada dasarnya, masalahnya adalah Anda melihat perbedaan penting antara tampilan utama dan utama; Mac OS X tidak, dan itu akan memerangi Anda ketika Anda mencoba mempertahankan perbedaan ini dengan memperlakukan tampilan sekunder sebagai tampilan utama.
Kecuali jika mereka secara khusus mencoba melakukan sebaliknya, aplikasi akan selalu terbuka pada apa pun tampilan utamanya. Itulah salah satu karakteristik tampilan utama. (Ini bagian yang cukup rendah dari API Kuarsa, khususnya panggilan CGConfigureDisplayOrigin , jadi perilaku ini tidak dapat dikonfigurasi jika aplikasi itu sendiri tidak membiarkan Anda mengkonfigurasinya.)
Saya sarankan mungkin bertanya tentang hal-hal yang membuatnya mengganggu bagi Anda ("mengacaukan hal-hal lain" seperti yang Anda masukkan dalam komentar Anda) untuk tidak menjadikan tampilan utama Anda sebagai tampilan utama ketika Anda terhubung, karena itu mungkin dapat dikonfigurasi ; perilaku ini bukan.
Saya punya beberapa trik untuk Anda yang mungkin bisa membantu, meskipun:
Tampilan mirroring dan un-mirroring menyebabkan semua jendela terlalu besar untuk muat pada layar yang lebih kecil untuk disesuaikan dan membuat semua jendela masuk ke tampilan utama. Itu bukan solusi yang sempurna, saya tahu, karena Anda menginginkan hal-hal di layar sekunder, tetapi ini bisa menjadi solusi yang berguna ketika dikombinasikan dengan trik berikutnya, terutama jika Anda tahu pintasan keyboard: ⌘-F1. Tekan, biarkan sistem beralih ke mirroring, dan tekan lagi. Semua jendela Anda akan diubah ukurannya menjadi tampilan terkecil dan akan menjadi tampilan utama.
Alat lain yang sangat berguna untuk mengatasi masalah ini adalah BetterTouchTool , yang memungkinkan Anda mengatur gerakan "Center Window on Next Monitor" dan "Maximize Window to Next Monitor". Saya menetapkan ini masing-masing untuk klik empat dan lima jari, dan kemudian saya dapat dengan cepat membuka jendela dari satu monitor ke monitor lainnya hanya dengan menumbuk trackpad. (Jika Anda tidak menggunakan trackpad saat Anda terhubung ke layar besar, BTT juga dapat melakukan gerakan dengan perangkat penunjuk lainnya.)
Dua trik ini bersama-sama telah membuat bekerja dengan resolusi yang terus berubah tidak sempurna, tetapi setidaknya dapat ditoleransi. Jika saya ingin memasukkan semua jendela ke layar sekunder (saya memberikan sesi pelatihan, katakan, dan ingin menubar terlihat oleh para siswa, tetapi saya ingin semua jendela saya yang tidak terkait dengan pelatihan ditampilkan di layar lain) , Saya melakukan trik mirror / unmirror dan kemudian memukul trackpad dengan empat jari beberapa kali sampai semua jendela muncul.
Akhirnya, jika Anda suka bermain biola, Anda bisa melihat Applescript ini yang memindahkan semua jendela ke primer melalui metode yang berbeda. Tidak seperti metode mirroring, yang memindahkan windows ke primary sebagai efek samping, yang ini melakukannya secara eksplisit, sehingga Anda dapat memodifikasinya untuk memindahkan windows ke tampilan utama, sekunder, yang Anda inginkan. Tapi itu tidak mudah, yang dapat memberi Anda ide mengapa semuanya melawan Anda terhadap penggunaan ini. Inilah garis penting dari Applescript ini:
set position of window x to {0, 22}
Karena menubar adalah 22 koordinat tampilan (yang dulunya "piksel" sebelum Retina ditampilkan) tinggi, dan layar dan jendela memiliki titik asal di kiri atas, baris ini memindahkan jendela x tepat di bawah dan rata-kiri dengan menubar. Untuk menyesuaikan skrip ini sehingga alih-alih memindahkan semua jendela ke kiri atas tampilan sekunder, Anda harus mengetahui koordinatnya, dan menggunakannya sebagai nilai x. Dalam pengaturan yang Anda tampilkan di tangkapan layar, "0" di sana akan diganti dengan angka negatif , karena Anda berada di sebelah kiri menubar. Diperlukan beberapa cara untuk memperbaikinya, terutama jika Anda ingin skrip bekerja terlepas dari pengaturannya.
Ini semua kludgey, saya tahu; tetapi Anda harus menerima kludges jika Anda ingin tampilan utama dan tampilan utama Anda berbeda. Karena itulah saya akan sangat menyarankan Anda mencoba mengatasi apa yang membuat Anda tidak membiarkan tampilan yang lain menjadi utama daripada melawan pertempuran khusus ini.