diff options
Diffstat (limited to 'source/kde/kde/patch/konsole/konsole_fix_toolbar.patch')
-rw-r--r-- | source/kde/kde/patch/konsole/konsole_fix_toolbar.patch | 156 |
1 files changed, 0 insertions, 156 deletions
diff --git a/source/kde/kde/patch/konsole/konsole_fix_toolbar.patch b/source/kde/kde/patch/konsole/konsole_fix_toolbar.patch deleted file mode 100644 index 6071db5e9..000000000 --- a/source/kde/kde/patch/konsole/konsole_fix_toolbar.patch +++ /dev/null @@ -1,156 +0,0 @@ ---- ./src/MainWindow.h.orig 2021-08-04 16:48:59.000000000 -0500 -+++ ./src/MainWindow.h 2021-08-19 19:24:14.000000000 -0500 -@@ -200,6 +200,7 @@ - bool _menuBarInitialVisibility; - bool _menuBarInitialVisibilityApplied; - bool _blurEnabled = false; -+ bool _isSavedUiState = false; - }; - } - ---- ./src/MainWindow.cpp.orig 2021-08-04 16:48:59.000000000 -0500 -+++ ./src/MainWindow.cpp 2021-08-19 19:24:14.000000000 -0500 -@@ -11,12 +11,12 @@ - #include <QMouseEvent> - #include <QMenu> - #include <QMenuBar> --#include <QStatusBar> - - // KDE - #include <KAcceleratorManager> - #include <KActionCollection> - #include <KActionMenu> -+#include <KCrash> - #include <KIconUtils> - #include <KShortcutsDialog> - #include <KLocalizedString> -@@ -56,6 +56,8 @@ - #include "terminalDisplay/TerminalDisplay.h" - #include "widgets/ViewContainer.h" - -+#include <konsoledebug.h> -+ - using namespace Konsole; - - MainWindow::MainWindow() : -@@ -68,13 +70,22 @@ - _menuBarInitialVisibility(true), - _menuBarInitialVisibilityApplied(false) - { -- if (!KonsoleSettings::saveGeometryOnExit()) { -+ KSharedConfigPtr konsoleConfig = KSharedConfig::openConfig(QStringLiteral("konsolerc")); -+ KConfigGroup cg = konsoleConfig->group(QStringLiteral("MainWindow")); -+ const bool isGroup = cg.exists(); -+ if (isGroup) { -+ const QString stateConfig = cg.readEntry(QStringLiteral("State")); -+ -+ // If "stateConfig" is empty then this is the very first run, -+ // i.e. no konsolerc file in $HOME -+ _isSavedUiState = !stateConfig.isEmpty(); -+ } -+ -+ if (isGroup && !KonsoleSettings::saveGeometryOnExit()) { - // If we are not using the global Konsole save geometry on exit, - // remove all geometry data from [MainWindow] in Konsolerc, so KWin will - // manage it directly -- KSharedConfigPtr konsoleConfig = KSharedConfig::openConfig(QStringLiteral("konsolerc")); -- KConfigGroup group = konsoleConfig->group("MainWindow"); -- QMap<QString, QString> configEntries = group.entryMap(); -+ QMap<QString, QString> configEntries = cg.entryMap(); - QMapIterator<QString, QString> i(configEntries); - - while (i.hasNext()) { -@@ -91,7 +102,7 @@ - || i.key().contains(QLatin1String(" YPosition")) - #endif - ) { -- group.deleteEntry(i.key()); -+ cg.deleteEntry(i.key()); - } - } - } -@@ -103,7 +114,7 @@ - - // create view manager - _viewManager = new ViewManager(this, actionCollection()); -- connect(_viewManager, &Konsole::ViewManager::empty, this, &Konsole::MainWindow::close); -+ connect(_viewManager, &Konsole::ViewManager::empty, this, &QWidget::close); - connect(_viewManager, &Konsole::ViewManager::activeViewChanged, this, - &Konsole::MainWindow::activeViewChanged); - connect(_viewManager, &Konsole::ViewManager::unplugController, this, -@@ -129,8 +140,10 @@ - // in terminal applications - KAcceleratorManager::setNoAccel(menuBar()); - -- // create menus -- createGUI(); -+ constexpr KXmlGuiWindow::StandardWindowOptions guiOpts = ToolBar | Keys | Save | Create; -+ const QString xmlFile = componentName() + QLatin1String("ui.rc"); // Typically "konsoleui.rc" -+ // The "Create" flag will make it call createGUI() -+ setupGUI(guiOpts, xmlFile); - - // remember the original menu accelerators for later use - rememberMenuAccelerators(); -@@ -146,11 +159,7 @@ - connect(KonsoleSettings::self(), &Konsole::KonsoleSettings::configChanged, this, - &Konsole::MainWindow::applyKonsoleSettings); - -- -- // KXMLGui is making the status bar always visible, we need to fix in a proper way. -- if (statusBar() != nullptr) { -- statusBar()->installEventFilter(this); -- } -+ KCrash::initialize(); - } - - void MainWindow::updateUseTransparency() -@@ -889,7 +898,15 @@ - #if KWINDOWSYSTEM_VERSION < QT_VERSION_CHECK(5,82,0) - KWindowEffects::enableBlurBehind(winId(), blur); - #else -- KWindowEffects::enableBlurBehind(windowHandle(), blur); -+ // Set the WA_NativeWindow attribute to force the creation of the QWindow. -+ // Without this QWidget::windowHandle() returns 0. -+ // See https://phabricator.kde.org/D23108 -+ setAttribute(Qt::WA_NativeWindow); -+ if (QWindow *window = windowHandle()) { -+ KWindowEffects::enableBlurBehind(window, blur); -+ } else { -+ qCWarning(KonsoleDebug) << "Blur effect couldn't be enabled."; -+ } - #endif - } - } -@@ -935,9 +952,14 @@ - menuBar()->setVisible(_menuBarInitialVisibility); - _toggleMenuBarAction->setChecked(_menuBarInitialVisibility); - _menuBarInitialVisibilityApplied = true; -- if (!KonsoleSettings::saveGeometryOnExit()) { -- resize(sizeHint()); -- } -+ } -+ -+ if (!_isSavedUiState || !KonsoleSettings::saveGeometryOnExit()) { -+ // Delay resizing to here, so that the other parts of the UI -+ // (ViewManager, TabbedViewContainer, TerminalDisplay ... etc) -+ // have been created and TabbedViewContainer::sizeHint() returns -+ // a usuable size. -+ resize(sizeHint()); - } - - // Call parent method -@@ -971,13 +993,7 @@ - default: ; - } - } -- if (qobject_cast<QStatusBar*>(obj) != nullptr) { -- switch(event->type()) { -- case QEvent::Show: statusBar()->hide(); break; -- default: return true; -- } -- return true; -- } -+ - return KXmlGuiWindow::eventFilter(obj, event); - } - |