-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
Add "open tabs" drop down #12411
Add "open tabs" drop down #12411
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tsmaeder do you mind resolving the conflicts?
Hmh....something is broken. Stand by... |
Apparently, some stuff was broken when rebasing on the changes in the previous "dynamic tabs" PR. I'll fix and reopen the PR. |
a309b28
to
b699bf8
Compare
Now ready for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately this change seems to break the default tab behavior.
This is with workbench.tab.shrinkToFit.enabled
set to false
:
weird-tabs.mp4
In this case the dynamic tab styling should not be applied, and should behave like before.
@@ -55,6 +55,7 @@ test.describe('Theia Terminal View', () => { | |||
|
|||
// close all terminals | |||
for (const terminal of allTerminals) { | |||
await terminal.activate(); // close box is not visible when not active |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor: do we mean the close icon? I'm not aware of the "close box" which makes the documentation confusing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the term "close box" is quite common for windows (at least Google thinks so). I had "close button" before, but the UI element is not really a button. An "Icon" feels more like describing the implementation, not the UI element, i.e. the "close icon" is the graphic element, whereas Windows used to have a minus-sign in its window close box.
If you still find it confusing, I can change it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe we should stick with button
(which I feel is more common) if we are to keep the comment else I'd remove it completely. I'm leaning towards removing the comment altogether, especially since theia-text-editor.test.ts
which has a similar change to this one does not include one.
Thanks for catching this one: I am very bad at noticing visual details 🤷 |
fe431d1
to
c816556
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately I've noticed a few regressions with this pull-request:
- it is no longer possible to drag tabs and create split layouts
- the bottom panel is incorrectly affected by the dynamic tab behaviour, is this intended?
@@ -55,6 +55,7 @@ test.describe('Theia Terminal View', () => { | |||
|
|||
// close all terminals | |||
for (const terminal of allTerminals) { | |||
await terminal.activate(); // close box is not visible when not active |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe we should stick with button
(which I feel is more common) if we are to keep the comment else I'd remove it completely. I'm leaning towards removing the comment altogether, especially since theia-text-editor.test.ts
which has a similar change to this one does not include one.
The tab behaviour in the lower pane is intended. Having a look at the drag behaviour. |
Adds a drop down allowing to chose among open editors when there is too little space to show all open tabs. Part of eclipse-theia#12328 Contributed on behalf of STMicroelectronics Signed-off-by: Thomas Mäder <t.s.maeder@gmail.com>
Signed-off-by: Thomas Mäder <t.s.maeder@gmail.com>
Signed-off-by: Thomas Mäder <t.s.maeder@gmail.com>
Signed-off-by: Thomas Mäder <t.s.maeder@gmail.com>
Signed-off-by: Thomas Mäder <t.s.maeder@gmail.com>
62fc436
to
d6f8c73
Compare
@vince-fugnitto I believe I got the scroll/resize behavior to be correct now and addressed your comments. Thanks for your patience with this PR. |
fix: regression when dragging tabs has been fixed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes look good to me 👍
- the "open tabs" dropdown is correctly rendered, and displays the tabs for a given group
- there are no regressions with the default behavior
- there are no regressions with drag-and-drop to create special layouts
Could we have a video of the feature? It can help document it. |
@MatthewKhouzam yes we can! ShirinkingTabs.mp4 |
@vince-fugnitto I found another bug when making the video: #12477 |
Adds a drop down allowing to chose among open editors when there is too little space to show all open tabs. Part of eclipse-theia#12328 Contributed on behalf of STMicroelectronics
@wpaul-samsung The reason probably was "it's out of scope of the PR". I would recommend you to open a new feature request to facillitate an actionable discussion. |
Fair enough. |
Not sure if I remember this correctly, but I think the "regular" case is also reusing the default tab behavior from PhosphorJS, so changing anything about that might have been hard. But also: "out of scope" |
What it does
Adds a drop down allowing to chose among open editors when there is too little space to show all open tabs. Also adds a fade-out effect for tab labels.
This is the second part of #12328
Contributed on behalf of STMicroelectronics
How to test
Make sure the scenarios from #12360 are still working O.K. Additionally, make sure the drop-down for the open editors appears and disappears in in the proper cases.
Review checklist
Reminder for reviewers