https://bugs.kde.org/show_bug.cgi?id=513920

            Bug ID: 513920
           Summary: konsole creates unmapped windows
    Classification: Applications
           Product: konsole
      Version First 25.12.0
       Reported In:
          Platform: Arch Linux
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: single-process
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

SUMMARY

At some point I noticed that `qdbus org.kde.konsole` showed more /Windows/*
than that I had open.
After some investigation it turned out that those windows where unmapped
top-level windows, known to X11 but not visible to or managed by the window
manager.

STEPS TO REPRODUCE
1. Configure konsole to be in single process mode.
2. Run the following a script (perhaps a few times might be needed):

```
#!/usr/bin/env bash
set -euo pipefail

# How many konsole instances to start simultaneously.
INSTANCES=5

# Base temp file prefix.
TMPBASE=$(mktemp -d /tmp/konsole-tabs.XXXXXX)

cleanup()
{
  rm -rf "$TMPBASE"
}
trap cleanup EXIT

# Create tab definition files.
for ((i = 0; i < INSTANCES; ++i)); do
  cat >"$TMPBASE/tabs-$i" <<EOF
workdir: /bin ;; profile: Profile 1
workdir: /usr ;; profile: Profile 2
EOF
done

for ((i = 0; i < INSTANCES; ++i)); do
  setsid konsole --tabs-from-file "$TMPBASE/tabs-$i" -e true </dev/null
>/dev/null 2>&1 &
done
```

Make sure the profiles actually exist (I used two different profiles).

OBSERVED RESULT

All five windows show with:
```
qdbus  org.kde.konsole | grep -E '^/Windows/[0-9]+$'
```
but not all five are managed/mapped:
```
wmctrl -lx | grep 'konsole\.konsole'
```
shows less than five (if not then try again, it might be a race condition that
requires a few attempts).

EXPECTED RESULT

All started windows are mapped and visible with `wmctrl -l`.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: none (I use fluxbox as WM)
KDE Frameworks Version: 6.21.0
Qt Version: 6.10.1

ADDITIONAL INFORMATION

Using `setsid konsole --tabs-from-file "$TMPBASE/tabs-$i" -e true </dev/null
>/dev/null 2>&1 &` is to run konsole as "unmanaged", aka without a controlling
tty, in order to have all windows be managed by a single process.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to