Bug 448392 - While in Edit Mode, switching virtual desktops to another one and back again exits Edit Mode
Summary: While in Edit Mode, switching virtual desktops to another one and back again ...
Status: RESOLVED INTENTIONAL
Alias: None
Product: plasmashell
Classification: Plasma
Component: Show Desktop/Minimize All widgets (show other bugs)
Version: 5.23.5
Platform: Neon Linux
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-13 20:41 UTC by Eric Edlund
Modified: 2022-02-02 10:00 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Edlund 2022-01-13 20:41:25 UTC
SUMMARY


STEPS TO REPRODUCE
1. Open a window
2. Enter edit mode
3. Use shortcuts to switch virtual desktop, then switch back to original

OBSERVED RESULT
After you switch back, the windows that were hidden are shown again

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Neon 5.23 User Edition
(available in About System)
KDE Plasma Version: 5.23.5
KDE Frameworks Version: 5.89.0
Qt Version: 5.15.3
Comment 1 Nate Graham 2022-01-13 22:33:36 UTC
Can confirm.
Comment 2 Fushan Wen 2022-01-16 09:05:52 UTC
After clicking "Show Desktop" and switch virtual desktop, the hidden windows are restored, too.
Comment 3 Fushan Wen 2022-01-16 12:58:25 UTC
(gdb) bt
#0  0x000055af3192e250 in KWindowSystem::setShowingDesktop(bool)@plt ()
#1  0x00007fc6bbeb4423 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffcbbdf0d20, r=0x55af33331ba0, this=0x55af343a7620) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#2  doActivate<false>(QObject*, int, void**) (sender=0x55af33331ba0, signal_index=13, argv=0x7ffcbbdf0d20) at kernel/qobject.cpp:3886
#3  0x00007fc6bbead8ef in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=10, argv=argv@entry=0x7ffcbbdf0d20) at kernel/qobject.cpp:3946
#4  0x00007fc6bdf37d92 in Plasma::Corona::editModeChanged(bool) (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/plasma-framework-5.91.0git.20220114T130819~402bea797-ku.5.1.x86_64/build/src/plasma/KF5Plasma_autogen/include/moc_corona.cpp:506
#5  0x00007fc6bbeb4423 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffcbbdf0e30, r=0x55af33331ba0, this=0x55af34424c20) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#6  doActivate<false>(QObject*, int, void**) (sender=0x7ffcbbdf1280, signal_index=14, argv=0x7ffcbbdf0e30) at kernel/qobject.cpp:3886
#7  0x00007fc6bbead8ef in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7fc6bc866400, local_signal_index=local_signal_index@entry=6, argv=argv@entry=0x7ffcbbdf0e30) at kernel/qobject.cpp:3946
#8  0x00007fc6bc2ce6a2 in QGuiApplication::focusWindowChanged(QWindow*) (this=<optimized out>, _t1=<optimized out>, _t1@entry=0x0) at .moc/moc_qguiapplication.cpp:423
#9  0x00007fc6bc2d8a4c in QGuiApplicationPrivate::processActivatedEvent(QWindowSystemInterfacePrivate::ActivatedWindowEvent*) (e=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:116
#10 0x00007fc6bc2b283c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#11 0x00007fc6b72f5cfa in xcbSourceDispatch(GSource*, GSourceFunc, gpointer) (source=source@entry=0x55af332ee750) at qxcbeventdispatcher.cpp:105
#12 0x00007fc6ba1bed9f in g_main_dispatch (context=0x7fc6b0005000) at ../glib/gmain.c:3381
#13 g_main_context_dispatch (context=0x7fc6b0005000) at ../glib/gmain.c:4099
#14 0x00007fc6ba1bf128 in g_main_context_iterate (context=context@entry=0x7fc6b0005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4175
#15 0x00007fc6ba1bf1df in g_main_context_iteration (context=0x7fc6b0005000, may_block=1) at ../glib/gmain.c:4240
#16 0x00007fc6bbed5294 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55af332f36d0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#17 0x00007fc6bbe7c7bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffcbbdf1100, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#18 0x00007fc6bbe84aa0 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#19 0x00007fc6bc2d023c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867
#20 0x00007fc6bcc1c9f5 in QApplication::exec() () at kernel/qapplication.cpp:2824
#21 0x000055af3193269a in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma5-workspace-5.24.80git.20220115T143951~926cc069d-ku.120.3.x86_64/shell/main.cpp:238
Comment 4 Bug Janitor Service 2022-01-16 15:08:26 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/1889
Comment 5 Fushan Wen 2022-02-02 10:00:14 UTC
It's probably intentional to deactivate "Show Desktop" when switching between virtual desktops to avoid more bugs. Mark this bug as "RESOLVED INTENTIONAL".