--- yakuake-23.04.1/app/mainwindow.cpp_orig	2023-05-19 10:36:24.410621499 +0600
+++ yakuake-23.04.1/app/mainwindow.cpp	2023-05-19 10:49:13.524839802 +0600
@@ -33,7 +33,6 @@
 #include <KToggleFullScreenAction>
 #include <KWindowEffects>
 #include <KWindowSystem>
-#include <KX11Extras>
 
 #include <QApplication>
 #include <QDBusConnection>
@@ -841,8 +840,8 @@
 
     connect(settingsDialog, &QDialog::finished, [=]() {
         m_toggleLock = true;
-        KWindowSystem::activateWindow(windowHandle());
-        KX11Extras::forceActiveWindow(winId());
+        KWindowSystem::activateWindow(winId());
+        KWindowSystem::forceActiveWindow(winId());
     });
 
     settingsDialog->show();
@@ -940,7 +939,7 @@
     }
 #endif
 
-    KX11Extras::setOnAllDesktops(winId(), Settings::showOnAllDesktops());
+    KWindowSystem::setOnAllDesktops(winId(), Settings::showOnAllDesktops());
     KWindowEffects::enableBlurBehind(windowHandle(), m_sessionStack->wantsBlur());
 }
 
@@ -1204,11 +1203,11 @@
             // will also cause the window manager to switch to the virtual
             // desktop the window resides on.
 
-            KWindowSystem::activateWindow(windowHandle());
-            KX11Extras::forceActiveWindow(winId());
+            KWindowSystem::activateWindow(winId());
+            KWindowSystem::forceActiveWindow(winId());
 
             return;
-        } else if (!Settings::showOnAllDesktops() && KWindowInfo(winId(), NET::WMDesktop).desktop() != KX11Extras::currentDesktop()) {
+        } else if (!Settings::showOnAllDesktops() && KWindowInfo(winId(), NET::WMDesktop).desktop() != KWindowSystem::currentDesktop()) {
             // The open/restrict action isn't set to focus the window, but
             // the window is currently on another virtual desktop (the option
             // to show it on all of them is disabled), so closing it doesn't
@@ -1218,10 +1217,10 @@
             // switch to the virtual desktop the window currently resides on,
             // so move the window to the current desktop before doing so.
 
-            KX11Extras::setOnDesktop(winId(), KX11Extras::currentDesktop());
+            KWindowSystem::setOnDesktop(winId(), KWindowSystem::currentDesktop());
 
-            KWindowSystem::activateWindow(windowHandle());
-            KX11Extras::forceActiveWindow(winId());
+            KWindowSystem::activateWindow(winId());
+            KWindowSystem::forceActiveWindow(winId());
 
             return;
         }
@@ -1231,7 +1230,7 @@
     if (!Settings::useWMAssist() && m_kwinAssistPropSet)
         kwinAssistPropCleanup();
 
-    if (m_isX11 && Settings::useWMAssist() && KX11Extras::compositingActive())
+    if (m_isX11 && Settings::useWMAssist() && KWindowSystem::compositingActive())
         kwinAssistToggleWindowState(visible);
     else
 #endif
@@ -1418,7 +1417,7 @@
 void MainWindow::sharedAfterOpenWindow()
 {
     if (!Settings::firstRun())
-        KX11Extras::forceActiveWindow(winId());
+        KWindowSystem::forceActiveWindow(winId());
 
     connect(qGuiApp, &QGuiApplication::focusWindowChanged, this, &MainWindow::wmActiveWindowChanged);
 
@@ -1451,7 +1450,7 @@
 
 void MainWindow::activate()
 {
-    KWindowSystem::activateWindow(windowHandle());
+    KWindowSystem::activateWindow(winId());
 }
 
 void MainWindow::toggleMousePoll(bool poll)
@@ -1550,7 +1549,7 @@
     }
 
     if (QGuiApplication::screens().count() > 1) {
-        const QList<WId> allWindows = KX11Extras::windows();
+        const QList<WId> allWindows = KWindowSystem::windows();
         QList<WId> offScreenWindows;
 
         QListIterator<WId> i(allWindows);
@@ -1558,7 +1557,7 @@
         while (i.hasNext()) {
             WId windowId = i.next();
 
-            if (KX11Extras::hasWId(windowId)) {
+            if (KWindowSystem::hasWId(windowId)) {
                 KWindowInfo windowInfo = KWindowInfo(windowId, NET::WMDesktop | NET::WMGeometry, NET::WM2ExtendedStrut);
 
                 // If windowInfo is valid and the window is located at the same (current)
@@ -1597,11 +1596,11 @@
             }
         }
 
-        return KX11Extras::workArea(offScreenWindows).intersected(screenGeometry);
+        return KWindowSystem::workArea(offScreenWindows).intersected(screenGeometry);
     }
 
 #if HAVE_X11
-    return KX11Extras::workArea();
+    return KWindowSystem::workArea();
 #else
     return QRect();
 #endif
@@ -1631,7 +1630,7 @@
 
     m_firstRunDialog->deleteLater();
 
-    KX11Extras::forceActiveWindow(winId());
+    KWindowSystem::forceActiveWindow(winId());
 }
 
 void MainWindow::firstRunDialogOk()
@@ -1645,7 +1644,7 @@
 
 void MainWindow::updateUseTranslucency()
 {
-    m_useTranslucency = (Settings::translucency() && (m_isX11 ? KX11Extras::compositingActive() : true));
+    m_useTranslucency = (Settings::translucency() && KWindowSystem::compositingActive());
 }
 
 void MainWindow::updateTrayTooltip()