Jump to: navigation, search

Difference between revisions of "Platform UI/Plan/3.5"

(added milestones)
Line 1: Line 1:
=Introduction=
+
= Themes =
 
+
* Reliability
This page contains blue sky thinking about the kind of things we would like to see in the immediate future of the Platform UI component. This is a place to collect ideas - it does not represent a commitment to implement the ideas.
+
* Performance
 
+
* Support other teams
Note that items marked as "proposed" are just that - we don't know yet how much time we'll have or how many of the items we will be able to work on for 3.5.  If you are not currently a committer and would like to work on any of these items, don't hesitate to contact us - see also [[Platform_UI/How_to_Contribute]]. We will have a page with a milestone-level plan soon, where you will be able to see what is planned from our side so far.
+
  
 
=Milestones=
 
=Milestones=
Line 9: Line 8:
  
 
== Milestone M1 (2008-08-08) ==
 
== Milestone M1 (2008-08-08) ==
 +
* [[Image:Ok_green.gif]] (Matthew) New API in data binding: ComputedSet, MultiList
 
== Milestone M2 (2008-09-19) ==
 
== Milestone M2 (2008-09-19) ==
 +
* [[Image:Ok_green.gif]] (Dani) "Open With" in Open Resource dialog ({{Bug|40632}})
 
== Milestone M3 (2008-10-31) ==
 
== Milestone M3 (2008-10-31) ==
 +
* [[Image:Glass.gif]] (Boris) '''ICU4.0''' Adopt ICU4J 4.0. (proposed)
 
== Milestone M4 (2008-12-12) ==
 
== Milestone M4 (2008-12-12) ==
 +
* [[Image:Glass.gif]] {{Bug|246875}}. [About] allow for an extensible About dialog
 
== Milestone M5 (2009-01-30) (Major Features Done) ==
 
== Milestone M5 (2009-01-30) (Major Features Done) ==
 
== Milestone M6 (2009-03-13) (API Freeze) ==
 
== Milestone M6 (2009-03-13) (API Freeze) ==
 
== Milestone M7 (2009-05-01) (Performance, Polish) ==
 
== Milestone M7 (2009-05-01) (Performance, Polish) ==
  
 +
=Ideas=
  
= Ongoing efforts =
+
The remainder of this page contains blue sky thinking about the kind of things we would like to see in the immediate future of the Platform UI component. This is a place to collect ideas - it does not represent a commitment to implement the ideas.
 +
 
 +
Note that items marked as "proposed" are just that - we don't know yet how much time we'll have or how many of the items we will be able to work on for 3.5.  If you are not currently a committer and would like to work on any of these items, don't hesitate to contact us - see also [[Platform_UI/How_to_Contribute]].
 +
 
 +
== Ongoing efforts ==
  
 
We usually spend time on all of the following.
 
We usually spend time on all of the following.
Line 34: Line 42:
 
* Currency (new platforms, new versions of SWT, ICU4J, ...)
 
* Currency (new platforms, new versions of SWT, ICU4J, ...)
  
= Common Navigator =
+
== Common Navigator ==
 
''Francis - please add items here.''
 
''Francis - please add items here.''
  
= Data Binding =
+
== Data Binding ==
 
* '''Property-based Observables.''' (proposed - see {{bug|194734}})
 
* '''Property-based Observables.''' (proposed - see {{bug|194734}})
 
* '''Builder API.''' Add API for easier building of bindings and their update strategies. (proposed - see {{bug|203492}})
 
* '''Builder API.''' Add API for easier building of bindings and their update strategies. (proposed - see {{bug|203492}})
 
* '''Integrating Community contributions.''' We have a number of patches that were submitted - these need to be reviewed and released. (committed)
 
* '''Integrating Community contributions.''' We have a number of patches that were submitted - these need to be reviewed and released. (committed)
  
= p2 Integration =
+
== p2 Integration ==
 
* '''Extensible About Experience''' it would significantly improve the user experience if there was a way to tie the bundles presented in the About dialog to the mechanism that's capable of updating the bundles.  However, hardcoding knowledge of the update manager is unacceptable.  If the About experience was plugable, however, we might be able to achieve such a unified experience without harming the traditional RCP users who may not desire it.  See {{bug|246875}} for details. (proposed)
 
* '''Extensible About Experience''' it would significantly improve the user experience if there was a way to tie the bundles presented in the About dialog to the mechanism that's capable of updating the bundles.  However, hardcoding knowledge of the update manager is unacceptable.  If the About experience was plugable, however, we might be able to achieve such a unified experience without harming the traditional RCP users who may not desire it.  See {{bug|246875}} for details. (proposed)
  
