Ano, je to bohuzel znama chyba, ktera se tahne uz doslova leta. Mezi dalsi "speky" na Linuxu patri zejmena:
- okno se otevre se spatnou velikosti - okno se otevre s nulovou velikosti (takoveto "miniokno", ktere musite nejdrive roztahnout) -- toto dela napriklad i komercni IntelliJ IDEA (nektere verze) - okna se po kazdem otevreni posunou trosku dolu (spatne pozicovani oken - IceWM, Xfce) Nekde se to projevi, jinde ne (ruzne kombinace JVM, Linuxu) a zda se, ze nikdo nevi, jak to opravit :-( Kdybyste na neco prisel, urcite napiste. LZ 7.6.07, Pavel Nemec <[EMAIL PROTECTED]>:
Tak se zdá že opravdu nejsem první ani poslední kdo to kdy potkal :( http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4921738 On Thursday 07 June 2007 12:44:36 Pavel Nemec wrote: > KDE, FVWM, MWM, GNOME, > vice jsem jich zatim otestovat nestihl (s touto podivnosti) > > P. > > On Thursday 07 June 2007 12:07:39 Lukas Zapletal wrote: > > Jaky pouzivate Window Manager? > > > > LZ > > > > 7.6.07, Pavel Nemec <[EMAIL PROTECTED]>: > > > Mam docela zapeklitý problém, > > > > > > mám testovací aplikaci > > > Frame, který na stisk klávesové zkratky otevře modální Dialog. > > > Celé to překriji Window. > > > Dialog se po stisknutí klávesy zavře ( a vrátí focus Frame) > > > > > > Na Win a Mac se to chová "dobře". Tedy pokud držím klávesu tak na mě > > > vyskakuje Dialogové okno a zase se schovává. > > > Na Linuxu se ale po jedné či dvou iteracích focus prostě ztratí. > > > > > > Nalezl jsem několik zmínek o problémech linux+focus. Zvláštní také je > > > že na některých verzích linuxu (stejná verze javy) to funguje. > > > > > > Nemáte s podobným problémem někdo více zkušeností. > > > > > > Předem díky, > > > Pavel > > > > > > Test case > > > > > > import java.awt.*; > > > import java.awt.event.*; > > > > > > class NLModal extends Dialog{ > > > NLModal (Frame f) > > > { > > > super (f, "modal", true); > > > this.setBackground(Color.blue); > > > this.setAlwaysOnTop(true); > > > addWindowListener (new WindowAdapter (){ > > > public void windowClosing (WindowEvent e){ > > > dispose (); > > > }}); > > > addKeyListener (new KeyAdapter (){ > > > public void keyPressed (KeyEvent e){ > > > System.out.println ("modal: " + e.paramString ()); > > > dispose (); > > > }}); > > > } > > > } > > > > > > > > > public class NLTest > > > { > > > public static void main (String[] args){ > > > Frame f = new Frame ("NLTest"); > > > f.setBackground(Color.yellow); > > > > > > f.addWindowListener (new WindowAdapter (){ > > > public void windowClosing (WindowEvent e){ > > > System.exit (0); > > > }}); > > > f.addKeyListener (new KeyAdapter (){ > > > public void keyPressed (KeyEvent e){ > > > System.out.println ("frame: " + e.paramString ());; > > > Dialog d = new NLModal ((Frame) e.getComponent ()); > > > d.setBounds (50, 100, 600, 100); > > > d.show (); > > > }}); > > > > > > Dimension d = f.getToolkit ().getScreenSize (); > > > > > > f.setBounds (0, 0, 300, 25); > > > f.show (); > > > > > > Window w = new Window (f); > > > w.setBackground(Color.gray); > > > w.setBounds (0, 50, 300, 200); // working > > > //w.setBounds (0, 0, d.width, d.height-1); // working > > > //w.setBounds (0, 0, d.width-1, d.height); // working > > > //w.setBounds (0, 0, d.width, d.height); // focus loss > > > w.show (); > > > > > > } > > > } > > > > > > -- > > > Pavel Nemec > > > Software Engineer > > > --------------------------------------------------------------------- > > > SuSE CR, s.r.o. e-mail: [EMAIL PROTECTED] > > > Lihovarska 1060/12 tel:+420 284 028 981 > > > 190 00 Praha 9 fax:+420 296 542 374 > > > Ceska republika http://www.suse.cz -- Pavel Nemec Software Engineer --------------------------------------------------------------------- SuSE CR, s.r.o. e-mail: [EMAIL PROTECTED] Lihovarska 1060/12 tel:+420 284 028 981 190 00 Praha 9 fax:+420 296 542 374 Ceska republika http://www.suse.cz
-- Lukas Zapletal http://lukas.zapletalovi.com
