diff --git a/shell/shellcorona.h b/shell/shellcorona.h --- a/shell/shellcorona.h +++ b/shell/shellcorona.h @@ -29,6 +29,7 @@ #include #include #include +#include #include @@ -246,6 +247,7 @@ QTimer m_waitingPanelsTimer; QTimer m_appConfigSyncTimer; QTimer m_reconsiderOutputsTimer; + QElapsedTimer m_startupElapsedtimer; KWayland::Client::PlasmaShell *m_waylandPlasmaShell; }; diff --git a/shell/shellcorona.cpp b/shell/shellcorona.cpp --- a/shell/shellcorona.cpp +++ b/shell/shellcorona.cpp @@ -94,6 +94,7 @@ m_interactiveConsole(nullptr), m_waylandPlasmaShell(nullptr) { + m_startupElapsedtimer.restart(); setupWaylandIntegration(); qmlRegisterUncreatableType("org.kde.plasma.shell", 2, 0, "Desktop", QStringLiteral("It is not possible to create objects of type Desktop")); qmlRegisterUncreatableType("org.kde.plasma.shell", 2, 0, "Panel", QStringLiteral("It is not possible to create objects of type Panel")); @@ -1194,7 +1195,9 @@ m_panelViews[cont] = panel; panel->setContainment(cont); cont->reactToScreenChange(); - + connect(panel, &PanelView::visibleChanged, [this](){ + qCDebug(PLASMASHELL) << "Panel appeared, time elapsed since startup:" << m_startupElapsedtimer.elapsed(); + }); connect(cont, &QObject::destroyed, this, &ShellCorona::panelContainmentDestroyed); } m_waitingPanels = stillWaitingPanels;