[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src
From:       Nicolas Lécureuil <nlecureuil () mandriva ! com>
Date:       2010-06-08 15:50:12
Message-ID: 20100608155012.5B4E7AC8CE () svn ! kde ! org
[Download RAW message or body]

SVN commit 1135992 by nlecureuil:

Backport commits:
- 1135635
- 1135657

BUG: 214943
FIXED-IN: 4.4.5


 M  +4 -3      kimlookuptable.cpp  
 M  +3 -2      kimlookuptable.h  
 M  +2 -2      kimpanelapplet.cpp  
 M  +8 -3      kimstatusbar.cpp  
 M  +1 -1      kimstatusbar.h  


--- branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src/kimlookuptable.cpp \
#1135991:1135992 @@ -44,8 +44,9 @@
 #include <X11/Xlib.h>
 #endif
 
-KIMLookupTable::KIMLookupTable(PanelAgent *agent, QWidget *parent)
+KIMLookupTable::KIMLookupTable(PanelAgent *agent, Plasma::Corona *corona, QWidget \
*parent)  :QWidget(parent),
+     m_scene(corona),
      m_visible(false)
 {
     m_panel_agent = agent;
@@ -86,7 +87,8 @@
     KWindowSystem::setState( winId(), NET::SkipTaskbar | NET::SkipPager | \
NET::StaysOnTop);  KWindowSystem::setType( winId(), NET::Dock);
 
-    m_scene = new QGraphicsScene(this);
+    m_widget = new KIMLookupTableGraphics(m_panel_agent);
+    m_scene->addOffscreenWidget(m_widget);
 
     m_view = new QGraphicsView(m_scene,this);
 
@@ -98,7 +100,6 @@
 
     m_layout->addWidget(m_view);
 
-    m_widget = new KIMLookupTableGraphics(m_panel_agent);
     connect(m_widget,SIGNAL(sizeChanged()),
             this,SLOT(propagateSizeChange()));
     connect(m_widget,SIGNAL(visibleChanged(bool)),
--- branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src/kimlookuptable.h \
#1135991:1135992 @@ -23,6 +23,7 @@
 #include <plasma/theme.h>
 #include <plasma/svg.h>
 #include <plasma/framesvg.h>
+#include <Plasma/Corona>
 
 #include <QWidget>
 #include <QHBoxLayout>
@@ -42,7 +43,7 @@
 {
 Q_OBJECT
 public:
-    explicit KIMLookupTable(PanelAgent *agent = 0,QWidget *parent=0);
+    explicit KIMLookupTable(PanelAgent *agent = 0, Plasma::Corona *corona=0, QWidget \
*parent=0);  ~KIMLookupTable();
     
 Q_SIGNALS:
@@ -68,7 +69,7 @@
     bool m_dragging;
     QPoint m_init_pos;
 
-    QGraphicsScene *m_scene;
+    Plasma::Corona *m_scene;
     QGraphicsView *m_view;
     KIMLookupTableGraphics *m_widget;
 
--- branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src/kimpanelapplet.cpp \
#1135991:1135992 @@ -100,7 +100,7 @@
     m_statusbarGraphics->setContentsMargins(0,0,0,0);
 
     m_statusbarGraphics->setCollapsible(true);
-    m_statusbar = new KIMStatusBar();
+    m_statusbar = new KIMStatusBar(static_cast<Plasma::Corona *>(scene()));
     QAction *action = new QAction(KIcon("configure"),i18n("IM Panel \
                Settings"),this);
     connect(action,SIGNAL(triggered()),this,SLOT(showConfigurationInterface()));
     m_statusbar->addAction(action);
@@ -108,7 +108,7 @@
     connect(m_statusbarGraphics,SIGNAL(iconCountChanged()),SLOT(adjustSelf()));
     connect(m_statusbarGraphics,SIGNAL(collapsed(bool)),SLOT(toggleCollapse(bool)));
 
-    m_lookup_table = new KIMLookupTable(m_panel_agent);
+    m_lookup_table = new KIMLookupTable(m_panel_agent, static_cast<Plasma::Corona \
*>(scene()));  
     m_logoIcon = new Plasma::IconWidget(KIcon("draw-freehand"),"",this);
     m_logoIcon->hide();
--- branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src/kimstatusbar.cpp \
#1135991:1135992 @@ -48,10 +48,15 @@
 #endif
 
 
-KIMStatusBar::KIMStatusBar(QWidget *parent, const QList<QAction *> extra_actions)
+KIMStatusBar::KIMStatusBar(Plasma::Corona *corona, QWidget *parent, const \
QList<QAction *> extra_actions)  : QWidget(parent),
-      m_desktop(new QDesktopWidget())
+      m_desktop(new QDesktopWidget()),
+      m_scene(corona)
 {
+   if (!m_scene) {
+       m_scene = new Plasma::Corona(this);
+   }
+
     m_background = new Plasma::FrameSvg(this);
 
     m_background->setImagePath("widgets/panel-background");
@@ -73,7 +78,6 @@
     KWindowSystem::setState( winId(), NET::SkipTaskbar | NET::SkipPager | \
NET::StaysOnTop );  KWindowSystem::setType( winId(), NET::Dock);
 
-    m_scene = new Plasma::Corona(this);
     m_view = new QGraphicsView(m_scene,this);
 
     setMouseTracking(true);
@@ -219,6 +223,7 @@
         }
         m_widget->setParent(0);
         m_scene->addItem(m_widget);
+        m_scene->addOffscreenWidget(m_widget);
         connect(m_widget,SIGNAL(iconCountChanged()),this,SLOT(adjustSelf()));
         //themeUpdated();
         move(KIM::Settings::self()->floatingStatusbarPos());
--- branches/KDE/4.4/kdeplasma-addons/applets/kimpanel/src/kimstatusbar.h \
#1135991:1135992 @@ -45,7 +45,7 @@
 {
 Q_OBJECT
 public:
-    explicit KIMStatusBar(QWidget *parent=0, const QList<QAction *> extra_actions = \
QList<QAction *>()); +    explicit KIMStatusBar(Plasma::Corona *corona=0, QWidget \
*parent=0, const QList<QAction *> extra_actions = QList<QAction *>());  \
~KIMStatusBar();  
 //X     void setEnabled(bool to_enable);


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic