From e68567b604550efc54ea0c102aebc10e4e063f52 Mon Sep 17 00:00:00 2001
From: Alexander Golubev <fatzer2@gmail.com>
Date: Wed, 1 Jul 2026 04:13:03 +0300
Subject: kicker: small enhancements to context menu of grouped tasks

A couple of small enhancements to context menu of grouped tasks when
"Show windows from all desktops" is disabled:
 - fix-up of a mistake in TaskRMBMenu constructor, because of which "To
   Current Desktop" action was shown in windows' submenus.
 - Don't show "All to Current Desktop" action the same it's not shown
   for individual windows

Signed-off-by: Alexander Golubev <fatzer2@gmail.com>
---
 kicker/taskmanager/taskmanager.h   |  2 +-
 kicker/taskmanager/taskrmbmenu.cpp | 20 +++++++++++---------
 2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/kicker/taskmanager/taskmanager.h b/kicker/taskmanager/taskmanager.h
index 2b517c5de..01f8a25d4 100644
--- a/kicker/taskmanager/taskmanager.h
+++ b/kicker/taskmanager/taskmanager.h
@@ -363,7 +363,7 @@ public slots:
      */
     void lower();
 
-   /**
+    /**
      * Activate the task's window.
      */
     void activate();
diff --git a/kicker/taskmanager/taskrmbmenu.cpp b/kicker/taskmanager/taskrmbmenu.cpp
index 31c48d61c..66957299b 100644
--- a/kicker/taskmanager/taskrmbmenu.cpp
+++ b/kicker/taskmanager/taskrmbmenu.cpp
@@ -139,7 +139,7 @@ void TaskRMBMenu::fillMenu()
 
         id = insertItem( TQIconSet( t->pixmap() ),
                          t->visibleNameWithState(),
-		         new TaskRMBMenu(t, this) );
+		         new TaskRMBMenu(t, showAll, this) );
         setItemChecked( id, t->isActive() );
         connectItem( id, t, TQ_SLOT( activateRaiseOrIconify() ) );
     }
@@ -152,17 +152,19 @@ void TaskRMBMenu::fillMenu()
     {
         id = insertItem(i18n("All to &Desktop"), makeDesktopsMenu());
 
-        id = insertItem(i18n("All &to Current Desktop"), this, TQ_SLOT(slotAllToCurrentDesktop()));
-        Task::List::iterator itEnd = tasks.end();
-        for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
-        {
-            if (!(*it)->isOnCurrentDesktop())
+        if (showAll) {
+            id = insertItem(i18n("All &to Current Desktop"), this, TQ_SLOT(slotAllToCurrentDesktop()));
+            Task::List::iterator itEnd = tasks.end();
+            for (Task::List::iterator it = tasks.begin(); it != itEnd; ++it)
             {
-                enable = true;
-                break;
+                if (!(*it)->isOnCurrentDesktop())
+                {
+                    enable = true;
+                    break;
+                }
             }
+            setItemEnabled(id, enable);
         }
-        setItemEnabled(id, enable);
     }
 
     enable = false;
-- 
cgit v1.2.3

