-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
feat(gui): Quick Tabs Overhaul #2241
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.
Looks good, but I found some issues and request small improvements 🙂
jadx-gui/src/main/java/jadx/gui/ui/tab/QuickTabsBookmarkParentNode.java
Outdated
Show resolved
Hide resolved
One more thing. |
@skylot all ready |
Hm, not sure why we need to save index to restore order, is just saving/reading tabs list in correct order not working? |
But maybe we can just consider the order of TabbedPane to be the "default" order, ok I'll implement it by saving/reading tabs list in correct order |
OK, I think we can merge it now.
|
All noted. I'll open a new PR in the near future |
Unchecked tasks are WIP(*1) This change is a must. Previously,
TabbedPane
was the only class interacting with tabs. So it was fine that all the code that controls tabs was found there. However now, that we are addingQuickTabsTree
, (and why not other components), it no longer makes sense thatQuickTabsTree
needs to communicate withTabbedPane
in order to manage the tabs. Counter example ? There may be tabs which are not open inTabbedPane
but are present inQuickTabsTree
, like bookmarked tabs. So if we would keep using old code, we'd have to store inTabbedPane
a seperate reference to tabs that are present but not open, which would transform the code into a mess. I hope you understood the point.Now TabsController hold a "generic reference" to each tab, and TabbedPane holds a "component reference".
Before
Now
Affected issues
Icons from https://intellij-icons.jetbrains.design