Bug 176235 - [Contributions] polish new keys preference page
Summary: [Contributions] polish new keys preference page
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.3   Edit
Hardware: PC All
: P3 normal (vote)
Target Milestone: 3.3 RC1   Edit
Assignee: Paul Webster CLA
QA Contact:
URL:
Whiteboard:
Keywords: polish, usability
Depends on:
Blocks: 33161 66297 66462 89610 109989 109998 110232 118028 122980 136195 138503 144019 179032
  Show dependency tree
 
Reported: 2007-03-02 15:27 EST by Paul Webster CLA
Modified: 2007-05-18 09:44 EDT (History)
5 users (show)

See Also:


Attachments
Sorting is added to NewKeysPreferencePage (9.38 KB, text/plain)
2007-03-14 17:48 EDT, ali sheraz CLA
no flags Details
NewKeyPreferencePage v-02 (14.87 KB, patch)
2007-03-15 16:10 EDT, ali sheraz CLA
no flags Details | Diff
NewKeyPreferencePage v-03 (15.18 KB, patch)
2007-03-28 18:13 EDT, ali sheraz CLA
no flags Details | Diff
NPE fixed in this patch (14.57 KB, patch)
2007-04-04 12:06 EDT, ali sheraz CLA
no flags Details | Diff
NewKeyPreferencePage v-05 (8.37 KB, patch)
2007-04-25 17:54 EDT, ali sheraz CLA
no flags Details | Diff
NewKeyPreferencePage v-06 (5.62 KB, text/plain)
2007-04-26 10:29 EDT, ali sheraz CLA
no flags Details
NewKeyPreferencePage v-07 (15.82 KB, patch)
2007-04-26 13:46 EDT, ali sheraz CLA
no flags Details | Diff
NewKeyPreferencePage v-08 (12.62 KB, patch)
2007-04-26 21:28 EDT, ali sheraz CLA
no flags Details | Diff
keys v09 (36.25 KB, patch)
2007-04-26 22:07 EDT, Paul Webster CLA
no flags Details | Diff
NewKeysPreferencePage v-10 (4.23 KB, patch)
2007-04-29 11:41 EDT, ali sheraz CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Webster CLA 2007-03-02 15:27:00 EST
Some of the problems to address in NewKeysPreferencePage

1) Does not remeber show all commands check box
2) needs category column
3) could use description column
4) needs to update sorting for at least name, category, and key

There needs to be some kind of "When" filtering ... i.e. debug generates many contexts but they aren't for keybindings.  We're not sure what form this would take.

PW
Comment 1 ali sheraz CLA 2007-03-14 15:11:26 EDT
One more thing needs to be replaced:
Current Description Label with Scrolled Text Box

Ali
Comment 2 ali sheraz CLA 2007-03-14 17:48:52 EDT
Created attachment 60868 [details]
Sorting is added to NewKeysPreferencePage

It saves the "Show all" check box upon closing. And Sorting is also working. I am working on adding a Category column and will replace the current description label.

Ali
Comment 3 ali sheraz CLA 2007-03-15 16:10:20 EDT
Created attachment 61014 [details]
NewKeyPreferencePage v-02

Following things added:
Sorting,"Show All Checkbox" saving, Category Column and a Text area for description with Scroll bars. We could review it on Friday morning and possibly release it for M6.
Ali
Comment 4 Paul Webster CLA 2007-03-25 15:07:11 EDT
Ali, I got a change to check out the patch, the behaviour looks good.

We need to make 2 modifications before we submit it.

1) we'll use dialog settings instead of a preference to remember show all commands.  Use WorkbenchPlugin.getDefault().getDialogSettings(), and then create your own section for the new keys preference page.

2) We should add sort by Category in the GroupBy:None case ... I thought it wouldn't matter, but it does.

PW
Comment 5 ali sheraz CLA 2007-03-28 18:13:25 EDT
Created attachment 62303 [details]
NewKeyPreferencePage v-03

Modifications requested are included in this patch.......ready to be checked in.

Ali
Comment 6 Paul Webster CLA 2007-04-04 09:18:26 EDT
Ali, I get an NPE when I try and run this patch:

java.lang.NullPointerException
	at org.eclipse.ui.internal.keys.NewKeysPreferencePage.createTreeControls(NewKeysPreferencePage.java:1298)
	at org.eclipse.ui.internal.keys.NewKeysPreferencePage.createContents(NewKeysPreferencePage.java:941)
	at org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:233)
	at org.eclipse.jface.preference.PreferenceDialog.createPageControl(PreferenceDialog.java:1421)
	at org.eclipse.jface.preference.PreferenceDialog$13.run(PreferenceDialog.java:1180)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)

Please have a look and update.  I think it has to do with the return values from getDialogSettings().  You should either always assume it's the workbench level and ask for the section, or always assume it's the section that you need.

