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

Bug 34519

Summary: Dialog slow to cancel when Properties/External Tools was selected
Product: [Eclipse Project] Platform Reporter: Knut Radloff <knut_radloff>
Component: AntAssignee: Darin Wright <darin.eclipse>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: Kevin_McGuire
Version: 2.1   
Target Milestone: 2.1 RC3   
Hardware: PC   
OS: All   
Whiteboard:
Bug Depends on: 34766    
Bug Blocks:    

Description Knut Radloff CLA 2003-03-10 17:23:32 EST
build RC2

-select a project
-open properties
-select external tools page
-select cancel
->It takes five seconds and more before the dialog is dismissed. The first time
I tried this I selected all property pages for the project. Cancel took about 10
seconds. I did not change any values.
Comment 1 Lynne Kues CLA 2003-03-10 17:52:30 EST
It seems slower for some projects vs. others.  For example, in my workspace it 
is slower to cancel for org.apache.ant vs. org.apache.xerces.  

Also, if you expand a binary project, open the Properties page, move the page 
so you can see the Navigator, select External Tools Builder and press cancel, 
you can see what appears to be something being added and removed from the 
project's children.
Comment 2 Lynne Kues CLA 2003-03-10 18:10:35 EST
Note I see the behavior in the Resources Perspective.
Comment 3 Knut Radloff CLA 2003-03-10 18:18:00 EST
I see the magic add/remove in the Navigator view in any perspective. Look at 
the root level of the project. I only see this on Windows, not on Linux-GTK.
Cancelling on binary projects is fast for me. Cancelling on source projects 
that have the Java builder, pde manifest builder and extension point schema 
builder seems to be slow.
Comment 4 Knut Radloff CLA 2003-03-10 18:50:05 EST
When I open the project properties, go to the external tool builders page, 
select cancel, the team.core plugin is activated. When I just open the 
properties dialog and cancel while still on the info page it does not get 
activated.
The project I open the properties on is imported as source from external 
plugins. I don't have any repository locations defined.
The plugin activation would explain some of the delay if the plugin is 
activated when I cancel the properties dialog. However, the delay is sometimes 
very long and also sometimes happens on subsequent invocations.
Comment 5 Kevin McGuire CLA 2003-03-12 11:35:59 EST
Wrt Comment #4 From Knut Radloff, we opened bug #34766 and concluded:

------- Additional Comment #1 From Boris Shingarov 2003-03-11 20:13 ------- 
The interesting line is "getBuilderFolder().delete(true, false, null)" in 
externaltools.ui.BuilderPropertyPage.performCancel(): they are treating 
the ".externalToolBuilders" directory as an IFolder and deleting it in the 
resource sense; which triggers the moveDeleteHooks.
Comment 6 Jared Burns CLA 2003-03-12 15:44:55 EST
Dumb bug (dumb developer, anyway ;) ). We're calling getBuilderFolder() in
the performCancel in order to clean up the folder if we created it due to
edits. However, getBuilderFolder() *creates* the folder if it doesn't exist!

This should be easy to fix.
Comment 7 Jared Burns CLA 2003-03-12 17:48:07 EST
Fixed in BuilderPropertyPage. Please verify.
Comment 8 Darin Wright CLA 2003-03-12 21:45:58 EST
Verified.