Bug 488174

Summary: Moving non-center-aligned panel from left screen edge to bottom screen edge fails and crashes plasmashell in PlasmaQuick::ContainmentView::formFactorChanged() after you close edit mode
Product: [Plasma] plasmashell Reporter: Nate Graham <nate>
Component: PanelAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: akselmo, bruhzakahmed420666, niccolo.venerandi, notmart
Priority: NOR Keywords: regression
Version: git-stable-Plasma/6.1   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 6.1.1
Sentry Crash Report:
Attachments: How I reproduce the issue

Description Nate Graham 2024-06-07 18:43:41 UTC
Everything built from git master against Qt 6.6.3.


STEPS TO REPRODUCE
1. Have panel on the left screen edge. If it's not already there, move it there and then restart plasmashell for good measure.
2. Right-click on panel > Show Panel Configuration.
3. Click on "Position" button to expose the arrows pointing at screen edges.
4. Click on the arrow for for bottom screen edge, or hit the Down arrow on the keyboard.


OBSERVED RESULT
The panel fails to move to the bottom screen edge. If I click the "Exit Edit Mode" button, plasmashell immediately crashes. This is all 100% reproducible for me.

Backtrace:

#0  __pthread_kill_implementation
    (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007f19590ab1b3 in __pthread_kill_internal (threadid=<optimized out>, signo=11)
    at pthread_kill.c:78
#2  0x00007f195905365e in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007f195cc669a3 in KCrash::defaultCrashHandler (sig=11)
    at /home/nate/kde/src/kcrash/src/kcrash.cpp:597
#4  0x00007f1959053710 in <signal handler called> () at /lib64/libc.so.6
#5  0x00007f195cfe82ae in std::__uniq_ptr_impl<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::_M_ptr (this=0x30)
    at /usr/include/c++/14/bits/unique_ptr.h:193
#6  std::unique_ptr<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::get (this=0x30) at /usr/include/c++/14/bits/unique_ptr.h:464
#7  std::unique_ptr<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::operator-> (this=0x30) at /usr/include/c++/14/bits/unique_ptr.h:457
#8  PlasmaQuick::PopupPlasmaWindow::setVisualParent (this=0x0, item=0x5d20540)
    at /home/nate/kde/src/libplasma/src/plasmaquick/popupplasmawindow.cpp:250
#9  0x00007f19597fa752 in QtPrivate::QSlotObjectBase::call
    (this=0x602b900, r=<optimized out>, a=0x7ffe54ce3b20)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#10 doActivate<false> (sender=0x4481740, signal_index=45, argv=0x7ffe54ce3b20)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#11 0x00007f19597f0b47 in QMetaObject::activate
    (sender=<optimized out>, m=m@entry=0x7f195d02efe0, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe54ce3b20)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#12 0x00007f195cfd45b1 in PlasmaQuick::ContainmentView::formFactorChanged
    (this=<optimized out>, _t1=<optimized out>)
    at /home/nate/kde/build/libplasma/src/plasmaquick/PlasmaQuick_autogen/include/moc_containmentview.cpp:264
#13 0x00007f19597fa752 in QtPrivate::QSlotObjectBase::call
    (this=0x483fdb0, r=<optimized out>, a=0x7ffe54ce3c30)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#14 doActivate<false> (sender=0x2bfef00, signal_index=41, argv=0x7ffe54ce3c30)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#15 0x00007f19597f0b47 in QMetaObject::activate
    (sender=sender@entry=0x2bfef00, m=m@entry=0x7f195c7fbde0, local_signal_index=local_signal_index@entry=14, argv=argv@entry=0x7ffe54ce3c30)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#16 0x00007f195c7bfdc1 in Plasma::Containment::formFactorChanged
    (this=this@entry=0x2bfef00, _t1=<optimized out>, _t1@entry=Plasma::Types::Horizontal)
    at /home/nate/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:825
#17 0x00007f195c7c27e7 in Plasma::Containment::setFormFactor
    (this=0x2bfef00, formFactor=formFactor@entry=Plasma::Types::Horizontal)
    at /home/nate/kde/src/libplasma/src/plasma/containment.cpp:321
#18 0x0000000000443ce2 in PanelView::slideLocation (this=this@entry=0x4481740)
    at /home/nate/kde/src/plasma-workspace/shell/panelview.cpp:572
#19 0x0000000000444304 in PanelView::positionAndResizePanel (this=0x4481740)
    at /home/nate/kde/src/plasma-workspace/shell/panelview.cpp:715
#20 0x00007f19597fa752 in QtPrivate::QSlotObjectBase::call
    (this=0x5e19190, r=<optimized out>, a=0x7ffe54ce3de0)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#21 doActivate<false> (sender=0x44817a8, signal_index=7, argv=0x7ffe54ce3de0)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#22 0x00007f19597f0b47 in QMetaObject::activate
    (sender=sender@entry=0x44817a8, m=m@entry=0x7f1959c83da0, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe54ce3de0)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#23 0x00007f195993bd79 in QVariantAnimation::valueChanged (this=this@entry=0x44817a8, _t1=...)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qvariantanimation.cpp:202
#24 0x00007f195993cbc3 in QVariantAnimationPrivate::setCurrentValueForProgress
    (this=0x476b330, progress=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qvariantanimation.cpp:261
#25 0x00007f195992b5f5 in QAbstractAnimation::setCurrentTime (this=0x44817a8, msecs=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:1338
#26 0x00007f195992b7fe in QAnimationTimer::updateAnimationsTime (this=0x44b48c0, delta=28)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:575
#27 0x00007f1959926939 in QUnifiedTimer::updateAnimationTimers (this=this@entry=0x35cf500)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:288
#28 0x00007f195992958d in QAnimationDriver::advanceAnimation (this=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:755
#29 0x00007f195b6c71d7 in QSGThreadedRenderLoop::event (e=<optimized out>, this=0x2878cd0)
    at /usr/src/debug/qt6-qtdeclarative-6.7.1-2.fc40.x86_64/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1713
#30 QSGThreadedRenderLoop::event (this=0x2878cd0, e=<optimized out>)
    at /usr/src/debug/qt6-qtdeclarative-6.7.1-2.fc40.x86_64/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1704
#31 0x00007f195bf8b168 in QApplicationPrivate::notify_helper
    (this=<optimized out>, receiver=0x2878cd0, e=0x7ffe54ce40d0)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3287
#32 0x00007f1959795b18 in QCoreApplication::notifyInternal2
    (receiver=0x2878cd0, event=0x7ffe54ce40d0)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1134
#33 0x00007f1959795d7d in QCoreApplication::sendEvent
    (receiver=<optimized out>, event=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1575
#34 0x00007f195994e097 in QTimerInfoList::activateTimers (this=0x22ff880)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qtimerinfo_unix.cpp:434
#35 0x00007f1959a7c989 in timerSourceDispatch (source=<optimized out>)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:150
#36 0x00007f1958b456ac in g_main_dispatch (context=0x7f1940000f00) at ../glib/gmain.c:3344
#37 g_main_context_dispatch_unlocked (context=0x7f1940000f00) at ../glib/gmain.c:4152
#38 0x00007f1958ba6708 in g_main_context_iterate_unlocked.isra.0
    (context=context@entry=0x7f1940000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4217
#39 0x00007f1958b46b23 in g_main_context_iteration (context=0x7f1940000f00, may_block=1)
    at ../glib/gmain.c:4282
#40 0x00007f1959a7cb53 in QEventDispatcherGlib::processEvents (this=0x2212e00, flags=...)
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:394
#41 0x00007f19597a2713 in QEventLoop::exec (this=this@entry=0x7ffe54ce43a0, flags=..., 
    flags@entry=...) at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/global/qflags.h:34
#42 0x00007f195979e69c in QCoreApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/global/qflags.h:74
#43 0x00007f195a1d53dd in QGuiApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/gui/kernel/qguiapplication.cpp:1926
#44 0x00007f195bf8b0d9 in QApplication::exec ()
    at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/widgets/kernel/qapplication.cpp:2555
#45 0x0000000000426996 in main (argc=<optimized out>, argv=<optimized out>)
    at /home/nate/kde/src/plasma-workspace/shell/main.cpp:188


EXPECTED RESULT
The panel moves to the bottom screen edge without drama
Comment 1 Akseli Lahtinen 2024-06-10 13:12:23 UTC
I am unable to reproduce this :/

Operating System: Fedora Linux 40
KDE Plasma Version: 6.1.80
KDE Frameworks Version: 6.4.0
Qt Version: 6.7.1
Kernel Version: 6.8.11-300.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 15.5 GiB of RAM
Graphics Processor: AMD Radeon RX 6600
Comment 2 Nate Graham 2024-06-10 15:16:59 UTC
Created attachment 170347 [details]
How I reproduce the issue

I'm attaching a screen recording that shows me reproducing the issue so you can be sure you're testing the same way.
Comment 3 Nate Graham 2024-06-10 15:18:06 UTC
It's also not CatWalk causing it; I removed that widget and the problem still reproduces.
Comment 4 Akseli Lahtinen 2024-06-14 11:07:15 UTC
I managed to reproduce it!

I had to make sure the panel alignment is not center, but its left.

I think when its moving the panel, the alignment changing might be causing the crash.
Comment 5 Akseli Lahtinen 2024-06-14 11:13:40 UTC
Adding my backtrace too for good measure


#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0)
at pthread_kill.c:44
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
[Current thread is 1 (Thread 0x7fc7dce71b80 (LWP 10211))]
Missing separate debuginfos, use: dnf debuginfo-install ffmpeg-libs-6.1.1-11.fc40.x86_64 x264-libs-0.164-13.20231001git31e19f92.fc40.x86_64 x265-libs-3.6-2.fc40.x86_64
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0)
at pthread_kill.c:44
#1  0x00007fc7e22ab1b3 in __pthread_kill_internal (threadid=<optimized out>, signo=11) at pthread_kill.c:78
#2  0x00007fc7e225365e in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007fc7e5ecc9eb in KCrash::defaultCrashHandler (sig=11)
at /home/akseli/Repositories/kde/src/kcrash/src/kcrash.cpp:597
#4  0x00007fc7e2253710 in <signal handler called> () at /lib64/libc.so.6
#5  0x00007fc7e627744e in std::__uniq_ptr_impl<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::_M_ptr (this=0x30) at /usr/include/c++/14/bits/unique_ptr.h:193
#6  std::unique_ptr<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::get (this=0x30) at /usr/include/c++/14/bits/unique_ptr.h:464
#7  std::unique_ptr<PlasmaQuick::PopupPlasmaWindowPrivate, std::default_delete<PlasmaQuick::PopupPlasmaWindowPrivate> >::operator-> (this=0x30) at /usr/include/c++/14/bits/unique_ptr.h:457
#8  PlasmaQuick::PopupPlasmaWindow::setVisualParent (this=0x0, item=0x409e660)
at /home/akseli/Repositories/kde/src/libplasma/src/plasmaquick/popupplasmawindow.cpp:250
#9  0x00007fc7e29fa752 in QtPrivate::QSlotObjectBase::call
(this=0x51e9b00, r=<optimized out>, a=0x7ffe443a3e10)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#10 doActivate<false> (sender=0x2ad0970, signal_index=45, argv=0x7ffe443a3e10)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#11 0x00007fc7e29f0b47 in QMetaObject::activate
(sender=<optimized out>, m=m@entry=0x7fc7e62bcfe0, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe443a3e10) at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#12 0x00007fc7e62636c1 in PlasmaQuick::ContainmentView::formFactorChanged
(this=<optimized out>, _t1=<optimized out>)
at /home/akseli/Repositories/kde/build/libplasma/src/plasmaquick/PlasmaQuick_autogen/include/moc_containmentview.cpp:264
#13 0x00007fc7e29fa752 in QtPrivate::QSlotObjectBase::call
(this=0x2ecc2f0, r=<optimized out>, a=0x7ffe443a3f20)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#14 doActivate<false> (sender=0x21e6760, signal_index=41, argv=0x7ffe443a3f20)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#15 0x00007fc7e29f0b47 in QMetaObject::activate
(sender=sender@entry=0x21e6760, m=m@entry=0x7fc7e59fbde0, local_signal_index=local_signal_index@entry=14, --Type <RET> for more, q to quit, c to continue without paging--c
argv=argv@entry=0x7ffe443a3f20)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#16 0x00007fc7e59befe1 in Plasma::Containment::formFactorChanged
(this=this@entry=0x21e6760, _t1=<optimized out>, _t1@entry=Plasma::Types::Horizontal)
at /home/akseli/Repositories/kde/build/libplasma/src/plasma/Plasma_autogen/include/moc_containment.cpp:825
#17 0x00007fc7e59c1a47 in Plasma::Containment::setFormFactor
(this=0x21e6760, formFactor=formFactor@entry=Plasma::Types::Horizontal)
at /home/akseli/Repositories/kde/src/libplasma/src/plasma/containment.cpp:321
#18 0x0000000000445752 in PanelView::slideLocation (this=this@entry=0x2ad0970)
at /home/akseli/Repositories/kde/src/plasma-workspace/shell/panelview.cpp:572
#19 0x0000000000445d74 in PanelView::positionAndResizePanel (this=0x2ad0970)
at /home/akseli/Repositories/kde/src/plasma-workspace/shell/panelview.cpp:715
#20 0x00007fc7e29fa752 in QtPrivate::QSlotObjectBase::call
(this=0x2ed9620, r=<optimized out>, a=0x7ffe443a40d0)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#21 doActivate<false> (sender=0x2ad09d8, signal_index=7, argv=0x7ffe443a40d0)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#22 0x00007fc7e29f0b47 in QMetaObject::activate
(sender=sender@entry=0x2ad09d8, m=m@entry=0x7fc7e2e83da0, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe443a40d0)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#23 0x00007fc7e2b3bd79 in QVariantAnimation::valueChanged (this=this@entry=0x2ad09d8, _t1=...)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qvariantanimation.cpp:202
#24 0x00007fc7e2b3cbc3 in QVariantAnimationPrivate::setCurrentValueForProgress
(this=0x2c573c0, progress=<optimized out>)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qvariantanimation.cpp:261
#25 0x00007fc7e2b2b5f5 in QAbstractAnimation::setCurrentTime (this=0x2ad09d8, msecs=<optimized out>)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:1338
#26 0x00007fc7e2b2b7fe in QAnimationTimer::updateAnimationsTime (this=0x7fc768805dc0, delta=6)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:575
#27 0x00007fc7e2b26939 in QUnifiedTimer::updateAnimationTimers (this=this@entry=0x25c6220)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:288
#28 0x00007fc7e2b2958d in QAnimationDriver::advanceAnimation (this=<optimized out>)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/animation/qabstractanimation.cpp:755
#29 0x00007fc7e48d5347 in QSGThreadedRenderLoop::event (e=<optimized out>, this=0x260bda0)
at /home/akseli/Repositories/kde/src/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1713
#30 QSGThreadedRenderLoop::event (this=0x260bda0, e=<optimized out>)
at /home/akseli/Repositories/kde/src/qtdeclarative/src/quick/scenegraph/qsgthreadedrenderloop.cpp:1704
#31 0x00007fc7e518b168 in QApplicationPrivate::notify_helper
(this=<optimized out>, receiver=0x260bda0, e=0x7ffe443a43a0)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3287
#32 0x00007fc7e2995b18 in QCoreApplication::notifyInternal2 (receiver=0x260bda0, event=0x7ffe443a43a0)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1134
#33 0x00007fc7e2995d7d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1575
#34 0x00007fc7e2b4e097 in QTimerInfoList::activateTimers (this=0x17aa330)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qtimerinfo_unix.cpp:434
#35 0x00007fc7e2c7c989 in timerSourceDispatch (source=<optimized out>)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:150
#36 0x00007fc7e1d2e6ac in g_main_dispatch (context=0x7fc7c8000f00) at ../glib/gmain.c:3344
#37 g_main_context_dispatch_unlocked (context=0x7fc7c8000f00) at ../glib/gmain.c:4152
#38 0x00007fc7e1d8f708 in g_main_context_iterate_unlocked.isra.0
(context=context@entry=0x7fc7c8000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4217
#39 0x00007fc7e1d2fb23 in g_main_context_iteration (context=0x7fc7c8000f00, may_block=1)
at ../glib/gmain.c:4282
#40 0x00007fc7e2c7cb53 in QEventDispatcherGlib::processEvents (this=0x1742e50, flags=...)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:394
#41 0x00007fc7e29a2713 in QEventLoop::exec (this=this@entry=0x7ffe443a4670, flags=..., flags@entry=...)
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/global/qflags.h:34
#42 0x00007fc7e299e69c in QCoreApplication::exec ()
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/corelib/global/qflags.h:74
#43 0x00007fc7e33d53dd in QGuiApplication::exec ()
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/gui/kernel/qguiapplication.cpp:1926
#44 0x00007fc7e518b0d9 in QApplication::exec ()
at /usr/src/debug/qt6-qtbase-6.7.1-2.fc40.x86_64/src/widgets/kernel/qapplication.cpp:2555
#45 0x0000000000427a86 in main (argc=<optimized out>, argv=<optimized out>)
at /home/akseli/Repositories/kde/src/plasma-workspace/shell/main.cpp:188
Comment 6 Nate Graham 2024-06-17 18:02:19 UTC
*** Bug 488561 has been marked as a duplicate of this bug. ***
Comment 7 Bug Janitor Service 2024-06-18 10:21:37 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/2319
Comment 8 Marco Martin 2024-06-18 12:58:44 UTC
Git commit 5c5a51679b4fe11b63a410a8350931d4bcd34940 by Marco Martin.
Committed on 18/06/2024 at 12:58.
Pushed by mart into branch 'master'.

Enforce formfactor when changing location

Enforce horizontal for top and bottom locations
and vertical for left and right

M  +12   -1    shell/panelview.cpp

https://invent.kde.org/plasma/plasma-workspace/-/commit/5c5a51679b4fe11b63a410a8350931d4bcd34940
Comment 9 Marco Martin 2024-06-18 13:30:14 UTC
Git commit 69d12b716d3cdb06a3cf23630ea4493f0e13a30c by Marco Martin.
Committed on 18/06/2024 at 12:59.
Pushed by mart into branch 'Plasma/6.1'.

Enforce formfactor when changing location

Enforce horizontal for top and bottom locations
and vertical for left and right


(cherry picked from commit 5c5a51679b4fe11b63a410a8350931d4bcd34940)

8093f914 Enforce formfactor when changing location

Co-authored-by: Marco Martin <notmart@gmail.com>

M  +12   -1    shell/panelview.cpp

https://invent.kde.org/plasma/plasma-workspace/-/commit/69d12b716d3cdb06a3cf23630ea4493f0e13a30c