Bug 236485 - [ui] highlighting newly added site content needs to be more selective
Summary: [ui] highlighting newly added site content needs to be more selective
Status: VERIFIED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.4   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.5 M3   Edit
Assignee: Susan McCourt CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance, polish
Depends on: 234213 250129
Blocks:
  Show dependency tree
 
Reported: 2008-06-10 14:54 EDT by Susan McCourt CLA
Modified: 2008-10-29 15:43 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Susan McCourt CLA 2008-06-10 14:54:38 EDT
As part of improving the "add site" workflow in bug #216028, we added code to try to load newly added repos that are enabled, and make them visible in the site list.  This works nicely for simple cases.

The problem is that sites can reference other sites.  

- a user adds site A, and as it loads, it references site B.  
- Now site B will be loaded.  
- If site B finishes loading after site A (which is expected), then site B's contents will be made visible.  The user expects site A.

We need a way to distinguish a site that got added directly by the user, vs. a site that was added programatically (by reference or whatever the case).  

We may need to have the UI issue a special event to handle this case and assume that all normal repo events do not require special behavior.  This will have the added benefit of not loading a bunch of sites referenced by one site until they are needed.
Comment 1 Susan McCourt CLA 2008-06-10 14:55:30 EDT
marking 3.5.
Depending on the risk of the fix this might be a good candidate for 3.4.1 backport.
Comment 2 Susan McCourt CLA 2008-10-08 13:12:43 EDT
> We may need to have the UI issue a special event to handle this case and assume
> that all normal repo events do not require special behavior.  This will have
> the added benefit of not loading a bunch of sites referenced by one site until
> they are needed.

What the UI does will likely depend on what happens in bug #234213 and bug #250129.  If programatically added repos remain disabled, or have some other distinguishing flag/property in the repo event, then the UI won't have to trigger any special kind of event.  

Otherwise the UI can trigger its own custom event and we'll just ignore the adds.  I'll mark this bug M4 as that is when many of these issues will be determined.

Comment 3 Susan McCourt CLA 2008-10-14 18:03:57 EDT
In bug 248989, I decided it would be best to issue a specialized UI event when a repo is added through the UI so that I wouldn't compound the issues in bug #250129 by responding to ENABLEMENT events from system repositories, etc.  

Given that choice, this bug is now fixed.
Comment 4 Susan McCourt CLA 2008-10-29 15:43:09 EDT
verified WinXP, Build id: I20081029-0100

To verify, you want to have the UI open while Ganymede loads and not see any refreshes in the available software view.  This is a bit harder than it was before, since repos are often preloaded, but can be verified doing something like:

- Open "Install New Software" and then delete all the repos.
- Exit and clean out repo caches.
- Now restart and open "Install New Software"
- Add eclemma site, then immediately add Ganymede.  Expand eclemma and when the items show, select one and click next and wait for resolve.  (Resolve depends on ganymede loading).
- Note that when resolve is done, there are no further expansions or refreshes in the tree, selections are preserved.