= Commands and Contributions =
+
== Commands and Contributions ==
  
 
* '''Global Actions''' - requests
 
* '''Global Actions''' - requests
Line 66: Line 74:
 
* '''Macro Recording''' I'd like to investigate if we can provide a simple macro recording mode, some form of key events + parameterized commands, that could then be played back
 
* '''Macro Recording''' I'd like to investigate if we can provide a simple macro recording mode, some form of key events + parameterized commands, that could then be played back
  
= Tabbed Properties =  
+
== Tabbed Properties ==
 
* '''Tabbed Properties Improvements''' Incremental improvements to the tabbed properties support, such as the ability to get/set the currently active tab/section in the view.  (proposed)
 
* '''Tabbed Properties Improvements''' Incremental improvements to the tabbed properties support, such as the ability to get/set the currently active tab/section in the view.  (proposed)
 
* '''[[Platform_UI/Multi-instance Properties View]].''' {{bug|248103}} The properties view does not allow a user to look at the properties of multiple items at the same time.  We would like the ability to pin a properties view to one object and be able to open a different properties view for a different object, so they can be compared. (proposed)
 
* '''[[Platform_UI/Multi-instance Properties View]].''' {{bug|248103}} The properties view does not allow a user to look at the properties of multiple items at the same time.  We would like the ability to pin a properties view to one object and be able to open a different properties view for a different object, so they can be compared. (proposed)
  
= Misc (we should split this into themes when appropriate) =
+
== Misc (we should split this into themes when appropriate) ==
 
* '''Review of Cross-Boundry API Usage''' Review use of non-API in client code and investigate promotion of code to API where appropriate. (proposed)
 
* '''Review of Cross-Boundry API Usage''' Review use of non-API in client code and investigate promotion of code to API where appropriate. (proposed)
 
* '''Improved Customization Support.''' The current "Customize Perspective" dialog is not very usable. Ideally, users should be able to hide UI elements (menu, toolbar, wizards, context menu, ...) that they don't need, and bring back previously hidden UI elements. Changing the order of UI elements may be too difficult given our current architecture. (proposed)
 
* '''Improved Customization Support.''' The current "Customize Perspective" dialog is not very usable. Ideally, users should be able to hide UI elements (menu, toolbar, wizards, context menu, ...) that they don't need, and bring back previously hidden UI elements. Changing the order of UI elements may be too difficult given our current architecture. (proposed)
Line 77: Line 85:
 
* '''Unified Desktop Notification Support'''  Both Mylyn and Jazz implement their own mechanism for displaying desktop notifications (popups).  A unified API that they can both share should exist at the workbench level.  Please see {{bug|209911}} and {{bug|177974}} for details.  (proposed)
 
* '''Unified Desktop Notification Support'''  Both Mylyn and Jazz implement their own mechanism for displaying desktop notifications (popups).  A unified API that they can both share should exist at the workbench level.  Please see {{bug|209911}} and {{bug|177974}} for details.  (proposed)
 
* '''Editor Support''' Look at support for per-perspective editors and full-screen editing mode.  Also review some possible enhancements to MultiPageEditorPart (fire change events when page changes?  MPEP as a metaphor for 1st class editor navigation?)
 
* '''Editor Support''' Look at support for per-perspective editors and full-screen editing mode.  Also review some possible enhancements to MultiPageEditorPart (fire change events when page changes?  MPEP as a metaphor for 1st class editor navigation?)
* '''ICU4.0''' Accommodate any new API that may surface in this version. (proposed)
+
 
 +
 
 +
= Legend =
 +
[[Image:Glass.gif]] Needs some investigation
 +
 
 +
[[Image:Progress.gif]] Patch in progress
 +
 
 +
[[Image:Ok_green.gif]] Bug fixed / Feature added
  
 
[[Category:Platform UI]]
 
[[Category:Platform UI]]

Revision as of 14:04, 23 September 2008

Themes

  • Reliability
  • Performance
  • Support other teams

Milestones

The following sections contain proposed and committed items that (as of September 2008) we think will be worked on during the 3.5 development cycle.

Milestone M1 (2008-08-08)

  • Ok green.gif (Matthew) New API in data binding: ComputedSet, MultiList

Milestone M2 (2008-09-19)

  • Ok green.gif (Dani) "Open With" in Open Resource dialog (bug 40632)

Milestone M3 (2008-10-31)

  • Glass.gif (Boris) ICU4.0 Adopt ICU4J 4.0. (proposed)

Milestone M4 (2008-12-12)

  • Glass.gif bug 246875. [About] allow for an extensible About dialog

