void DesktopCorona::init() { setPreferredToolBoxPlugin(Plasma::Containment::DesktopContainment, "org.kde.desktoptoolbox"); setPreferredToolBoxPlugin(Plasma::Containment::CustomContainment, "org.kde.desktoptoolbox"); setPreferredToolBoxPlugin(Plasma::Containment::PanelContainment, "org.kde.paneltoolbox"); setPreferredToolBoxPlugin(Plasma::Containment::CustomPanelContainment, "org.kde.paneltoolbox"); kDebug() << "!!{} STARTUP TIME" << QTime().msecsTo(QTime::currentTime()) << "DesktopCorona init start" << "(line:" << __LINE__ << ")"; Kephal::Screens *screens = Kephal::Screens::self(); connect(screens, SIGNAL(screenAdded(Kephal::Screen*)), SLOT(screenAdded(Kephal::Screen*))); connect(KWindowSystem::self(), SIGNAL(workAreaChanged()), this, SIGNAL(availableScreenRegionChanged())); Plasma::ContainmentActionsPluginsConfig desktopPlugins; desktopPlugins.addPlugin(Qt::NoModifier, Qt::Vertical, "switchdesktop"); desktopPlugins.addPlugin(Qt::NoModifier, Qt::MidButton, "paste"); desktopPlugins.addPlugin(Qt::NoModifier, Qt::RightButton, "contextmenu"); Plasma::ContainmentActionsPluginsConfig panelPlugins; panelPlugins.addPlugin(Qt::NoModifier, Qt::RightButton, "contextmenu"); setContainmentActionsDefaults(Plasma::Containment::DesktopContainment, desktopPlugins); setContainmentActionsDefaults(Plasma::Containment::CustomContainment, desktopPlugins); setContainmentActionsDefaults(Plasma::Containment::PanelContainment, panelPlugins); setContainmentActionsDefaults(Plasma::Containment::CustomPanelContainment, panelPlugins); checkAddPanelAction(); //why do these actions belong to plasmaapp? //because it makes the keyboard shortcuts work. KAction *action = new KAction(PlasmaApp::self()); action->setText(i18n("Next Activity")); action->setObjectName( QLatin1String("Next Activity" )); // NO I18N action->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_Tab)); connect(action, SIGNAL(triggered()), this, SLOT(activateNextActivity())); action = new KAction(PlasmaApp::self()); action->setText(i18n("Previous Activity")); action->setObjectName( QLatin1String("Previous Activity" )); // NO I18N action->setGlobalShortcut(KShortcut(Qt::META + Qt::SHIFT + Qt::Key_Tab)); connect(action, SIGNAL(triggered()), this, SLOT(activatePreviousActivity())); connect(this, SIGNAL(immutabilityChanged(Plasma::ImmutabilityType)), this, SLOT(updateImmutability(Plasma::ImmutabilityType))); connect(KSycoca::self(), SIGNAL(databaseChanged(QStringList)), this, SLOT(checkAddPanelAction(QStringList))); connect(m_activityController, SIGNAL(currentActivityChanged(QString)), this, SLOT(currentActivityChanged(QString))); connect(m_activityController, SIGNAL(activityAdded(QString)), this, SLOT(activityAdded(QString))); connect(m_activityController, SIGNAL(activityRemoved(QString)), this, SLOT(activityRemoved(QString))); mapAnimation(Plasma::Animator::AppearAnimation, Plasma::Animator::ZoomAnimation); mapAnimation(Plasma::Animator::DisappearAnimation, Plasma::Animator::ZoomAnimation); kDebug() << "!!{} STARTUP TIME" << QTime().msecsTo(QTime::currentTime()) << "DesktopCorona init end" << "(line:" << __LINE__ << ")"; }
DashboardCorona::DashboardCorona(KDevelop::IProject *project, QObject* parent) : Plasma::Corona(parent), m_project(project) { DashboardPluginLoader::self()->engine().data()->addConnection(m_project->name(), m_project); setPreferredToolBoxPlugin(Plasma::Containment::CustomContainment, "org.kde.nettoolbox"); connect(this, SIGNAL(containmentAdded(Plasma::Containment*)), SLOT(containmentAddedToCorona(Plasma::Containment*))); }