New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bulb menu should open immediately after clicking on the info icon in the problems view #98618
Comments
I think this works. Did you try clicking on line and wait until lightbulb is available? |
Its the waiting that is the problem.
If you are working through a large no of lint errors the waiting really
slows things down.
Just let me Click the info icon and if there are quick fixes show them.
Don't make me wait for the bulb to appear.
…On Wed, 27 May 2020, 11:38 pm Sandeep Somavarapu, ***@***.***> wrote:
My preferred operation would be:
click line
click 'info' icon.
The code then looks for quick fixes and displays the menu.
I think this works. Did you try clicking on line and wait until lightbulb
is available?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#98618 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAG32ODIQJP6HYBS6NX2Z6DRTUJWRANCNFSM4NLLISZA>
.
|
In not suggesting that you delay the context menu.
Rather that if I click the info icon it immediately displays the context
menu.
You can still display the bulb when you are ready, just don't make me wait
for it.
…On Tue, 2 Jun 2020, 5:57 pm Sandeep Somavarapu, ***@***.***> wrote:
I do not think delaying the context menu on click is not a good user
interaction model. Also clicking on icon to show the quick fixes might be
less discoverable. We have a command that you can run to show quick fixes
for the selected item in problems view.
[image: image]
<https://user-images.githubusercontent.com/10746682/83494983-5f1e1980-a4b7-11ea-97bd-34ef1c33e7a1.png>
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#98618 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAG32OE5W7NYZIWQ3O722QTRUSWFDANCNFSM4NLLISZA>
.
|
The short cut you mentioned is also not a particularly good solution.
I have to click on a problem line
Type the short cut
arrow down.
hit enter.
The above isn't too bad, but after I've activated the quick fix the problem
area loses focus so I'm back to using the mouse to reset the focus.
So it's still looks like my suggestion of simply changing the 'info' icon
so that clicking on it displays the context menu is the best option.
It doesn't change discoverability (you can still show the bulb when you
want to) and I can activate a quick fix with two quick clicks.
One of the 'info' icon.
One of the desired quick fix.
This workflow will allow a user to rapidly work through large no.s of
problems which is really important whenever you increase the lint level of
a project.
…On Tue, 2 Jun 2020 at 17:57, Sandeep Somavarapu ***@***.***> wrote:
I do not think delaying the context menu on click is not a good user
interaction model. Also clicking on icon to show the quick fixes might be
less discoverable. We have a command that you can run to show quick fixes
for the selected item in problems view.
[image: image]
<https://user-images.githubusercontent.com/10746682/83494983-5f1e1980-a4b7-11ea-97bd-34ef1c33e7a1.png>
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#98618 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAG32OE5W7NYZIWQ3O722QTRUSWFDANCNFSM4NLLISZA>
.
|
I think an issue here might be that VS Code doesn't know a problem has quick-fixes unless it sends an async request? So you click on the problem, then there's an async request, then VS Code knows there are fixes and shows a lightbulb, which you need to click again? If so, would a reasonable fix be for an extension to be able to set a flag on a In Dart, the server already computes this info. We have a |
Yes we do not know upfront if we have quick fixes upfront and needs to ask extension to provide them. Hence this delay is unavoidable. I do not want to drag this request into a separate discussion asking for API change. If API change is needed for this, I do not think it is worth considering. |
It might be possible without an API change, eg. by using a |
cc @mjbvz if you want to consider this request as you own code actions and from problems perspective I would want to align with the editor code actions. |
Sounds like this can be done without an API change.
Click info icon.
Async call
Display menu
If no quick fixes are available display a single item
'No quick fixes available.'
…On Wed, 3 Jun 2020, 1:29 am Sandeep Somavarapu, ***@***.***> wrote:
Rather that if I click the info icon it immediately displays the context
menu.
Yes we do not know upfront if we have quick fixes upfront and needs to ask
extension to provide them. Hence this delay is unavoidable.
I do not want to drag this request into a separate discussion asking for
API change. If API change is needed for this, I do not think it is worth
considering.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#98618 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAG32OCPDZ6SJVBXKUTSZ3LRUULGNANCNFSM4NLLISZA>
.
|
I don't understand this statement? |
I do not think this is a good user interaction to show context menu after some delay. |
The delay should be fairly minor.
You could change the info icon to a spinning gif until the context menu
appears.
…On Wed, 3 Jun 2020, 7:16 pm Sandeep Somavarapu, ***@***.***> wrote:
I do not think this is a good user interaction to show context menu after
some delay.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#98618 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAG32OETLT5N4CBUSK7P64LRUYIHHANCNFSM4NLLISZA>
.
|
Depends and we cannot rely on that. Well, I see the request but I do not think it meet the priorities. So I have to tag this as out of scope and we would revisit this when there is a demand. |
@sandy081 any reason why this couldn't be done using a DiagnosticTag or something as suggested above? It removes any delay between clicking/menu opening, and would be a nice usability improvement showing which problems have quickfixes in the problem list without having to click (the current behaviour already feels kinda awkward). |
Can be done but not in priorities as mentioned above. |
I can't say that I'm happy with the concept of closing issues out. Even if you aren't going to do this now, having an open ticket lets other users find and vote on this ticket. |
I also disagree with the priority position on this one. |
Sorry for closing this. Reopened it and moved to backlog candidates. |
It's still showing up as closed. |
A similar request came up at Dart-Code/Dart-Code#3254. The request was to have a single-click icon that would apply the fix. Fixes can already by marked as "preferred" fixes, so if they're populated, it would be nice if you could just work through the problems list clicking the fix buttons without even needing to open the menu (and perform two clicks). Like this issue, I think it would require fetching the quick-fixes prior to the user clicking on the problem - just since the problems view only generally shows a small number of problems, maybe it would be possible to fetch a few eagerly? If you had a large number of errors from enabling a new lint (or upgrading an SDK that generates lots of deprecation warnings with quick-fixes), you could get through them a lot faster that way. |
When working through large no.s of lints in the 'problems' pane I use the quick fix bulb to rapidly fix many trivial errors.
This process is slowed down by how the 'quick fix bulb' appears and then disappears.
The process I used to apply these fixes is:
Open the 'problems pane'.
click on the line
wait for the bulb to appear
click the bulb
select the action.
The problem is that the bulb will appear and then disappear before re-appearing.
It also changes color from white to yellow (which I'm sure indicates something but I've not worked it out as yet).
My preferred operation would be:
click line
click 'info' icon.
The code then looks for quick fixes and displays the menu.
This would eliminate the slight delay in having to wait for the bulb to appear.
The text was updated successfully, but these errors were encountered: