Saya punya aplikasi menggunakan banyak windows. Bagaimana saya bisa dengan cepat membawa semua jendela aplikasi itu ke latar depan?
Ketika saya menggulir aplikasi dengan roda-gulir itu hanya menampilkan satu jendela. Saat pergi ke jendela berikutnya, jendela terakhir dibawa ke latar belakang lagi.
Ketika saya mengklik ikon aplikasi, saya mendapatkan gambaran umum layar penuh dari semua jendela. Saya harus memilih setiap jendela secara manual dan memindahkan mouse saya melintasi setengah layar beberapa kali.
Solusi terbaik saya sejauh ini adalah meminimalkan semua jendela ( Ctrl+ Super+ D) dan kemudian menampilkan windows aplikasi saya menggunakan scroll-wheel.
Apakah ada solusi yang lebih baik?
Jawaban:
EDIT -new answer-
Jawaban di bawah ini masih benar-benar valid, dan demikianlah opsi yang disarankan. Namun wawasan yang sedang berlangsung membuat saya menambahkan opsi ini untuk menggunakan indikator di bawah ini, yang mungkin merupakan solusi paling elegan.
Karena itu, mungkin harus mengganti opsi 5 (menggunakan file .desktop).
Cukup pilih aplikasi dari daftar, dan semua jendela aplikasi yang sesuai (ada pada viewport saat ini) akan menaikkan:
Bagaimana cara menggunakan
dari ppa:
... atau secara manual:
Kebutuhan indikator
wmctrl
Salin indikator ke file kosong, simpan sebagai
raise_apps.py
Salin gambar di bawah ini, simpan persis namanya
raise.png
dalam satu dan direktori yang sama dengan indikator.Maka jalankan saja dengan perintah:
python3 /path/to/raise_apps.py
Tambah jika Anda ingin Aplikasi Permulaan:
JAWABAN TUA:
Tentang pertanyaan itu
Dengan alat yang tepat, tidak terlalu rumit untuk "hanya" menaikkan semua jendela aplikasi. Ini sedikit lebih rumit untuk memastikan hanya jendela viewport saat ini yang dinaikkan. Namun tantangan sebenarnya adalah menemukan cara yang nyaman untuk membuat tindakan tersedia bagi pengguna.
Di bawah lima opsi untuk mengatasinya, untuk menunjukkan bagaimana hal itu bisa dilakukan. Semua opsi siap digunakan. Namun opsi terakhir adalah jenis eksperimental; itu berfungsi dengan baik tetapi memiliki beberapa kerugian kosmetik kecil, seperti yang dijelaskan dalam deskripsi opsi. Saya menambahkannya sebagai konsep .
Menyebarkan jendela secara otomatis dengan cara yang tidak tumpang tindih, seperti yang disarankan dalam komentar, tampaknya bukan ide yang praktis bagi saya; jika Anda bekerja dalam pengaturan jendela grup (aplikasi-bijaksana), skrip mungkin akan mengatur ulang windows yang tidak diinginkan.
Bagaimana cara menggunakan
Untuk semua opsi, Anda perlu:
instal
wmctrl
jika belum ada di sistem Anda:buat, jika belum ada, direktori:
(penjelasan: direktori
~/bin
dalam $ PATH, sehingga Anda dapat menjalankan executable dengan namanya)Salin skrip, sesuai dengan opsi, tempel ke file kosong, simpan sebagai
raise_app
(tanpa ekstensi)~/bin
dan buat itu dapat dieksekusiDalam opsi terpisah, langkah-langkah tambahan yang mungkin akan dijelaskan.
Opsi 1: pilih aplikasi dengan memasukkan satu atau lebih karakter
zenity
jendela akan munculIni akan membuat semua jendela aplikasi yang cocok (pada viewport saat ini ) tampil ke depan.
naikkan semua
gnome-terminal
jendela di viewport saat ini:Bagaimana cara menggunakan:
Tes-jalankan dengan perintah:
Jika semuanya berfungsi dengan baik, tambahkan ke kombinasi tombol pintas pilihan Anda: Pilih: Pengaturan Sistem> "Keyboard"> "Pintasan"> "Pintasan Khusus". Klik "+" dan tambahkan perintah
Naskah:
Opsi 2: menelusuri aplikasi dan meningkatkan windows mereka dengan kombinasi tombol:
Katakanlah saya memiliki skrip di bawah ini di bawah kombinasi kunci Alt+ 1. Saya memiliki beberapa jendela terbuka:
Keadaan saat ini:
Saya menekan sekali Alt+ 1, semua
nautilus
jendela dinaikkan:Saya menekan lagi Alt+ 1, semua
firefox
jendela dinaikkan:Saya menekan lagi Alt+ 1, semua
gnome-terminal
jendela dinaikkan lagi, siklus dimulai lagi:Bagaimana cara menggunakan
Tambahkan ke kombinasi tombol pintas pilihan Anda: Pilih: Pengaturan Sistem> "Keyboard"> "Pintasan"> "Pintasan Khusus". Klik "+" dan tambahkan perintah
Kemudian putar aplikasi Anda dengan jendela aplikasi yang dikelompokkan dengan kombinasi tombol Anda.
Naskah:
Opsi 3: tekan kombinasi tombol + klik ikon peluncur - atau - jendela aplikasi untuk menaikkan semua jendela pada viewport saat ini
Ini mungkin opsi yang paling dekat dengan apa yang dijelaskan dalam pertanyaan / komentar.
Katakanlah saya memiliki desktop yang berantakan dengan tiga
nautilus
jendela terkubur di bawah jendela lain.Untuk menaikkan semua jendela nautilus (contoh pintasan: Alt+ 1):
Dalam 3 detik, baik:
klik ikon aplikasi di peluncur
atau:
klik pada salah satu jendela aplikasi
hasil:
Bagaimana cara menggunakan:
Tes-jalankan dengan perintah:
Jika semuanya berfungsi dengan baik, tambahkan ke kombinasi tombol pintas pilihan Anda: Pilih: Pengaturan Sistem> "Keyboard"> "Pintasan"> "Pintasan Khusus". Klik "+" dan tambahkan perintah
Kemudian:
Tekan kombinasi tombol Anda dan dalam 3 detik, baik:
Naskah
Opsi 4: kombinasi tombol memanggil daftar opsi, menunjukkan jumlah jendela per aplikasi pada viewport saat ini
Yang ini ternyata lebih nyaman daripada yang saya duga:
Menekan kombinasi tombol (lagi contoh-) Alt+ 1memanggil
zenity
jendela, mendaftar semua aplikasi dan jumlah windows mereka pada viewport saat ini:Cukup dengan menekan ▴atau ▾panah akan membawa Anda ke opsi yang tepat. Tekan Enterdan semua jendela aplikasi yang dipilih dinaikkan.
Bagaimana cara menggunakan:
Tes-jalankan dengan perintah:
Jika semuanya berfungsi dengan baik, tambahkan ke kombinasi tombol pintas pilihan Anda: Pilih: Pengaturan Sistem> "Keyboard"> "Pintasan"> "Pintasan Khusus". Klik "+" dan tambahkan perintah
Naskah
Opsi 5: meningkatkan windows menjalankan aplikasi dari ikon peluncur
Opsi ini ada dari ikon peluncur, dengan aplikasi yang sedang berjalan dalam daftar cepat. Pilih satu, dan semua jendela aplikasi akan dinaikkan.
Peluncur diperbarui secara otomatis ketika daftar aplikasi yang berjalan (pada viewport saat ini) berubah. Daftar cepat menunjukkan daftar yang berbeda pada viewports lain, di mana jendela aplikasi lain dibuka (akan memakan waktu 1-2 detik untuk beradaptasi).
Sebagaimana disebutkan, meskipun berfungsi penuh, opsi ini dimaksudkan sebagai konsep . Ini memiliki beberapa kerugian kecil kosmetik seperti itu. Yang paling penting:
Selanjutnya pengaturannya sedikit lebih rumit (meskipun dijelaskan secara rinci di bawah):
Bagaimana cara menggunakan
Di bawah ini Anda akan menemukan:
dua skrip / ikon /
.desktop
fileraise_app
pada~/bin
Simpan ikon di bawah ini (klik kanan, simpan sebagai) sebagai
raise.png
Salin
.desktop
file ke file kosong, edit bariske jalan nyata untuk ikon (jalur dengan spasi antara tanda kutip)
Simpan sebagai
raise.desktop
di~/.local/share/applications
Seret
.desktop
file ke peluncur untuk menambahkannyaupdate_apps
di~/bin
, membuatnya menjadi executable.Tambahkan perintah berikut ke aplikasi startup Anda (Dash> Startup Applications> Add):
Script pertama
Naskah kedua
File .desktop
Penjelasan singkat
Semua solusi di atas digunakan
wmctrl
untuk membuat daftar jendela, menggunakanwmctrl -lpG
perintah. Perintah ini menghasilkan baris, seperti:Garis-garis ini termasuk:
xrandr
)Pid itu mencari dalam output
ps -u <username>
untuk mendapatkan identifikasi (nama) aplikasi yang "dapat dibaca pengguna".Dengan demikian kita dapat mengalokasikan windows ke aplikasi. Selanjutnya kita dapat menaikkan jendela aplikasi yang diberikan dalam satu
for
lingkaran dengan perintahwmctrl -ia
.Dalam opsi 3
, skrip memulai loop "menunggu" selama 3 detik, menggunakan
xprop -root
perintah berulang kali untuk melihat apakah ada perubahan pada apa yang merupakan jendela paling depan; ini akan terjadi jika pengguna mengklik ikon peluncur untuk menaikkan jendela aplikasi, atau mengklik jendela secara langsung. Jika demikian, loop sementara memecah dan mencari aplikasi paling depan "baru", dan kemudian memunculkan semua jendela lain dari aplikasi itu.sumber
Option 2
skrip, ketika jendela aplikasi difokuskan (yang tidak dimaksimalkan) dan saya mengklik jendela lain yang terlihat "di bawah", aplikasi di bawah ini tidak mendapatkan fokus.Ada Super+ Wjalan pintas yang akan menampilkan pameran semua jendela yang sedang terbuka, meskipun itu akan mencakup aplikasi lain. Ini datang secara default, dan tidak memerlukan perubahan apa pun, jadi mungkin ini pilihan paling sederhana yang tersedia.
Di antara hal-hal lain, Anda dapat memposisikan jendela di sisi kanan dan kiri layar dengan tombol Ctrl+ Super+ Left/ Right, dan beralih di antaranya dengan Alt + ~ (tilde, tombol di sebelah tombol nomor satu).
sumber
Jika Anda menekan Alt + Tab untuk menelusuri aplikasi, dan Anda mendapatkan satu dengan beberapa jendela, cukup tahan tombol alt ke bawah dan setelah sekitar 1 detik penuh ikon akan diganti dengan tampilan semua jendela untuk aplikasi itu.
Itu mungkin atau mungkin bukan yang Anda cari, tetapi itu bekerja untuk saya dan lebih sederhana, jadi saya pikir saya akan berbagi opsi!
sumber
Saya mengambil skrip kenaikan_apps.py @ JacobVlijm dan membuat beberapa peningkatan padanya, termasuk membuatnya lebih kuat.
Secara khusus, saya telah menemukan bahwa setelah satu atau dua hari, skrip @ JacobVlijm akan berhenti bekerja, dan saya harus me-restart skrip secara manual, untuk membuatnya berfungsi kembali. Dalam retrospeksi, tebakan terbaik saya adalah bahwa banyak panggilan ke xrandr akhirnya menyebabkan masalah.
Bagaimanapun, saya mengadaptasi kodenya, meningkatkan frekuensi pemungutan suara dari 5 detik menjadi setiap 1 detik, karena tidak menggunakan banyak CPU, dan membuatnya lebih kuat. Saya biasanya dapat menjalankannya selama berhari-hari / minggu tanpa masalah.
Satu peringatan adalah bahwa saya hanya memanggil xrandr sekali selama startup, untuk mendapatkan dimensi resolusi layar. Jadi, jika Anda mengubah resolusi layar Anda (mis. Dari 1920x1080 ke beberapa resolusi lain), Anda mungkin ingin me-restart secara manual kenaikan-apps.py sehingga itu akan mengambil resolusi baru. Secara pribadi, saya tidak pernah mengubah resolusi layar saya, jadi ini bukan masalah bagi saya. Selain itu, saya memiliki alasan kuat untuk percaya bahwa terlalu banyak panggilan ke xrandr yang menyebabkan versi skrip @ JacobVlijm berhenti bekerja setelah satu atau dua hari, jadi saya akan sangat menyarankan tidak hanya meletakkan banyak panggilan ke xrandr kembali.
BTW, Anda perlu menempatkan gambar rais.png di direktori / usr / local / icons /. Atau jika Anda ingin menempatkan rais.png di direktori yang berbeda, lakukan perubahan yang sesuai pada skrip, sehingga skrip dapat menemukan file gambar.
Mudah-mudahan, Ubuntu akan mengintegrasikan jenis fungsi 'naikkan semua jendela' ini ke dalam sistem mereka lebih cepat daripada nanti karena sangat berguna:
sumber