Summary: | "Show Statusbar" menu item doesn't work | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | popov895 <popov895> |
Component: | general | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | a.samirh78, nate, popov895 |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/utilities/konsole/commit/fb7f838fd3138a39aea3bcb2e91f923741587137 | Version Fixed In: | 21.12 |
Description
popov895
2021-05-01 22:09:17 UTC
Can confirm. Seems to do nothing at all. Probably, can be closed, since I no longer see this menu item in the master branch. This was worked around with https://invent.kde.org/utilities/konsole/-/commit/7114a1e07d6ed0d59c33acc18a0bcfc5d158c158 and should hopefully be fixed with https://invent.kde.org/utilities/konsole/-/merge_requests/447/diffs?commit_id=3e74b205eb22356bb0c7bf84337288ae2c85d8cf Reading this report's description again, this bug happened because of the first commit I linked above, which basically intercepts the show/hide statusbar menu action. Git commit 090356661c92bfedeeeaf6f4f77d294facb3d8c6 by Kurt Hindenburg, on behalf of Ahmad Samir. Committed on 02/08/2021 at 15:28. Pushed by hindenburg into branch 'master'. Fix KXmlGUI toolbars; and Konsole MainWindow size Call setupGUI(), which will call createGUI (since we set the KXmlGuiWindow::Create flag), omit the StatusBar flag since we don't have a statusbar and don't want the "Show StatusBar" menu action. TabbedViewContainer::sizeHint() calculates an optimum size for itself, including the sizes of its child widgets; added in efb621d091c05f11 by Mariusz Glebocki; following the code: MainWindow creates a ViewManager ViewManager creates a TabbedViewContainer and then a TerminalDisplay which means that the first time TabbedViewContainer::sizeHint() is called the TerminalDisplay widget size is 0, then TabbedViewContainer::sizeHint() would return 0. Which is why calling resize() in MainWindow was delayed to the showEvent(), (and even delayed more by a QTimer::singleShot() call in Application), at which point all the child widgets have been created and MainWindow::sizeHint() (which logically takes into account the sizeHint() of its child widgets) would return a sensible size. Related: bug 430036, bug 439339 M +12 -5 src/MainWindow.cpp https://invent.kde.org/utilities/konsole/commit/090356661c92bfedeeeaf6f4f77d294facb3d8c6 Git commit fb7f838fd3138a39aea3bcb2e91f923741587137 by Ahmad Samir. Committed on 13/08/2021 at 18:21. Pushed by ahmadsamir into branch 'cherry-pick-09035666'. Fix KXmlGUI toolbars; and Konsole MainWindow size Call setupGUI(), which will call createGUI (since we set the KXmlGuiWindow::Create flag), omit the StatusBar flag since we don't have a statusbar and don't want the "Show StatusBar" menu action. TabbedViewContainer::sizeHint() calculates an optimum size for itself, including the sizes of its child widgets; added in efb621d091c05f11 by Mariusz Glebocki; following the code: MainWindow creates a ViewManager ViewManager creates a TabbedViewContainer and then a TerminalDisplay which means that the first time TabbedViewContainer::sizeHint() is called the TerminalDisplay widget size is 0, then TabbedViewContainer::sizeHint() would return 0. Which is why calling resize() in MainWindow was delayed to the showEvent(), (and even delayed more by a QTimer::singleShot() call in Application), at which point all the child widgets have been created and MainWindow::sizeHint() (which logically takes into account the sizeHint() of its child widgets) would return a sensible size. Related: bug 430036, bug 439339 (cherry picked from commit 090356661c92bfedeeeaf6f4f77d294facb3d8c6) M +12 -5 src/MainWindow.cpp https://invent.kde.org/utilities/konsole/commit/fb7f838fd3138a39aea3bcb2e91f923741587137 |