[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[equinox-dev] the state of the p2 UI and ongoing design discussions

Hi, Everyone.

I was writing up a summary of our current plans for the p2 UI for some UI designers and Jeff suggested I post it here.  I'm hoping that these screen shots and pointers to bug reports might get those of you interested in UI issues to join some of our bugzilla discussions, since some of you may not have had the time to look at p2 yet.  Much of this info is available on the wiki (http://wiki.eclipse.org/Equinox_p2_User_Interface), but I include it here as an attention grabber.  

The M2 UI

Here is our basic dialog.  We launch it from "Help>Software Updates" but there's no reason you couldn't put it somewhere else, like a wizard or pref page.

- the terminology (feature/plug-in/add-on etc.) is pluggable.  We are using "feature" and "site" since update manager introduced this already.
- the "manage sites..." button will probably disappear or else evolve into an "Advanced..." button.
- An "Alert me for updates" check box is probably coming in M3.

Here's the available features page:

We are also looking at ways to better present this content:
- grouping the available features by categories similar to the current update manager UI
- providing a filter so that the user could easily find something by name by typing a few characters.  This would look a lot like the filtering mechanism in the existing Eclipse preferences dialog.

I have not included screen snaps of what happens when you push install or uninstall because they are uninteresting right now.
Likewise, the list of available updates that you see when you push "check for updates" is fairly raw right now.

What's next
- grouping/filtering of the content in the available list
- automatic updating - alerting the user, updating silently, etc.
- improving the workflow when the user chooses update/install/uninstall.  This includes things like showing download size, flagging any problems that an update might cause, etc.

M4 will likely cover:
- presentation and acceptance of licenses
- UI for rollback

Right now I'm focused on the "from inside the product" update UI.  I realize there are other avenues, such as web-click install, drag and drop into an Eclipse product, that are also worth exploring.

Related bugzilla discussions
What would a Rollback UI look like?  Does it relate to Undo?

How do we present a license to the user?  If we remember licenses, is there a UI for seeing what we've already accepted?

Filtering the "available software" list

Do users care where the "available software" comes from?

Categorizing the "available software"

Can a user rename/group what they install?
This discussion is probably the hardest to follow if you haven't been using the p2 API.  The term "entry points" is an implementation term for taking one or more "groups" (another implementation term you can think of as an available feature), and letting the user name it to something else when they install it.  For example, I select the "Task List" and "Blog" plug-ins, press the install button, and name them "productivity stuff."  So when I open the "Installed Features" page, I see "Productivity Stuff."  In implementation terms, I have taken two groups and assigned them to an entry point.  We are going to remove the ability to do this for now in the UI because it presents a bunch of issues.  Hopefully the discussion in the bug will make sense given these definitions.