Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 327577 - [Compatibility] 'Close All' can instantiate uninstantiated editors
Summary: [Compatibility] 'Close All' can instantiate uninstantiated editors
Status: VERIFIED FIXED
Alias: None
Product: e4
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 1.0   Edit
Hardware: All All
: P3 major (vote)
Target Milestone: 4.1 M3   Edit
Assignee: Remy Suen CLA
QA Contact: Remy Suen CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-10-12 12:07 EDT by Remy Suen CLA
Modified: 2010-10-26 16:07 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Remy Suen CLA 2010-10-12 12:07:02 EDT
Need to change the code so that we close uninstantiated editors before the instantiated ones.

Thread [main] (Suspended (breakpoint at line 39 in CompatibilityEditor))	
	CompatibilityEditor.<init>(MPart, EditorReference) line: 39	
	NativeConstructorAccessorImpl.newInstance0(Constructor, Object[]) line: not available [native method]	
	NativeConstructorAccessorImpl.newInstance(Object[]) line: 67	
	DelegatingConstructorAccessorImpl.newInstance(Object[]) line: 45	
	Constructor<T>.newInstance(Object...) line: 522	
	ConstructorRequestor.execute() line: 44	
	InjectorImpl.internalMake(Class<?>, PrimaryObjectSupplier, PrimaryObjectSupplier) line: 290	
	InjectorImpl.make(Class<T>, PrimaryObjectSupplier) line: 219	
	ContextInjectionFactory.make(Class<T>, IEclipseContext) line: 152	
	ReflectionContributionFactory.createFromBundle(Bundle, IEclipseContext, IEclipseContext, URI) line: 90	
	ReflectionContributionFactory.doCreate(String, IEclipseContext, IEclipseContext) line: 64	
	ReflectionContributionFactory.create(String, IEclipseContext) line: 53	
	ContributedPartRenderer.createWidget(MUIElement, Object) line: 56	
	PartRenderingEngine.createWidget(MUIElement, Object) line: 630	
	PartRenderingEngine.createGui(MUIElement, Object, IEclipseContext) line: 469	
	PartRenderingEngine.createGui(MUIElement) line: 546	
	StackRenderer.showTab(MUIElement) line: 512	
	LazyStackRenderer$1.handleEvent(Event) line: 74	
	UIEventHandler.handleEvent(Event) line: 41	
	EventHandlerWrapper.handleEvent(Event, Permission) line: 188	
	EventHandlerTracker.dispatchEvent(Object, Object, int, Object) line: 198	
	EventManager.dispatchEvent(Set<Entry<K,V>>, EventDispatcher<K,V,E>, int, E) line: 230	
	ListenerQueue<K,V,E>.dispatchEventSynchronous(int, E) line: 148	
	EventAdminImpl.dispatchEvent(Event, boolean) line: 139	
	EventAdminImpl.sendEvent(Event) line: 78	
	EventComponent.sendEvent(Event) line: 39	
	EventBroker.send(String, Object) line: 73	
	UIEventPublisher.notifyChanged(Notification) line: 58	
	PartStackImpl(BasicNotifierImpl).eNotify(Notification) line: 380	
	PartStackImpl(ElementContainerImpl<T>).setSelectedElement(T) line: 159	
	PartServiceImpl.hidePart(MPart, boolean) line: 831	
	WorkbenchPage.hidePart(MPart, boolean, boolean, boolean) line: 986	
	WorkbenchPage.closeEditors(IEditorReference[], boolean) line: 886	
	WorkbenchPage.closeAllEditors(boolean) line: 775	
	CloseAllHandler.execute(ExecutionEvent) line: 48
Comment 1 Remy Suen CLA 2010-10-13 10:50:39 EDT
Fixed in CVS HEAD. Thanks for the bug report, Paul.
Comment 2 Eric Moffatt CLA 2010-10-26 15:50:09 EDT
Verified in I20101026-0203.

I observed that there are no calls to the ContributedPartRenderer when using close all...

However, there's a corollary...opening multiple editors instantiates all of them...open a new defect ?
Comment 3 Remy Suen CLA 2010-10-26 16:07:43 EDT
(In reply to comment #2)
> However, there's a corollary...opening multiple editors instantiates all of
> them...open a new defect ?

Yes, the openEditors(IEditorInput[], String[], int) doesn't work properly at the moment. I believe there is a test for this in the workbench.