Community
Participate
Working Groups
Created attachment 263871 [details] Screenshot I think our general pattern is to offer a filter box for selection and selection all. I suggest we adjued the CleanDialog. Super ugly mockup attached to bring the idea across.
Martin, something for you? You seem good at adding filter boxes. See Bug 249374.
David, can you take this one?
To trigger the dialog use Project -> Clean from the menu
New Gerrit change created: https://git.eclipse.org/r/93555
Created attachment 267387 [details] new dialog
I removed the saving of the toggle state (there is no toggle anymore). Maybe we should create a new bug that saves and restores the selection?!
(In reply to David Weiser from comment #6) > I removed the saving of the toggle state (there is no toggle anymore). Maybe > we should create a new bug that saves and restores the selection?! I suggest to add a persisted check box (Always clean all). If selected the filtered tree gets disabled and selection is only possible if the check box is not selected. This should be done via this bug to avoid functional loose.
Created attachment 267401 [details] new dialog 1
Created attachment 267402 [details] new dialog 2
Created attachment 267403 [details] new dialog 3
I added the checkbox, but moved it to the bottom. Please check the Screenshots. What do you think?
(In reply to David Weiser from comment #11) > I added the checkbox, but moved it to the bottom. Please check the > Screenshots. What do you think? Looks great. Thanks, I try to review the code change today or tomorrow.
(In reply to Lars Vogel from comment #12) > Looks great. Thanks, I try to review the code change today or tomorrow. See comment in the Gerrit review
Gerrit change https://git.eclipse.org/r/93555 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=cd652819dec0960fd1eb0f0cdb1017685f744ff1
Thanks David, looks great. Please add to the N&N M7.
Reopening. https://dev.eclipse.org/mhonarc/lists/platform-ui-dev/msg07710.html was mainly for you guys. The filter field needs the "type filter text" affordance as everywhere else. Reuse the existing implementation. It already contains the necessary workarounds to make sure the text appears when it should. "The selected projects will be rebuild from scratch." is wrong. Needs to use "rebuilt". "Always" is a term we only use in MessageDialogWithToggle, where checking the box will disable the dialog in the future. Here, "Clean all projects" would be an appropriate label. Removing the second radio button is OK for me (but not necessary). The button needs to be moved back to the top. UI dependencies are typically arranged top-down (in reading direction). I don't think this needs an N&N entry. If you add one, then make sure it doesn't need further copy editing, and take the chance to tell users that they the initial selection of this dialog is determined by previously selected element (e.g. in the Problems view or in the Package Explorer).
The dialog was OK except the missing filtering. The current fix now completely reworks the dialog without any hint (existing bug reports) that this has any advantage. Also, it adds a useless redundant 'Select All' button. This functionality is already covered by the '(Always) Clean All' I'm inclined to revert the whole change.
(In reply to Dani Megert from comment #17) > The dialog was OK except the missing filtering. The current fix now > completely reworks the dialog without any hint (existing bug reports) that > this has any advantage. Also, it adds a useless redundant 'Select All' > button. This functionality is already covered by the '(Always) Clean All' Select All is something different than the '(Always) Clean All' checkbox and is super useful for certain customer scenarios. For example, I have a customer still using Eclipse ADT. For some weird reason (I assume a bug in the unmaintained ADT) ADT only works if the projects are build in a certain order. We have approximately 30 plug-in and have 3 build steps. First build step: select 4 projects -> trigger build Second build step: select 1 project -> trigger build Third build step: select 25 projects -> trigger build Especially step 3 is very painful. We the Select all box we can select all and afterwards remove the 5 which are not allowed to be in the build. I have seen other similar scenarios at customer sides, where most of the projects should be build but not all. Select All with the option to remove items is very helpful for this.
David, please have a look at the feedback from Markus and provide a patch or ask for clarification.
(In reply to Lars Vogel from comment #18) > For example, I have a customer still using Eclipse ADT. For some weird > reason (I assume a bug in the unmaintained ADT) ADT only works if the > projects are build in a certain order. We have approximately 30 plug-in and > have 3 build steps. First build step: select 4 projects -> trigger build > Second build step: select 1 project -> trigger build > Third build step: select 25 projects -> trigger build > > Especially step 3 is very painful. We the Select all box we can select all > and afterwards remove the 5 which are not allowed to be in the build. > > I have seen other similar scenarios at customer sides, where most of the > projects should be build but not all. Select All with the option to remove > items is very helpful for this. You can already do this now. Simply select all projects in the P* Explorer before invoking Project > Clean... No need to pollute the Clean dialog.
(In reply to Lars Vogel from comment #18) The best workaround for that scenario would be: Preparation: - Package Explorer view menu > Top Level Elements > Working Sets - create 3 working sets that contain the projects for each build step Build: - for each working set: - select the working set, Project > Clean, Enter
Thanks Dani and Markus for the workarounds, I was already aware of them. I still believe a "Select All" button in the clean dialog is helpful. The feature that the package explorer selection can set the initial selection in the Clean dialog is IMHO hard to discover for end users. Also changing the package explorer selection for the purpose of selecting all (are most projects) in the clean dialog is not always desirable. I personally dislike changing package explorer selection for such purposes, I (almost) always link my current editor file with the package explorer. One potential enhancements request from Markus suggestion would be allow the usage of working sets in the clean dialog. As I rarely use working sets (as I switch relatively frequently machines and visits different clients with different projects), I leave it to you to open a new feature request, if you think this could be useful.
(In reply to Lars Vogel from comment #22) > Thanks Dani and Markus for the workarounds, I was already aware of them. > > I still believe a "Select All" button in the clean dialog is helpful. The > feature that the package explorer selection can set the initial selection in > the Clean dialog is IMHO hard to discover for end users. Also changing the > package explorer selection for the purpose of selecting all (are most > projects) in the clean dialog is not always desirable. I personally dislike > changing package explorer selection for such purposes, I (almost) always > link my current editor file with the package explorer. > > One potential enhancements request from Markus suggestion would be allow the > usage of working sets in the clean dialog. As I rarely use working sets (as > I switch relatively frequently machines and visits different clients with > different projects), I leave it to you to open a new feature request, if you > think this could be useful. Please split this bug into two. Filter and additional buttons. It is always bad to put more than one feature into a single bug report. The filter feature is not controversial. The other still has my -1.
(In reply to Dani Megert from comment #23) > Please split this bug into two. Filter and additional buttons. It is always > bad to put more than one feature into a single bug report. +1 @David, please create a new bug report for Select All and Deselect and provide a Gerrit for the changes suggested by Markus plus the (hopefully temporary) removal of the buttons for this bug report.
New Gerrit change created: https://git.eclipse.org/r/94356
Created attachment 267627 [details] new clean dialog 1
Created attachment 267628 [details] new clean dialog 2
I pushed a new change. Please check the new screenshots for the new layout. What do you think?
I20170402-2000. Type * in the Clean dialog's filter. We get this exception in Error Log: java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 2 .**.* ^ at java.util.regex.Pattern.error(Unknown Source) at java.util.regex.Pattern.sequence(Unknown Source) at java.util.regex.Pattern.expr(Unknown Source) at java.util.regex.Pattern.compile(Unknown Source) at java.util.regex.Pattern.<init>(Unknown Source) at java.util.regex.Pattern.compile(Unknown Source) at java.util.regex.Pattern.matches(Unknown Source) at java.lang.String.matches(Unknown Source) at org.eclipse.ui.internal.ide.dialogs.CleanDialog$2.select(CleanDialog.java:300) ...
Created attachment 267837 [details] new clean dialog
We are in the last week of M7. If we don't get polished solution until Friday this will have to be revert to 4.6 and addressed later.
Created attachment 268114 [details] new clean dialog
(In reply to David Weiser from comment #32) > Created attachment 268114 [details] > new clean dialog Comment 16 has more information for you.
(In reply to Markus Keller from comment #33) > (In reply to David Weiser from comment #32) > > Created attachment 268114 [details] > > new clean dialog > > Comment 16 has more information for you. Sorry Markus, I accidentally threw out the changes. Thanks for your remark. The typo ("rebuild" -> "rebuilt") is fixed and the checkbox text is changed to "Clean all projects" (with mnemonic).
(In reply to Dani Megert from comment #31) > We are in the last week of M7. If we don't get polished solution until > Friday this will have to be revert to 4.6 and addressed later. Gerrit awaits your review.
FYI - the Gerrit review is currently blocked by Danis -2
I am someone who uses Clean->Rebuild All many times a day. As an user, I preferred the old layout and style. The "Select all" and "Deselect all" seems not so intuitive. Shouldn't that have been "Enable All" and "Disable All" ? The empty space below those 2 buttons looks kind-of not so good ( for the lack of better term).
Created attachment 268184 [details] new clean dialog @Vikas, the select/deselect buttons are not included in my last patch any more. Please check the last screenshot. We are just awaiting Danis feedback.
(In reply to David Weiser from comment #34) > (In reply to Markus Keller from comment #33) > > (In reply to David Weiser from comment #32) > > > Created attachment 268114 [details] > > > new clean dialog > > > > Comment 16 has more information for you. > > Sorry Markus, I accidentally threw out the changes. Thanks for your remark. > > The typo ("rebuild" -> "rebuilt") is fixed and the checkbox text is changed > to "Clean all projects" (with mnemonic). You still ignored the review comment for "The filter field needs the "type filter text" affordance as everywhere else." Time is running out. On Monday I will revert to 4.6 if I don't have a complete fix and this will be moved to 4.8.
(In reply to Dani Megert from comment #39) > You still ignored the review comment for > "The filter field needs the "type filter text" affordance as everywhere > else." Can you clarify that you mean with "type filter text" affordance?
(In reply to Lars Vogel from comment #40) > Can you clarify that you mean with "type filter text" affordance? The text box uses IMHO the style attributes (SWT.SEARCH | SWT.ICON_CANCEL) and we set the "type filter text". What is missing?
(In reply to Lars Vogel from comment #41) > (In reply to Lars Vogel from comment #40) > > Can you clarify that you mean with "type filter text" affordance? > > The text box uses IMHO the style attributes (SWT.SEARCH | SWT.ICON_CANCEL) > and we set the "type filter text". What is missing? See my comment in the Gerrit change.
Created attachment 268218 [details] new clean dialog 1
Created attachment 268219 [details] new clean dialog 2
Created attachment 268220 [details] new clean dialog 3
Created attachment 268221 [details] new clean dialog 4
David, please upload also a screenshot of the preference dialog for comparison.
Created attachment 268222 [details] new clean dialog 5
Created attachment 268223 [details] preferences
Created attachment 268224 [details] preferences 2
Created attachment 268231 [details] Picture showing the good and the ugly As you can see, on Windows 7 the 'Clear' button is inside the search field. Please stop trying to provide a fix for Windows if you don't have access to a Windows machine or another contributor that has one and can provide the fix.
Created attachment 268232 [details] Picture showing the good and the ugly (In reply to Dani Megert from comment #51) > Created attachment 268231 [details] > Picture showing the good and the ugly Sorry, wrong screenshot. The right one is coming...
(In reply to Dani Megert from comment #51) > Please stop trying to provide a fix for Windows if you don't have access to > a Windows machine or another contributor that has one and can provide the > fix. I now have setup a Windows machine in VirtualBox. @David, please upload the new version and I can test on Windows.
Created attachment 268248 [details] Picture showing the new clean dialog under windows Picture showing the current clean dialog under Windows
Gerrit change https://git.eclipse.org/r/94356 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=f7e7790b474a04915d8608e5459cb30f1d9d3b39
Thanks David for the contribution and Dani for the review.