Başlatılan uygulama aynı masaüstünde kalmıyor


7

Neden uzun yükleme süresine sahip bir uygulama (NetBeans, Eclipse vb.) İşlem diğerine başlatılsa bile mevcut masaüstüne "atlıyor"?

Masaüstüne 3 gidip bir uygulama başlatıp, beklerken masaüstü 2'ye gidersem, uygulama yüklendiğinde masaüstüne 2 başlar. Bunu değiştirmenin bir yolu var mı?


2
Ubuntu ve Mac OS X'de hep aynı problemi yaşadım. Bir tane olmadığına ikna oldum, ama umarım birileri beni yanlış buluyor.
Hassan

Bu, pencere yöneticinize bağlıdır, önceden tanımlanmış belirli masaüstlerinde belirli uygulamaları başlatmak için gruplar oluşturabilirsiniz. Başka bir yol, masaüstünüzün 1+ üzerinde ikinci bir yuvalanmış X sunucusunu çalıştırmak için xnest veya xephyr kullanmaktır. Ardından DISPLAY =: 1 komut args ile çalıştırın ve eğer komut varsa, -display arg komutunu kullanın DISPLAY'i dışa aktarmak için yeterli. Ayrıca birden fazla monitörünüz varsa (Xinerama ekranları) şunları kullanabilirsiniz: 0.0 veya: 0.1. Biraz daha detay verebilir misin?
technosaurus

Standart bir Ubuntu 12.04 kullanıyorum. Pencere müdürü veya tbh hakkında fazla bir şey bilmiyorum. linux hakkındaki bilgilerim de çok sınırlı, ama öğreniyorum :) (benim yeni iş ortamım ;-))
Anders Metnik

Yanıtlar:


5

Bu oldukça karmaşık bir sorundur.

Pencere Yöneticisi'nin (WM), tahmin etmesi gereken pencereleri yönetmesi gerekiyordu. Bu, konumlarını, boyutlarını, masaüstünü ve dekorasyon alıp almadıklarını içerir ancak bunlarla sınırlı değildir. WM'in bir parçası olmayan, uygulamaları herhangi bir şekilde başlatmaktır, yalnızca o sürecin doğacağı pencereleri görür ve yönetir. Peki ne olacak?

  • Masaüstüne Geçiş 2
  • NetBeans'ı Başlat
    • Splash-Screen, Desktop 2'de süslemesiz pencere olarak oluşturulur
  • Masaüstüne Geçiş 3
    • NetBeans-Splash-Screen, Desktop 2'de kalır
  • NetBeans yapıldı ve sonunda tamamen yeni bir pencere olduğu için mevcut masaüstüne gönderilen ana pencereyi oluştur

Bu durumda sorun, Pencere Yöneticisinin tamamen habersiz olması (veya cahil, emin değil) olmasıdır kim bu pencere ait. İki olasılık var:

Bunu yapan bir pencere yöneticisi bulun ...

  1. ... üst işlemlerine göre pencerelerin gruplandırılmasını destekleyin
  2. ... her pencere için kural tanımlamanıza izin verir

Veya bir yardımcı uygulama olsun Şeytanın Turtası hangi pencere kurallarını tanımlamak için izin verir.


Ubuntu 12.04 için işe yarıyor mu? :)
Anders Metnik

2

Compiz kullanıyorsanız (evet, 12.04'ün altında bile olabilirsiniz;), compizconfig-settings-manager ve sonra gitmek Place Windows yeni bir menü eklemek için alt menü Fixed Window tab Uygulamanızın ve masaüstünüzün sınıfını (adını) seçeceksiniz.

Aksi takdirde, kullanabilirsiniz wmctrl Bu, uygulamalarınızı başlatmanıza ve masaüstünüzden birine gitmeye zorlamanıza izin verir.


Wmctrl için +1, lezzetler arasında taşınabilir bir çözümdür.
invert
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.