This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
I first noticed how annoying this was when Jesse was doing a demo last year at OSCON. The main window is fronted whenever something displays a trivial dialog. Since NbPresenter was moved to core/winsys, the CVS history is gone, so I can't find out if there was a real issue that caused it to be done this way. I'm attaching a one line patch to use KeyboardFocusManager.getActiveWindow() and use that as the parent if the active window is an instance of Frame. The result is much nicer, at least if the user types a bogus value in a property editor and needs to be notified what is wrong. Doesn't seem to cause any problems on Windows - not sure about other os's.
Created attachment 10823 [details] Trivial patch to avoid fronting main window whenever a trivial dialog is shown
CC'ing Jesse, who did a lot of messing with modal dialogs when dealing with the help system, in case he has any idea why it wasn't done this way in the first place.
I didn't actually do much with modal dialogs at all. Sorry, but I don't know much about focus stuff. Re. history - it's not gone, still there in CVS. E.g.: cvs -d :pserver:jglick@cvs.netbeans.org:2401/shared/data/helm/cvs/repository rlog -N core/src/org/netbeans/core/NbPresenter.java
I checked on RH 8 with KDE 3.0.3. It seems OK with modal dialog. What does it have with focus? IMO it has nothing to do with focus. It is about owner of dialog. Owner sets z-order for OS window manager ie. when you set for example Options window as owner for dialog dialog cannot get behind of its owner. (But anyway because main window and Options window are independent you can now front main window to hide both dialog and Options window.) I will test Solaris/CDE too.
The only worry would be if a component in a window behind the main window will want to show a modal dialog. I'm not sure, but maybe it could be a problem for some window manager on Linux. At any rate, you could always see if the window has focus (in which case, it's probably not behind anything), and if not, do something to make sure the dialog is on top like have it owned by the main window. Probably will never be a problem.
It seems it is ok also on Solaris 8 with CDE. JDK 1.4.2 FCS. Fixed in main trunk. Modified: /cvs/core/windows/src/org/netbeans/core/windows/DialogDisplayerImpl.java r.1.3
*** Issue 33480 has been marked as a duplicate of this issue. ***
x
Missing resolution.
Tim, is Version really 4.0 dev? Sounds like this is older than that. Can you set appropriately? Otherwise it is not a candidate for merging to a 3.5.x release, for example.
Specifically, issue #33480 was reported against 3.5.
Yes this issue happens also on NB 3.5. However patch for NB 3.5 would be different (due to winsys separation in trunk).
Would the 3.5 and 4.0 patches really be substantially different, or just applied to different file paths?
Code would be the same just applied to NbTopManager. I change version to 3.5.
*** Issue 33080 has been marked as a duplicate of this issue. ***
verified in [nb_dev](20030723)