Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 188570

Summary: [Perspectives] createPlaceholderFolder creates visible empty placeholder when no views active
Product: [Eclipse Project] Platform Reporter: Thony Lundin <thony.lundin>
Component: UIAssignee: Platform UI Triaged <platform-ui-triaged>
Status: CLOSED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: bokowski, emoffatt, etienne.fort, mikhail.kalkov, public.web.josh, thony.lundin
Version: 3.3Keywords: helpwanted
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard: stalebug
Attachments:
Description Flags
Example RCP application showing the perspective placeholder bug. none

Description Thony Lundin CLA 2007-05-23 03:01:53 EDT
Build ID:  I20070503-1400

Steps To Reproduce:
1. Create some placeholders for views with createPlaceholderFolder() in perspective class
2. contribute a view to the perspective extension point (org.eclipse.ui.perspectiveExtensions) that has relationship set to stack and visible false. So no views should be visible in one of the placeholders at program start.
3. An empty placeholder is shown at application start for the placeholder that has no visible views at start
4. Activate a view that is placed in the currently empty placeholder 
5. View shows up in the empty placeholder, now close view
6. View and empty placeholder disappears
7. Open view again now placeholder and view appears. So after step 6 application works as expected which is that placeholder is not shown when no views are visible in it. So bug is only appearing at start of application.

This bug happens ONLY if relationship for view is set to stack. If you use left, right, bottom, top the emtpy placeholder is not shown and application works as expected.


More information:
The perspective class used when bug was found:

public class DefaultPerspective implements IPerspectiveFactory {
	
	public static final String ID = Activator.PLUGIN_ID + ".perspectives.defaultPerspective";

	public void createInitialLayout(IPageLayout layout) {
		
		String editorArea = layout.getEditorArea();
		layout.setEditorAreaVisible(false);
		
		
		layout.createPlaceholderFolder("folderTop", IPageLayout.TOP, 0.15f, editorArea);	
		layout.createPlaceholderFolder("folderRight", IPageLayout.RIGHT, 0.85f, editorArea);		
		layout.createPlaceholderFolder("folderRight1", IPageLayout.RIGHT, 0.81f, editorArea);
		layout.createPlaceholderFolder("folderRight3", IPageLayout.BOTTOM, 0.5f, "folderRight1");
		layout.createPlaceholderFolder("folderRight2", IPageLayout.BOTTOM, 0.5f, "folderRight1");
		layout.createPlaceholderFolder("folderRight4", IPageLayout.BOTTOM, 0.5f, "folderRight3");
		layout.createPlaceholderFolder("folderLeft", IPageLayout.LEFT, 0.2f, editorArea);
		layout.createPlaceholderFolder("folderBottom", IPageLayout.BOTTOM, 0.5f, editorArea);
		
		layout.createPlaceholderFolder("folderMain", IPageLayout.LEFT, 0.5f,
				editorArea);
		layout.createPlaceholderFolder("folderMainBottom", IPageLayout.BOTTOM, 0.5f,
				"folderMain");
	}
	
}

The plugin.xml perspective extension point declarations for the views.

 <view
               id="views.testView1"
               relationship="stack"
               relative="folderMainBottom"
               visible="false">
         </view>
         <view
               id="views.testView2"
               relationship="stack"
               relative="folderMainBottom"
               visible="false">
         </view>
Comment 1 Thony Lundin CLA 2007-06-28 04:48:02 EDT
Checked that bug still valid in 3.3 RC4
Comment 2 Thony Lundin CLA 2007-10-24 03:42:53 EDT
Created attachment 81027 [details]
Example RCP application showing the perspective placeholder bug.

Example RCP application showing the bug.

When starting this RCP application an empty placeholder is shown. Use the "View" menu to add a view to this placeholder and then close view. First now the application works as intended. So error is that the empty placeholder is shown when starting application.
Comment 3 Etienne CLA 2009-02-13 11:33:47 EST
Checked that bug still valid in 3.4.1 M20080911-1700

This bug has been waiting for almost 2 years. Is someone working on it ?
Any clue to start working on it ?
Comment 4 Paul Webster CLA 2009-02-13 11:47:41 EST
No, this is not scheduled to be worked on, but I would consider patches.

http://wiki.eclipse.org/Platform_UI/How_to_Contribute

PW
Comment 5 Mikhail Kalkov CLA 2011-08-07 12:29:07 EDT
I've submitted a patch for a similar problem to https://bugs.eclipse.org/bugs/show_bug.cgi?id=354089 Please, have a look if it fixes this issue too.
Comment 6 Lars Vogel CLA 2019-11-14 03:09:51 EST
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

If the bug is still relevant, please remove the "stalebug" whiteboard tag.