// TODO: sometimes they can't be closed anymore? (see #1014939) sclass FrameCoActivator { long lastTime; int timeout = 100; // prohibit endless loop *(final Frame... frames) { for (final Frame f1 : frames) { f1.addWindowListener(new WindowAdapter { public void windowIconified(WindowEvent e) { lastTime = sysNow(); } public void windowActivated(WindowEvent e) { if (sysNow() >= lastTime+timeout) { lastTime = sysNow(); //print(text); for (Frame f2 : frames) if (f2 != f1) activateFrame(f2); activateFrame(f1); } } }); } } } static Frame[] coActivateFrames(Frame... frames) { new FrameCoActivator(frames); ret frames; } static <A extends Frame> L<A> coActivateFrames(L<A> frames) { coActivateFrames(toArray(frames, Frame.class)); ret frames; }
download show line numbers debug dex old transpilations
Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #1007341 |
Snippet name: | coActivateFrames - make multiple frames always go to foreground simultaneously |
Eternal ID of this version: | #1007341/13 |
Text MD5: | 71f6067923d2a14ff3f6582df689e7a4 |
Author: | stefan |
Category: | javax / gui |
Type: | JavaX fragment (include) |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2018-05-06 19:28:52 |
Source code size: | 967 bytes / 36 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 573 / 617 |
Version history: | 12 change(s) |
Referenced in: | [show references] |