get default containments and toolbox from package

wilder-5.14
Marco Martin 13 years ago
parent b5085e48ce
commit c55e6ad462
  1. 6
      desktopcorona.cpp
  2. 1
      desktopcorona.h
  3. 15
      qmlpackages/desktop/contents/defaults
  4. 2
      shellpackage.cpp

@ -22,6 +22,7 @@
#include <QApplication> #include <QApplication>
#include <QDebug> #include <QDebug>
#include <QDesktopWidget> #include <QDesktopWidget>
#include <Plasma/Package>
#include "panelview.h" #include "panelview.h"
#include "view.h" #include "view.h"
@ -33,6 +34,8 @@ DesktopCorona::DesktopCorona(QObject *parent)
: Plasma::Corona(parent), : Plasma::Corona(parent),
m_desktopWidget(QApplication::desktop()) m_desktopWidget(QApplication::desktop())
{ {
m_desktopDefaultsConfig = KConfigGroup(KSharedConfig::openConfig(package().filePath("defaults")), "Desktop");
connect(m_desktopWidget, SIGNAL(resized(int)), connect(m_desktopWidget, SIGNAL(resized(int)),
this, SLOT(screenResized(int))); this, SLOT(screenResized(int)));
connect(m_desktopWidget, SIGNAL(screenCountChanged(int)), connect(m_desktopWidget, SIGNAL(screenCountChanged(int)),
@ -53,6 +56,7 @@ DesktopCorona::~DesktopCorona()
void DesktopCorona::loadDefaultLayout() void DesktopCorona::loadDefaultLayout()
{ {
//TODO: use Javascript here
Plasma::Containment *cont = createContainment("org.kde.testcontainment"); Plasma::Containment *cont = createContainment("org.kde.testcontainment");
cont->setScreen(0); cont->setScreen(0);
qDebug() << containmentForScreen(0); qDebug() << containmentForScreen(0);
@ -118,7 +122,7 @@ void DesktopCorona::checkDesktop(/*Activity *activity,*/ bool signalWhenExists,
//TODO: remove following when activities are restored //TODO: remove following when activities are restored
if (!c) { if (!c) {
c = createContainment("desktop"); c = createContainment(m_desktopDefaultsConfig.readEntry("Containment", "org.kde.testcontainment"));
} }
if (!c) { if (!c) {

@ -76,6 +76,7 @@ private:
QDesktopWidget *m_desktopWidget; QDesktopWidget *m_desktopWidget;
QList <View *> m_views; QList <View *> m_views;
QHash<Plasma::Containment *, PanelView *> m_panelViews; QHash<Plasma::Containment *, PanelView *> m_panelViews;
KConfigGroup m_desktopDefaultsConfig;
}; };
#endif #endif

@ -0,0 +1,15 @@
[Desktop]
Containment=org.kde.desktop
ToolBox=org.kde.toolbox
[Desktop][ContainmentActions]
Ctrl;LeftButton=org.kde.standardmenu
MiddleButton=org.kde.paste
[Panel]
Containment=org.kde.panel
ToolBox=org.kde.toolbox
[Panel][ContainmentActions]
Ctrl;LeftButton=org.kde.standardmenu
[Theme]
Theme=default

@ -40,7 +40,7 @@ void ShellPackageStructure::initPackage(Plasma::Package *package)
package->addFileDefinition("defaults", "defaults", i18n("Default plugins for containments, containmentActions etc")); package->addFileDefinition("defaults", "defaults", i18n("Default plugins for containments, containmentActions etc"));
package->setMimeTypes("layout", QStringList() << "application/javascript"); package->setMimeTypes("layout", QStringList() << "application/javascript");
package->setMimeTypes("layout", QStringList() << "text/plain"); package->setMimeTypes("defaults", QStringList() << "text/plain");
package->addFileDefinition("appleterror", "components/AppletError.qml", i18n("Error message shown when an applet fails loading")); package->addFileDefinition("appleterror", "components/AppletError.qml", i18n("Error message shown when an applet fails loading"));
package->addFileDefinition("compactapplet", "components/CompactApplet.qml", i18n("QML component that shows an applet in a popup")); package->addFileDefinition("compactapplet", "components/CompactApplet.qml", i18n("QML component that shows an applet in a popup"));

Loading…
Cancel
Save