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

From Eclipsepedia

Jump to: navigation, search
 
(40 intermediate revisions by 7 users not shown)
Line 1: Line 1:
=Introduction=
+
= Themes =
 +
* Reliability
 +
* Performance
 +
* Support other teams
 +
* e4 (Note that e4 work does not appear on this plan.)
  
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.
+
=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. For completed work, have a look at our [http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ui/buildnotes_workbench.html?view=co build notes].
  
= Ongoing efforts =
+
== Milestone M1 (2008-08-08) ==
 +
* [[Image:Ok_green.gif]] (all) 3.4.1 bug fixing
 +
* [[Image:Ok_green.gif]] (Matthew) New API in data binding: ComputedSet, MultiList
 +
== Milestone M2 (2008-09-19) ==
 +
* [[Image:Ok_green.gif]] (all) 3.4.1 bug fixing
 +
* [[Image:Ok_green.gif]] (Dani) "Open With" in Open Resource dialog ({{Bug|40632}})
 +
== Milestone M3 (2008-10-31) ==
 +
* [[Image:Ok_green.gif]] Working on our test suites day: September 29, 2008
 +
* [[Image:Ok_green.gif]] Working on performance day: September 30, 2008
 +
* [[Image:Progress.gif]] (Paul) '''Framework Cleanup''' -  Further conversions of action framework to command framework (see below for details)
 +
* [[Image:Progress.gif]] (Paul) '''Command Framework''' - unimplemented aspects of the command framework (see below for details)
 +
* (Deferred until after 3.5) (Boris, Paul) '''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)
 +
* [[Image:Ok_green.gif]](Dani) '''StyledString enhancement''' - Allow to insert characters into a styled string (see {{bug|227559}})
 +
 
 +
== Milestone M4 (2008-12-12) ==
 +
* [[Image:Ok_green.gif]] Working on our test suites day: November 3, 2008
 +
* [[Image:Ok_green.gif]] Working on performance day: November 4, 2008
 +
* [[Image:Ok_green.gif]] (Matthew Bisson, Eric) '''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 - see {{bug|182714}})
 +
* [[Image:Ok_green.gif]] (Kim, Paul) '''Cocoa''' - Roll with any requirements springing from the SWT Cocoa port. (proposed)
 +
* [[Image:Glass.gif]] (Paul) '''ICU4.0''' - Adopt ICU4J 4.0. (proposed)
 +
* [[Image:Glass.gif]] (Paul) '''Framework Cleanup''' -  Further conversions of action framework to command framework (see below for details)
 +
* [[Image:Glass.gif]] (Paul) '''Command Framework''' - unimplemented aspects of the command framework (see below for details)
 +
* [[Image:Progress.gif]] (Kim) {{Bug|246875}}. '''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)
 +
* (Deferred) (Kim) '''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)
 +
* [[Image:Ok_green.gif]] (Francis) '''Common Navigator Bugs''' - Add tracing.
 +
 
 +
== Milestone M5 (2009-01-30) (Major Features Done) ==
 +
* Working on our test suites day: December 15, 2008
 +
* Working on performance day: December 16, 2008
 +
* [[Image:Glass.gif]] (Eric, Paul) '''WPF''' Roll with any requirements, if any, springing from the SWT WPF port. (proposed)
 +
* [[Image:Progress.gif]] (Matthew Hall) '''Property-based Observables''' - (proposed - see {{bug|194734}})
 +
* [[Image:Progress.gif]] (Markus Kuppe, Versant) '''[[Platform UI/Multi-instance Properties View|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)
 +
* [[Image:Progress.gif]] (Paul) '''Framework Cleanup''' -  Further conversions of action framework to command framework (see below for details)
 +
* [[Image:Progress.gif]] (Paul) '''Command Framework''' - unimplemented aspects of the command framework (see below for details)
 +
* (Deferred) (Kim) '''Import/Export Workspace Settings''' ({{bug|247269}})
 +
* [[Image:Glass.gif]] (Francis) '''Common Navigator Bugs''' - Resolve all major and higher bugs.  Add tracing (done).
 +
== Milestone M6 (2009-03-13) (API Freeze) ==
 +
* Working on our test suites day: February 2, 2008
 +
* Working on performance day: February 3, 2008
 +
== Milestone M7 (2009-05-01) (Performance, Polish) ==
 +
* Working on our test suites day: March 16, 2008
 +
* Working on performance day: March 17, 2008
 +
 
 +
=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 but would like to work on any of these items, please don't hesitate to contact us - you can also refer to the [[Platform UI/How to Contribute|contribution guide]].
 +
 
 +
== Ongoing efforts ==
  
 
We usually spend time on all of the following.
 
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)
 
* Testing (both manual testing, and improving the test suites)
 
* Regressions
 
* Regressions
Line 19: Line 74:
 
* 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.''
+
* Clear backlog of bugs, certainly all major and higher
 +
* Add support for Commands
 +
* Come up to par with the Package Explorer (detailed list of items to be provided)
  
= Data Binding =
+
== Data Binding ==
* '''Property-based Observables.''' (proposed - see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=194734 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)
 
* '''Integrating Community contributions.''' We have a number of patches that were submitted - these need to be reviewed and released. (committed)
  
= Misc (we should split this into themes when appropriate) =
+
== Commands and Contributions ==
  
* '''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)
+
* '''Global Actions''' - requests
* '''Multi-instance Properties View.''' 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)
+
** Requests for new commands/actions: ex: CollapseAll, ExpandAll, Clean Project, etc
 +