Milestone M5 (2009-01-30) (Major Features Done)

Milestone M6 (2009-03-13) (API Freeze)

Milestone M7 (2009-05-01) (Performance, Polish)

Ideas

The remainder of this page contains blue sky thinking about the kind of things we would like to see in the immediate future of the Platform UI component. This is a place to collect ideas - it does not represent a commitment to implement the ideas.

Note that items marked as "proposed" are just that - we don't know yet how much time we'll have or how many of the items we will be able to work on for 3.5. If you are not currently a committer and would like to work on any of these items, don't hesitate to contact us - see also Platform_UI/How_to_Contribute.

Ongoing efforts

We usually spend time on all of the following.

  • Working with the community, especially when there are patches or code contributions
  • Testing (both manual testing, and improving the test suites)
  • Regressions
  • Bug fixing
  • Performance
  • UI consistency
  • Exposing existing functionality as API where necessary (e.g. when important functionality required access to internals)
  • Accessibility
  • Internationalization, BiDi
  • Polish
  • Reliability / Stability / Security
  • Currency (new platforms, new versions of SWT, ICU4J, ...)

Common Navigator

Francis - please add items here.

Data Binding

  • Property-based Observables. (proposed - see bug 194734)
  • Builder API. Add API for easier building of bindings and their update strategies. (proposed - see bug 203492)
  • Integrating Community contributions. We have a number of patches that were submitted - these need to be reviewed and released. (committed)

p2 Integration

  • Extensible About Experience it would significantly improve the user experience if there was a way to tie the bundles presented in the About dialog to the mechanism that's capable of updating the bundles. However, hardcoding knowledge of the update manager is unacceptable. If the About experience was plugable, however, we might be able to achieve such a unified experience without harming the traditional RCP users who may not desire it. See bug 246875 for details. (proposed)

Commands and Contributions

  • Global Actions - requests
    • Requests for new commands/actions: ex: CollapseAll, ExpandAll, Clean Project, etc
  • Framework Cleanup - Further conversions of action framework to command framework
  • Command Framework - unimplemented aspects of the command framework
    • Better support for toggle buttons and radio buttons, persistence of their state, etc
    • More enhancements to the KeyBinding page
    • Dynamic service support
    • Service/SourceProvider re-evaluation. Our Source Providers need to be consistent and we should be providing useful property testers as API
    • Providing appropriate context to handlers updating UI elements, for example org.eclipse.ui.internal.services.IWorkbenchLocationService
    • provide the menu override framework - allow specific menu items/toolbar items to be customized (feature-level work)
    • Examine the global application context
    • perhaps provide image extension attributes can access shared images
    • how should menu contributions and potentially keybindings be provided/restricted to a product or application
  • Macro Recording I'd like to investigate if we can provide a simple macro recording mode, some form of key events + parameterized commands, that could then be played back

Tabbed Properties

  • Tabbed Properties Improvements Incremental improvements to the tabbed properties support, such as the ability to get/set the currently active tab/section in the view. (proposed)
  • Platform_UI/Multi-instance Properties View. bug 248103 The properties view does not allow a user to look at the properties of multiple items at the same time. We would like the ability to pin a properties view to one object and be able to open a different properties view for a different object, so they can be compared. (proposed)

Misc (we should split this into themes when appropriate)

  • Review of Cross-Boundry API Usage Review use of non-API in client code and investigate promotion of code to API where appropriate. (proposed)
  • Improved Customization Support. The current "Customize Perspective" dialog is not very usable. Ideally, users should be able to hide UI elements (menu, toolbar, wizards, context menu, ...) that they don't need, and bring back previously hidden UI elements. Changing the order of UI elements may be too difficult given our current architecture. (proposed)
  • Sharable Working Sets. The usefulness of working sets is limited by the fact they are not team sharable. An option to tag resources with the information, or the ability to generate a project with the working set info could be implemented. (proposed)
  • Richer Compare Editor. Help the Compare, Text, and JDT Teams to produce a richer compare editor, i.e., with more Java editor features enabled. (proposed)
  • Unified Desktop Notification Support Both Mylyn and Jazz implement their own mechanism for displaying desktop notifications (popups). A unified API that they can both share should exist at the workbench level. Please see bug 209911 and bug 177974 for details. (proposed)
  • Editor Support Look at support for per-perspective editors and full-screen editing mode. Also review some possible enhancements to MultiPageEditorPart (fire change events when page changes? MPEP as a metaphor for 1st class editor navigation?)


Legend

Glass.gif Needs some investigation

Progress.gif Patch in progress

Ok green.gif Bug fixed / Feature added