NetBeans IDE Dev (Build 20070419-0406)
1.6.0; Java HotSpot(TM) Client VM 1.6.0-b105
Linux version 2.6.16-1.2122_FC5 running on i386
en_US (nb); UTF-8
1. start debugging
2. open classes view, select a class, open ist Instances
3. Instances view is opened in 'center' pane like editor
4. finish debugger session
5. repeat steps 1 and 2
Instances view is opened in 'west' pane (like Projects and Files views). After
the Instances view is closed and opened again it is put to editor pane.
I've reproduced this. But I have no idea where is the problem, the instances
view has assigned Editor mode. If you close it and open again, it will open
correctly in the Editor. So, it's strange...
Obsolete milestone, please reevaluate
*** Issue 117382 has been marked as a duplicate of this issue. ***
The mechanism how is it stored by window system needs to be explored...
*** Issue 118419 has been marked as a duplicate of this issue. ***
This is a bug of the window system.
That will be demonstrated by a simple module, which I'm going to attach here...
Created attachment 50637 [details]
The NBM to simulate this bug.
Created attachment 50638 [details]
Sources of the demonstration module.
How to reproduce:
1) Install the attached module.
2) Run Windows -> Test Window
3) a "Test Window" will be opened in Editor mode
4) Run Windows -> Close Test Window
5) The "Test Window" will dissmiss
6) Run Windows -> Test Window again
7) The "Test Window" will be opened in the Explorer mode, instead of Editor.
1) When you close the "Test Window" explicitely by the X button, it will be opened correctly in the Editor mode the next
2) "Close Test Window" action closes the group in which "Test Window" resides. This bug occurs only when the window is
closed via it's group. It does not occur when the window is closed explicitely via TopComponent.close()
To build the attached module from sources, extract it into $NB_ROOT/debuggerjpda folder.
This is by design. When you close TC which is not persistent it is completely removed from model/mode => winsys
effectively forgets TC location. (It is the same regardless if you close TC using groupClose or TC.close. There is just
difference when you open TC using TC.open() it looks for default editor mode whereas if you use groupOpen it looks for
default view mode. So it is just coincidence that you define you TC in editor and TC.open opens TC by default in editor.
After discussion with Dafe we decided to change this - TC should stay in model when closed even if it is not persistent.
For closed TC only TCID is stored in model so TC instance can be gc'ed when TC is closed. In such case it is not
guaranteed that for given TCID you get the same TC instance during one app session.
For next release we plan to add new persistence type for TC to support use case when only new location of TC should
saved but not TC content.
Non persistent TC is not removed from mode when closed ie. winsys remembers position of non persistent TC when TC is closed.
Fixed in main trunk:
new revision: 1.71; previous revision: 1.70
new revision: 1.22; previous revision: 1.21
new revision: 1.19; previous revision: 1.18
Thanks, it works as expected now.
Forgot about closing one TC:
new revision: 1.72; previous revision: 1.71
new revision: 1.31; previous revision: 1.30
Next part is to check if closed TC has persistent type PERSISTENT_ALWAYS during winsys save. It is issue #119825.
This fix introduced regression which is fixed as issue #119747. Shortly removing unused TC and non permanent modes was
broken. See issue #119747 for more details.