* '''Framework Cleanup''' -  Further conversions of action framework to command framework
 +
** Create similar pattern for LabelRetargetAction
 +
** Convert more actions to commands
 +
** Ensure that all actions respect capabilities
 +
** Support legacy resources/Team [[https://bugs.eclipse.org/bugs/show_bug.cgi?id=182366 Contributions Need substitute for IContributorResourceAdapter]]
 +
* '''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 <code>org.eclipse.ui.internal.services.IWorkbenchLocationService</code>
 +
** 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 (related to {{bug|80140}}?)
 +
 
 +
== 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)
 +
 
 +
== 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)
 
* '''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)
 
* '''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)
+
* '''Editor Support''' Look at support for per-perspective editors ({{bug|11001}}) and full-screen editing mode.  Also review some possible enhancements to MultiPageEditorPart (fire change events when page changes per {{bug|201391}}? MPEP as a metaphor for 1st class editor navigation?)
 +
 
 +
= Legend =
 +
[[Image:Glass.gif]] Needs some investigation
 +
 
 +
[[Image:Progress.gif]] Patch in progress
 +
 
 +
[[Image:Ok_green.gif]] Bug fixed / Feature added
 +
 
 +
[[Category:Platform UI]]

Latest revision as of 16:56, 3 December 2008

Contents

[edit] Themes

  • Reliability
  • Performance
  • Support other teams
  • e4 (Note that e4 work does not appear on this plan.)

[edit] 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. For completed work, have a look at our build notes.

[edit] Milestone M1 (2008-08-08)

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

[edit] Milestone M2 (2008-09-19)

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

[edit] Milestone M3 (2008-10-31)

  • Ok green.gif Working on our test suites day: September 29, 2008
  • Ok green.gif Working on performance day: September 30, 2008
  • Progress.gif (Paul) Framework Cleanup - Further conversions of action framework to command framework (see below for details)
  • Progress.gif (Paul) Command Framework - unimplemented aspects of the command framework (see below for details)
  • (Deferred until after 3.5) (Boris, Paul) 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)
  • Ok green.gif(Dani) StyledString enhancement - Allow to insert characters into a styled string (see bug 227559)

[edit] Milestone M4 (2008-12-12)

  • Ok green.gif Working on our test suites day: November 3, 2008
  • Ok green.gif Working on performance day: November 4, 2008
  • Ok green.gif (Matthew Bisson, Eric) 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 - see bug 182714)
  • Ok green.gif (Kim, Paul) Cocoa - Roll with any requirements springing from the SWT Cocoa port. (proposed)
  • Glass.gif (Paul) ICU4.0 - Adopt ICU4J 4.0. (proposed)
  • Glass.gif (Paul) Framework Cleanup - Further conversions of action framework to command framework (see below for details)
  • Glass.gif (Paul) Command Framework - unimplemented aspects of the command framework (see below for details)
  • Progress.gif (Kim) bug 246875. 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)
  • (Deferred) (Kim) 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)
  • Ok green.gif (Francis) Common Navigator Bugs - Add tracing.

[edit] Milestone M5 (2009-01-30) (Major Features Done)

  • Working on our test suites day: December 15, 2008
  • Working on performance day: December 16, 2008
  • Glass.gif (Eric, Paul) WPF Roll with any requirements, if any, springing from the SWT WPF port. (proposed)
  • Progress.gif (Matthew Hall) Property-based Observables - (proposed - see bug 194734)
  • Progress.gif (Markus Kuppe, Versant) 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)
  • Progress.gif (Paul) Framework Cleanup - Further conversions of action framework to command framework (see below for details)
  • Progress.gif (Paul) Command Framework - unimplemented aspects of the command framework (see below for details)
  • (Deferred) (Kim) Import/Export Workspace Settings (bug 247269)
  • Glass.gif (Francis) Common Navigator Bugs - Resolve all major and higher bugs. Add tracing (done).

[edit] Milestone M6 (2009-03-13) (API Freeze)

  • Working on our test suites day: February 2, 2008
  • Working on performance day: February 3, 2008

[edit] Milestone M7 (2009-05-01) (Performance, Polish)

  • Working on our test suites day: March 16, 2008
  • Working on performance day: March 17, 2008

[edit] 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 but would like to work on any of these items, please don't hesitate to contact us - you can also refer to the contribution guide.

[edit] 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, ...)

[edit] Common Navigator

  • Clear backlog of bugs, certainly all major and higher
  • Add support for Commands
  • Come up to par with the Package Explorer (detailed list of items to be provided)

[edit] Data Binding

  • 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)

[edit] 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 (related to bug 80140?)

[edit] 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)

[edit] 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)
  • 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)
  • Editor Support Look at support for per-perspective editors (bug 11001) and full-screen editing mode. Also review some possible enhancements to MultiPageEditorPart (fire change events when page changes per bug 201391? MPEP as a metaphor for 1st class editor navigation?)

[edit] Legend

Glass.gif Needs some investigation

Progress.gif Patch in progress

Ok green.gif Bug fixed / Feature added