PW
Comment 7 ali sheraz CLA 2007-04-04 12:06:34 EDT
Created attachment 62949 [details]
NPE fixed in this patch

Paul,

I fixed the NPE exception in this patch, try it out and let me know.

Ali
Comment 8 Paul Webster CLA 2007-04-04 14:46:27 EDT
Released patch >20070404
PW
Comment 9 Markus Keller CLA 2007-04-18 05:09:34 EDT
Please either make sure the new Keys preference page is complete for M7, or remove the page again for 3.3. Currently, the page is unusable, and removing it now would save a lot of testing energy.
Comment 10 ali sheraz CLA 2007-04-25 17:54:42 EDT
Created attachment 64943 [details]
NewKeyPreferencePage v-05

Paul,

I didnt take the add/remove image columns out. There is a method selectTreeColumn(MouseEvent event), in NewKeysPreferencePage which supports the functionality of these two columns. For some reason event.x and event.y are not returning the right value. I will investigate it tomorrow morning and might be able to fix it. 
All the other fixes are in this patch, including the bindingManager change.

Ali
Comment 11 Paul Webster CLA 2007-04-25 19:22:02 EDT
(In reply to comment #10)
> Created an attachment (id=64943) [details]
> NewKeyPreferencePage v-05

Released into HEAD >20070425

> Paul,
> 
> I didnt take the add/remove image columns out. 

They still work on my linux box.  Perhaps it's a problem with the tree on windows.

I'd still prefer to remove them, as we have the Add and Remove buttons in the editor area at the bottom.

PW
Comment 12 ali sheraz CLA 2007-04-26 10:29:01 EDT
Created attachment 65041 [details]
NewKeyPreferencePage v-06

Add and Remove columns are removed.
Ali
Comment 13 Paul Webster CLA 2007-04-26 11:08:24 EDT
(In reply to comment #12)
> Created an attachment (id=65041) [details]
> NewKeyPreferencePage v-06

Released in HEAD >20070426
PW
Comment 14 Paul Webster CLA 2007-04-26 11:10:10 EDT
5 things to work on:

1) add When column to the view

2) remove GroupBy combo

3) use Tree sort direction API

4) add filters for actionSet contexts and *.internal.* contexts from the Advanced button

5) move the description box under the When combo box.

PW
Comment 15 ali sheraz CLA 2007-04-26 13:46:06 EDT
Created attachment 65081 [details]
NewKeyPreferencePage v-07

Paul,

I have added items 1-3 in this patch. I tried to stretch the filter text box all the way to left but I couldnt. Secondly I updated my code and it seems like the previous patch  (Add/remove icons removed) is not in head yet, so this patch also includes the last patch.

Ali
Comment 16 Paul Webster CLA 2007-04-26 14:20:05 EDT
(In reply to comment #15)
> Created an attachment (id=65081) [details]
> NewKeyPreferencePage v-07

Released to HEAD >20070426
PW
Comment 17 ali sheraz CLA 2007-04-26 21:28:02 EDT
Created attachment 65134 [details]
NewKeyPreferencePage v-08

Paul,

Here is the filters code, it works perfect (as far as I tested it). I admit that Code is not pretty, I had to make those tags public so that I could access it from preferencePage and filtersDialog and some other little things. I will clean it up more tomorrow morning. 

Ali
Comment 18 Paul Webster CLA 2007-04-26 22:07:14 EDT
Created attachment 65137 [details]
keys v09

I've changed the advanced dialog so that it doesn't need to deal with dialog settings, but it looks good with two cases:

1) when we change the filters it blanks out the combo box, ignoring the tree selection

2) What should we do if the user has a filtered context already selected for a keybinding?  We show it in the tree, but if selected we update its context to In Windows and if you save it we treat it like a deliberate change.

We should work these out tomorrow morning.

PW
Comment 19 Paul Webster CLA 2007-04-27 10:27:05 EDT
Released some fixes into HEAD >20070427 10:30

1. "Include Unbound Commands"
2. "editing" a system binding works as expected
3. changing the filters leaves the combo When correct
4. there is a label on the User keybinding column

Still working on:
5. don't have the tree jump back to the beginning on delete

PW
Comment 20 ali sheraz CLA 2007-04-29 11:41:21 EDT
Created attachment 65345 [details]
NewKeysPreferencePage v-10

Paul,
I fixed two bugs in this patch:
1. Blanking out all fields(dataControls) after delete.
2. Updating the tree after changing the whenCombo.

Ali
Comment 21 Paul Webster CLA 2007-04-29 22:14:14 EDT
(In reply to comment #20)
> Created an attachment (id=65345) [details]
> NewKeysPreferencePage v-10

Slightly modified but released into HEAD >20070429
PW
Comment 22 Paul Webster CLA 2007-05-16 19:50:32 EDT
The work this was to drive is completed, and problems are now being tracked by other bugs.

PW
Comment 23 Paul Webster CLA 2007-05-18 09:44:46 EDT
Indeed
PW