summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/directfb
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2011-11-21 14:15:03 +0100
committerQt by Nokia <qt-info@nokia.com>2011-11-24 12:11:04 +0100
commitab0e62205f437d3eadfbbfdbebd5e3e2f316da8c (patch)
tree4c63a62c8c80f74c549f585386288f5f0c0e07e8 /src/plugins/platforms/directfb
parenta0e035956768fe29edb1109fd8e81212017afe9a (diff)
directfb: Remove dfbDisplayLayer from QDirectFbInput
Change-Id: I2ae61c40c28b337448077cff5643a007b54a3d71 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Diffstat (limited to 'src/plugins/platforms/directfb')
-rw-r--r--src/plugins/platforms/directfb/qdirectfbinput.cpp9
-rw-r--r--src/plugins/platforms/directfb/qdirectfbinput.h4
-rw-r--r--src/plugins/platforms/directfb/qdirectfbintegration.cpp2
3 files changed, 7 insertions, 8 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbinput.cpp b/src/plugins/platforms/directfb/qdirectfbinput.cpp
index bc3b6e820c..a844ef8969 100644
--- a/src/plugins/platforms/directfb/qdirectfbinput.cpp
+++ b/src/plugins/platforms/directfb/qdirectfbinput.cpp
@@ -50,15 +50,14 @@
#include <directfb.h>
-QDirectFbInput::QDirectFbInput()
- : m_dfbInterface(QDirectFbConvenience::dfbInterface())
+QDirectFbInput::QDirectFbInput(IDirectFB *dfb, IDirectFBDisplayLayer *dfbLayer)
+ : m_dfbInterface(dfb)
+ , m_dfbDisplayLayer(dfbLayer)
, m_shouldStop(false)
{
DFBResult ok = m_dfbInterface->CreateEventBuffer(m_dfbInterface, m_eventBuffer.outPtr());
if (ok != DFB_OK)
DirectFBError("Failed to initialise eventbuffer", ok);
-
- m_dfbInterface->GetDisplayLayer(m_dfbInterface, DLID_PRIMARY, m_dfbDisplayLayer.outPtr());
}
void QDirectFbInput::run()
@@ -200,7 +199,7 @@ void QDirectFbInput::handleEnterLeaveEvents(const DFBEvent &event)
inline QPoint QDirectFbInput::globalPoint(const DFBEvent &event) const
{
QDirectFBPointer<IDirectFBWindow> window;
- m_dfbDisplayLayer->GetWindow(m_dfbDisplayLayer.data() , event.window.window_id, window.outPtr());
+ m_dfbDisplayLayer->GetWindow(m_dfbDisplayLayer, event.window.window_id, window.outPtr());
int x,y;
window->GetPosition(window.data(), &x, &y);
return QPoint(event.window.cx +x, event.window.cy + y);
diff --git a/src/plugins/platforms/directfb/qdirectfbinput.h b/src/plugins/platforms/directfb/qdirectfbinput.h
index 6d8cc25380..5641943970 100644
--- a/src/plugins/platforms/directfb/qdirectfbinput.h
+++ b/src/plugins/platforms/directfb/qdirectfbinput.h
@@ -55,7 +55,7 @@ class QDirectFbInput : public QThread
{
Q_OBJECT
public:
- QDirectFbInput();
+ QDirectFbInput(IDirectFB *dfb, IDirectFBDisplayLayer *dfbLayer);
void addWindow(IDirectFBWindow *window, QWindow *platformWindow);
void removeWindow(IDirectFBWindow *window);
@@ -74,7 +74,7 @@ private:
IDirectFB *m_dfbInterface;
- QDirectFBPointer<IDirectFBDisplayLayer> m_dfbDisplayLayer;
+ IDirectFBDisplayLayer *m_dfbDisplayLayer;
QDirectFBPointer<IDirectFBEventBuffer> m_eventBuffer;
bool m_shouldStop;
diff --git a/src/plugins/platforms/directfb/qdirectfbintegration.cpp b/src/plugins/platforms/directfb/qdirectfbintegration.cpp
index bb729a6d19..73ea490110 100644
--- a/src/plugins/platforms/directfb/qdirectfbintegration.cpp
+++ b/src/plugins/platforms/directfb/qdirectfbintegration.cpp
@@ -88,7 +88,7 @@ QDirectFbIntegration::QDirectFbIntegration()
m_primaryScreen.reset(new QDirectFbScreen(0));
screenAdded(m_primaryScreen.data());
- m_input.reset(new QDirectFbInput());
+ m_input.reset(new QDirectFbInput(m_dfb.data(), m_primaryScreen->dfbLayer()));
m_input->start();
}