| Summary: | Unable to capture any portion of the screen while a dropdown menu is active in an app | ||
|---|---|---|---|
| Product: | [Applications] Spectacle | Reporter: | Scott R. Godin <rhbugzilla> |
| Component: | General | Assignee: | Noah Davis <noahadvs> |
| Status: | CLOSED UPSTREAM | ||
| Severity: | normal | CC: | kde, nate |
| Priority: | NOR | ||
| Version First Reported In: | 6.4.4 | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | screen capture obtained with "import" instead of spectacle, to grab the dropdown | ||
I'm afraid this is an X11 limitation. Workarounds include setting a timer in Spectacle and opening the menu later, or using the Wayland session. As mentioned previously a workaround does *not* in fact, include setting a timer in spectacle and opening the menu later, as that was tried and also failed. And You/upstream Kwin devs, et al., would need to have made KWin happier with the Nvidia-470xx driver for my system's older GTX 650 card, before I could even USE wayland with it, as it isn't even polite about it enough to dump me back to nouveau, oh no, I get sent to CPU rendering and 2, repeat TWO, FPS . and also as mentioned the `import -window root` method seems to work fine in X11 for a FULLso "limitation" seems to me to be limited to spectacle in this case s/FULLso/Full-screen shot, so/ It's not, it's an X11 issue, as I mentioned. If the timer option didn't work, try it again. You have to set up the timer, take a screenshot, and then open the context menu before the timer fires. If you're having trouble using the Plasma Wayland session, please feel free to submit specific separate bug reports about it. Thanks! useless. I don't know why i even bothered. "If the timer option didn't work, try it again. You have to set up the timer, take a screenshot, and then open the context menu before the timer fires." -- this was tried, exactly like that, multiple times. Pulling a nested dropdown-within-a-dropdown before the app opens is tricky enough. Sometimes you even have to press ESC before it even shows that Spectacle has opened, at which point you lose one level of your dropdown, defeating the purpose. And yet `import` has no problem with it, so technically not an X-11 limitation. Whatever, I don't care anymore, since nobody else seems to. Ok, sorry I couldn't help you. > 3. press (or try to) META-SHIFT-S to open spectacle (nothing happens) > And yet `import` has no problem with it, so technically not an X-11 > limitation. The limitation is that the dropdown menu globally intercepts all key events on X11. `import` works because it's a console command. If you opened Spectacle with a console command instead of a global shortcut, it would have worked. |
Created attachment 186344 [details] screen capture obtained with "import" instead of spectacle, to grab the dropdown SUMMARY attempting to capture a dropdown menu in Gvim to attach a screenshot to an email to tell a friend about this new feature I just added and cannot for the life of me figure out how to get Spectacle to allow me to grab the screen while a dropdown menu is active in the frontmost app STEPS TO REPRODUCE 1. open Gvim in any configuration that shows the menu bar 2. pull a dropdown menu from the menu bar that has a submenu , and navigate to the submenu 3. press (or try to) META-SHIFT-S to open spectacle (nothing happens) 4. open spectacle separately, set a delay option, then press Meta-Shift-S and race to pull down the drop down menu, and then at THAT point, also attempt a screengrab (partial or full screen) OBSERVED RESULT Failed to take screenshot in any way shape or form EXPECTED RESULT screenshot showing dropdown menu as in the attached SOFTWARE/OS VERSIONS Operating System: Fedora Linux 41 KDE Plasma Version: 6.4.4 KDE Frameworks Version: 6.18.0 Qt Version: 6.8.3 Kernel Version: 6.16.12-100.fc41.x86_64 (64-bit) Graphics Platform: X11 Processors: 8 × Intel® Core™ i7 CPU 860 @ 2.80GHz Memory: 16 GiB of RAM (15.6 GiB usable) Graphics Processor: NVIDIA GeForce GTX 650 ADDITIONAL INFORMATION I was able to take the attached screenshot by creating the following applet in ~/bin/sshot ``` #!/bin/bash sleep 5 import -window root ~/sshot.jpg chmod 644 ~/sshot.jpg ```