-
Notifications
You must be signed in to change notification settings - Fork 29.4k
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
[WIP]: Move Debug Actions Widget to the Debug Viewlet #49099
Conversation
Thanks for your PR and ideas. Thanks again |
Alright, thanks. I'm fine with working this as it seems that you just don't have the time for this issue (no offense at all); I really just need direction and approval. I can go ahead and implement my suggestions here, but I don't want to do the work if it's going to be denied on a UX principle. I personally think clicking something on the status bar is not intuitive. I don't believe new users (remember that many users will have never used an ide/debugger) will think to look there. I know I wouldn't. I really think the solution must be a permanent, non-floating box. With that said, please understand my skeptism about the ux meetings since you said something very similar to me a year ago and nothing (that the community knew) came out of it. I stress a solution is better than the prolonged ideal solution at this point. Thanks! |
My 2 cents:
|
I work on projects where I'm debugging multiple processes at once, I hope that scenario is considered in any redesign. I find the current behavior of having a dropdown to switch between running processes to be cumbersome, especially since the items in the list change as processes come and go. I'd prefer to have a totally separate debug bar for each process. I like @fabiospampinato's approach as a first step, with a future step being a stack of debug bars whenever there are multiple processes. The argument against this is that it would get out of control if you're debugging a whole ton of processes (10? 100?), but I've only ever had under 10. |
@endquote as soon as they decide to expose the necessary debug state (#30810 10 months old issue 😩) and if they add an API for switching debug session an extension could fix your problem by providing a quickpick for quickly switching session, IMHO this should be implemented in core though, using the select is not very ergonomic. Said extension (or VSC itself) could also provide commands for switching to specific sessions, such that you could bind |
I think the goal here is to close #2513. I don't want to start proposing features and changes with the way the widget actually works or adding backend features when all we need to do in this PR is move the widget. I think the multi process scenario should be talked about in the UX meetings, but I don't see any reason for this PR to change the current behavior. |
Thanks for the PR we landed on a different solution which I covered here #2513 |
This PR is one of two solutions that I propose in which fixes #2513. The other PR is #49097.
At the time of writing, this PR was created before the work was implemented to open discussion about the design for this. While #49097 is a simple fix to mitigate #2513, I believe it is ugly from a UX perspective, and the debug actions widget needs to be moved to a more permanent place.
Many solutions have been proposed in #2513.
Unfortunately, putting this in a viewlet does bring up a couple of questions: is it a view like variables/call stack/watch/breakpoints? If so, does it still have a header, is collapsible, and could be reordered? I think that this should always be at the top or bottom of the viewlet. I think it's redundant to show a header, and I think it should always show in the viewlet.
This means it should be a static div outside of the
split-view-container
. We could make a "hack" and just get the element in thedebugActionsWidget.ts
file and append a div in the right spot. However, I could see that we would want to standardize this a little for posterity's sake. This would pose that a viewlet should be able to have a sub-header or something along those lines to display content. Should you only be able to have one div or maybe an array? Should you be able to add div(s) to both above and below thesplit-view-container
.A lot of questions to answer. I'm totally fine with doing the "hack", and I'm fine with figuring out a forward-thinking solution. However, I think we should solve this one way or another in a timely fashion, even if it means implementing a less-than-perfect solution.
Tagging @isidorn on this for discussion