Laszlo Agocs [Fri, 25 Nov 2011 14:48:12 +0000 (16:48 +0200)]
qwindow-compositor: Do a render on expose.
Change-Id: Ic2941a389de6f8aeaf74a86ce09ecf4616b390cc
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Lasse Holmstedt [Mon, 21 Nov 2011 12:06:18 +0000 (13:06 +0100)]
Clear property cache when window is destroyed
Change-Id: Icf2d949ebb517d010c34dbb9e040fb833eff1fc3
Reviewed-by: Martin Zielinski <martin.zielinski@nokia.com>
Lasse Holmstedt [Mon, 21 Nov 2011 12:06:04 +0000 (13:06 +0100)]
Flush window property changes also with EGL surfaces
Change-Id: I57924c75ab22f259de70e97731439a74bc3ec9e7
Reviewed-by: Martin Zielinski <martin.zielinski@nokia.com>
Samuel Rødal [Tue, 1 Nov 2011 07:56:47 +0000 (08:56 +0100)]
Get rid of QOpenGLContext dependency in WaylandCompositor constructor.
Now WaylandSurface::texture() takes a QOpenGLContext * instead. This
prevents a crash in qml-compositor against wayland_egl, since the
context was 0 (it's created behind the scenes by scene graph at a
later point).
Change-Id: Ia02f596922ad0edea602dfe12b411ec827d47669
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Kent Hansen [Mon, 31 Oct 2011 11:57:26 +0000 (12:57 +0100)]
Add missing QWindow include
Fix compile error ("waylandeglintegration.cpp:84:27: error: "
"invalid use of incomplete type 'struct QWindow'")
Change-Id: Ic87ee8a6fe67329d0e1e9a4a96fda05952093f8f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Fri, 28 Oct 2011 08:38:29 +0000 (11:38 +0300)]
Enable selections to be offered directly from the compositor.
The new function QWaylandCompositor::overrideSelection() allows
implementing clipboard functionality between the compositor and the
clients. This becomes important when the compositor process has UI
running in it because that implies offering and receiving selection
data not just between the clients but also between the compositor
(acting as a client in this respect) and clients.
Change-Id: I15575101bbef3edd71e23b7fe1f898e5803b37c6
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Martin Zielinski [Wed, 26 Oct 2011 11:55:17 +0000 (13:55 +0200)]
Fixed Wayland-Client QPA plugin to work correctly for wayland_egl
Change-Id: I2b65b13b43e14aa173a083309cf30fb28f692a28
Reviewed-by: Arvid Picciani <arvid.picciani@nokia.com>
Andy Nichols [Wed, 26 Oct 2011 10:48:01 +0000 (12:48 +0200)]
Rename QSG* to QQuick* in qtwayland module
Change-Id: I6029550cb9a892795d0db9aafea59801a1de3c68
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Tue, 25 Oct 2011 11:29:28 +0000 (14:29 +0300)]
Include QWindow header in qt-compositor.
With recent Qt the compiler complains about undefined QWindow class,
so include the corresponding header.
Change-Id: Ie176431e67554110a2fab519c3cc56416200f0a9
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 24 Oct 2011 08:38:59 +0000 (11:38 +0300)]
Add basic key, mouse, touch event support to qwindow-compositor.
This brings the capabilities of this compact and lean compositor
example up to the level of the old qwidget-based one.
Change-Id: I58eae567e64e1f06432d23bd7d24579efb36eb84
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 24 Oct 2011 08:28:36 +0000 (11:28 +0300)]
Do not leak textures in qwindow-compositor.
When drawing images coming via SHM the OpenGL texture was never
deleted, causing a leak of a texture on every update.
Change-Id: Ic40198a5a8369a273c046a186a82d69597ea5c0c
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 24 Oct 2011 07:48:20 +0000 (10:48 +0300)]
Fix mirrored Y coordinates in qwindow-compositor.
Change-Id: I432aa2fdf231301fda99b68e863ecc964c550781
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 24 Oct 2011 06:20:41 +0000 (09:20 +0300)]
Avoid qwindow-compositor crash on startup due to missing background.
Include background.jpg as a resource. This way it will be found
always.
Change-Id: I859a01b97fc81b704f8c632aab546b4b9905c375
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 24 Oct 2011 05:40:12 +0000 (08:40 +0300)]
Make it compile with pkg-config.
The handcrafted handling of use_pkgconfig does not really work
so leave it to qmake and use PKGCONFIG instead.
Change-Id: I893c9c859c9b38e0affcb02981c001622698c1ff
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Laszlo Agocs [Thu, 20 Oct 2011 14:27:33 +0000 (17:27 +0300)]
Generate touch events with a slightly larger area.
The original size of (1, 1) is not really suitable for applications
like the fingerpaint example app. As there is no area coming
through the protocol we just use a rectangle of size (8, 8) for now.
Change-Id: If3d0c603e8f43310ee37038197afb16a270ebc84
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Laszlo Agocs [Wed, 12 Oct 2011 09:03:44 +0000 (12:03 +0300)]
Add a very basic fallback for client-side key handling without xkb.
Change-Id: I06096005ec1f50b2c0478becc623677e95a40e11
Reviewed-on: http://codereview.qt-project.org/6507
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Wed, 12 Oct 2011 09:02:04 +0000 (12:02 +0300)]
Remove FUD comments from setTouchEventsEnabled.
Change-Id: Ieaee0ecb87197b03ba116700686fe3f8ad4f546c
Reviewed-on: http://codereview.qt-project.org/6506
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Samuel Rødal [Thu, 6 Oct 2011 10:01:33 +0000 (12:01 +0200)]
Update to new QScreen orientation API.
Change-Id: I375e7fdf0db1f1817c3e1bfea0b652cfc72ac854
Reviewed-on: http://codereview.qt-project.org/6307
Sanity-Review: Paul Olav Tvete <paul.tvete@nokia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Samuel Rødal [Thu, 6 Oct 2011 08:24:05 +0000 (10:24 +0200)]
Fixed compile error (the old Status #define).
Change-Id: I650085e7e95c8b561e2e114937576e032cffb383
Reviewed-on: http://codereview.qt-project.org/6221
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Samuel Rødal [Thu, 6 Oct 2011 09:45:49 +0000 (11:45 +0200)]
Some small improvements to qwindow-compositor.
Change-Id: I497def3e500116d3cc2850e4cc4e3ea4055de6cb
Reviewed-on: http://codereview.qt-project.org/6222
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Samuel Rødal [Thu, 6 Oct 2011 09:46:23 +0000 (11:46 +0200)]
Be nice to implementations in wayland_egl backend.
Set the texture filtering modes so the implementation doesn't have to.
Change-Id: I5515d61b7a04a9b242039012fc66d26dce7737ec
Reviewed-on: http://codereview.qt-project.org/6223
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Rohan McGovern [Wed, 28 Sep 2011 23:42:22 +0000 (09:42 +1000)]
Rename qt-compositor.pro -> qtwayland.pro
Follow the typical qmake naming scheme of <directoryname>.pro.
Change-Id: I4dce85d1f64a9385079a675dfc1e8e1f31483a15
Reviewed-on: http://codereview.qt-project.org/5760
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Paul Olav Tvete [Thu, 22 Sep 2011 13:48:47 +0000 (15:48 +0200)]
Use the new page flipping API
Change-Id: I99bdbcef9395747ccd550e693bc6b84eccc54a40
Reviewed-on: http://codereview.qt-project.org/5392
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Samuel Rødal [Tue, 13 Sep 2011 20:59:54 +0000 (22:59 +0200)]
Set the correct buffer pointer (protected member variables are evil).
Change-Id: I6cdd64fbee5a9b46b44d8fadfc0f443dd1f4b140
Reviewed-on: http://codereview.qt-project.org/4862
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Reviewed-on: http://codereview.qt-project.org/5380
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Samuel Rødal [Wed, 14 Sep 2011 12:10:05 +0000 (14:10 +0200)]
Fixed XComposite hardware integration in wayland plugin.
We should set both the pixmap and window bits for XComposite to work on
a stricter EGL / GLX implementation.
Change-Id: Ie1be44ebcc68fed87f48c74dffd887ffae1189d5
Reviewed-on: http://codereview.qt-project.org/4893
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Reviewed-on: http://codereview.qt-project.org/5381
Jason McDonald [Thu, 8 Sep 2011 01:44:29 +0000 (11:44 +1000)]
Add missing license headers.
Change-Id: I3ea0028dbf712b569ca00646098a729d3ac40717
Reviewed-on: http://codereview.qt-project.org/4379
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lasse Holmstedt
Reviewed-on: http://codereview.qt-project.org/5069
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Joona Petrell [Tue, 13 Sep 2011 08:32:41 +0000 (11:32 +0300)]
Use QPlaftormInputContextFactory to load input context in Wayland plugin
Change-Id: Icd1d934463b550f0fcdf7d58df7c4fd1acb77ad8
Reviewed-on: http://codereview.qt-project.org/4740
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-on: http://codereview.qt-project.org/5068
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Samuel Rødal [Wed, 14 Sep 2011 15:56:50 +0000 (17:56 +0200)]
Fixed qml-compositor failing on XComposite EGL / GLX.
We also need to make sure that the QWindow has actually been created at
this point, before creating a child window to be used as the fake root
for composited windows.
Samuel Rødal [Wed, 14 Sep 2011 13:55:05 +0000 (15:55 +0200)]
Don't call glDeleteTextures() when texture_id is 0.
Samuel Rødal [Wed, 14 Sep 2011 11:48:33 +0000 (13:48 +0200)]
Fixed XComposite hardware integration.
The root window needs to actually be mapped in order for
XCompositeNameWindowPixmap to work.
Also make sure to set both the window and pixmap bits in case we're on a
stricter EGL / GLX implementation.
Andy Nichols [Tue, 13 Sep 2011 14:45:49 +0000 (16:45 +0200)]
Disabled DESTDIR for the wayland platform
This enables make install to work correctly. This should be fixed when
this is moved into the QtWayland module.
Lasse Holmstedt [Tue, 13 Sep 2011 11:59:59 +0000 (13:59 +0200)]
Build fix
Andy Nichols [Tue, 13 Sep 2011 11:37:18 +0000 (13:37 +0200)]
Cleaned up project files
Removed references to Widgets module that is not needed anymore. Also
make qml-compositor deployable with make install.
Paul Olav Tvete [Tue, 13 Sep 2011 11:03:01 +0000 (13:03 +0200)]
Merge branch 'refactor'
Gunnar Sletta [Tue, 13 Sep 2011 08:46:23 +0000 (10:46 +0200)]
Merge branch 'refactor'
Conflicts:
src/qt-compositor/compositor_api/waylandcompositor.cpp
src/qt-compositor/wayland_wrapper/wloutput.cpp
Paul Olav Tvete [Mon, 12 Sep 2011 15:30:24 +0000 (17:30 +0200)]
Import the wayland platform plugin from qtbase, including the qt/4.8 history
Samuel Rødal [Tue, 6 Sep 2011 08:49:40 +0000 (10:49 +0200)]
Merge remote branch 'gerrit/master' into HEAD
Conflicts:
src/plugins/platforms/wayland/qwaylandnativeinterface.cpp
src/plugins/platforms/wayland/qwaylandnativeinterface.h
Change-Id: I64cf2cefa532ba87a92f632e3595ce6914183e9b
Paul Olav Tvete [Fri, 9 Sep 2011 12:01:39 +0000 (14:01 +0200)]
Get rid of the textureChanged signal.
We trigger update directly from damage now, so we don't need this signal anymore.
Paul Olav Tvete [Fri, 9 Sep 2011 07:46:28 +0000 (09:46 +0200)]
Make sure we always release buffers
If for some reason the compositor is not able to handle a buffer
before the next one arrives, the buffer would be locked forever.
This change detects that case, and adds an "emergency release", and
displays a warning.
Paul Olav Tvete [Thu, 8 Sep 2011 15:57:59 +0000 (17:57 +0200)]
Make sure we update the item when the buffer is damaged.
Done with Samuel.
Paul Olav Tvete [Thu, 8 Sep 2011 15:56:32 +0000 (17:56 +0200)]
Compile fixes
Andy Nichols [Wed, 7 Sep 2011 14:09:08 +0000 (16:09 +0200)]
Change the install path for qwindow-compositor example
Lasse Holmstedt [Tue, 6 Sep 2011 14:49:03 +0000 (16:49 +0200)]
Allow changing of the output geometry
If you are building a compositor that does not provide the same
composition area as the desktop resolution, you can now change the
geometry to match the area that your compositor is going to render.
You must set the geometry to desired value before clients connect.
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Lasse Holmstedt [Wed, 31 Aug 2011 14:08:05 +0000 (16:08 +0200)]
Remove isVisibleOnScreen from ManagedWaylandClient
the values are already stored in WaylandSurfaceItem.
Lasse Holmstedt [Wed, 31 Aug 2011 08:00:10 +0000 (10:00 +0200)]
Support for generic window properties
Wayland surfaces can now contain window-specific properties,
which are read/writable from both server and client side.
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Lasse Holmstedt [Wed, 31 Aug 2011 07:55:11 +0000 (09:55 +0200)]
Generic property support for platform windows
QPlatformNativeInterface can now contain generic window
properties in a QVariantMap, to facilitate communication
with the compositor and clients for certain platforms.
When window properties change, a signal is emitted from the
respective QPlatformNativeInterface instance. The properties
are intended to be read/writable from both client and server.
Change-Id: I7b42f7910d03c0d309add6c7dbb1c9b66ad22a3f
Reviewed-on: http://codereview.qt.nokia.com/3956
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jørgen Lind [Fri, 2 Sep 2011 14:39:06 +0000 (16:39 +0200)]
Propogate that the size has changed
Change-Id: I73dde157e38933d39992cb4393297c0849ee1ae2
Reviewed-on: http://codereview.qt.nokia.com/4149
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Gunnar Sletta [Fri, 2 Sep 2011 07:08:18 +0000 (09:08 +0200)]
missing include
Gunnar Sletta [Fri, 2 Sep 2011 06:57:40 +0000 (08:57 +0200)]
Adapt to new API
Andy Nichols [Wed, 31 Aug 2011 14:25:36 +0000 (16:25 +0200)]
Merge branch 'refactor' of scm.dev.nokia.troll.no:qt-compositor/mainline into refactor
Andy Nichols [Wed, 31 Aug 2011 14:23:10 +0000 (16:23 +0200)]
Enables semi-transparent clients in QWindow Compositor
Morten Sorvig [Tue, 23 Aug 2011 10:51:11 +0000 (12:51 +0200)]
Cocoa: Fix qmlscene flicker on startup.
The SG render thread was racing window creation in
the GUI thread, which would cause flicker if the
window won the race and was shown before the SG
thread had a frame ready.
Send a synchronous expose event before showing the
window - this will wait for the SG render thread.
In addition, don't defer NSwindow creation. The GL
context setup is done before the window is shown
and needs a fully created window.
New API: QWindowSystemInterface::handleSynchronousExposeEvent
Retire: QWindowSystemInterface::handleExposeEvent
Change-Id: I0bb46089d16ec4882aaac8db67b57d15e0f51531
Reviewed-on: http://codereview.qt.nokia.com/3399
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
Jørgen Lind [Wed, 31 Aug 2011 13:51:35 +0000 (15:51 +0200)]
Actually rename the cleasses and remove the don't recreate eglimage
hack that the last commit contained
Jørgen Lind [Wed, 31 Aug 2011 13:47:20 +0000 (15:47 +0200)]
Renaming mesa_egl to wayland_egl
and a compile fix for qwidget compositor
Andy Nichols [Wed, 31 Aug 2011 11:35:03 +0000 (13:35 +0200)]
Merge branch 'refactor' of scm.dev.nokia.troll.no:qt-compositor/mainline into refactor
Andy Nichols [Wed, 31 Aug 2011 11:34:46 +0000 (13:34 +0200)]
Initial commit of QWindow based compositor
Andy Nichols [Wed, 31 Aug 2011 11:33:45 +0000 (13:33 +0200)]
Update to compile with changes to Refactor branch.
Jørgen Lind [Fri, 19 Aug 2011 15:08:27 +0000 (17:08 +0200)]
Added buffer release
Also Removed the touch stuff from the widget compositor
Also fixed a multiple inheritance problem in widget compositor
Also Removed some stupid pkg-config variable for includes hack
Samuel Rødal [Mon, 29 Aug 2011 12:18:03 +0000 (14:18 +0200)]
Fixed build and crash issues.
Samuel Rødal [Mon, 22 Aug 2011 08:49:28 +0000 (10:49 +0200)]
Copy core GL functionality to QtGui with QGL -> QOpenGL naming.
Change-Id: Ibc989afa4a30dd184d41d1a1cd89f97196e48855
Reviewed-on: http://codereview.qt.nokia.com/3710
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Samuel Rødal [Thu, 25 Aug 2011 18:19:44 +0000 (20:19 +0200)]
Introduce new platform capability ThreadedOpenGL.
Lets the platform plugin advertise whether it's safe to use OpenGL from
a different thread. With XCB we only advertise this if we have a
reasonably new XCB libary, as older versions suffer from the
xcb_wait_for_reply() blocking bug, which cause GL rendering in a
separate to stall when using Mesa drivers.
Change-Id: I4829df7e583a1c8aed218ae13a159d21266cc594
Reviewed-on: http://codereview.qt.nokia.com/3613
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Gunnar Sletta [Thu, 25 Aug 2011 08:11:49 +0000 (10:11 +0200)]
Merge branch 'master' into refactor
Conflicts:
src/gui/kernel/qapplication_qpa.cpp
src/gui/kernel/qcursor_qpa.cpp
src/gui/kernel/qwindowsysteminterface_qpa.cpp
src/gui/kernel/qwindowsysteminterface_qpa.h
src/gui/kernel/qwindowsysteminterface_qpa_p.h
src/gui/text/qtextcontrol.cpp
src/plugins/platforms/wayland/wayland.pro
src/widgets/accessible/qaccessible2.h
src/widgets/widgets/qwidgetlinecontrol_p.h
Change-Id: I5e6f4eb184159dccc67e8f13673edb884d179c74
Jørgen Lind [Wed, 24 Aug 2011 08:38:31 +0000 (10:38 +0200)]
If the EGL_PLATFORM is not set, then set it
Change-Id: I6c1b0ba757c64fc42faacd69d4e5d1df28faf7d1
Reviewed-on: http://codereview.qt.nokia.com/3472
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Laszlo Agocs [Tue, 23 Aug 2011 13:14:19 +0000 (16:14 +0300)]
Avoid crash in texture provider.
Gunnar Sletta [Mon, 22 Aug 2011 14:07:56 +0000 (16:07 +0200)]
updated to latest API
Matthew Cattell [Thu, 18 Aug 2011 12:49:01 +0000 (14:49 +0200)]
make compositor build with refactor - frameSwapped slot added
Matthew Cattell [Thu, 18 Aug 2011 12:43:59 +0000 (14:43 +0200)]
added widgets-private
Matthew Cattell [Thu, 18 Aug 2011 12:42:52 +0000 (14:42 +0200)]
get window handle direct from compositor
Gunnar Sletta [Mon, 15 Aug 2011 06:37:30 +0000 (08:37 +0200)]
Work with refactor
Gunnar Sletta [Fri, 12 Aug 2011 14:01:44 +0000 (16:01 +0200)]
prepare to support refactor based on QWindow
Gunnar Sletta [Fri, 12 Aug 2011 13:11:33 +0000 (15:11 +0200)]
refactor fixes
Gunnar Sletta [Fri, 12 Aug 2011 10:18:01 +0000 (12:18 +0200)]
Compile with recent refacto
Laszlo Agocs [Wed, 10 Aug 2011 07:05:03 +0000 (10:05 +0300)]
Handle EINTR gracefully in Wayland clipboard.
Change-Id: Idd5082f02eb6708685421492afb8ad5b8546a5d6
Reviewed-on: http://codereview.qt.nokia.com/2810
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Samuel Rødal [Fri, 5 Aug 2011 10:11:40 +0000 (12:11 +0200)]
Get wayland plugin working after latest QPA API changes.
Change-Id: If54e7068aaed84fe765b887250bca79c787bd8a3
Reviewed-on: http://codereview.qt.nokia.com/2684
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Samuel Rødal [Fri, 5 Aug 2011 07:21:34 +0000 (09:21 +0200)]
Get rid of missing qmake warning.
Change-Id: I470e89cb5b2042cda1811ef327e0703c7510fd08
Reviewed-on: http://codereview.qt.nokia.com/2683
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Samuel Rødal [Fri, 5 Aug 2011 10:16:54 +0000 (12:16 +0200)]
Merge remote branch 'origin/master' into refactor
Samuel Rødal [Fri, 5 Aug 2011 10:12:29 +0000 (12:12 +0200)]
Updated according to ShaderEffectItem -> ShaderEffect API changes.
Laszlo Agocs [Thu, 4 Aug 2011 12:01:37 +0000 (15:01 +0300)]
Avoid killing clients with sigpipe when transfering clipboard data.
When transfering selection data from sender to receiver, normally they
both block on the write and read. However blocking on the read when
retaining the data is sub-optimal for the compositor. Therefore it
uses non-blocking I/O (*) but this seems to introduce a chance of
having the clients terminating with SIGPIPE signal due to trying to
write when the compositor has already closed the handle and started to
retain another selection from another client. (all this caused by a
rapid succession of QClipboard::setMimeData calls)
The patch ensures that the read end of the pipe is not closed until
all data has been read, even if a newer selection gets activated
meanwhile, in which case the data (that became obsolete) is simply
ignored.
(*) The patch also enables real non-blocking I/O which was missing
for some reason, until now the compositor blocked when the first
reaady to read signal came.
Laszlo Agocs [Thu, 4 Aug 2011 10:01:04 +0000 (13:01 +0300)]
Support QImage and others in Wayland clipboard.
The wayland plugin's clipboard implementation lacked support for data
set via QMimeData::setImageData, QClipboard::setPixmap, etc. because
everything was treated as a QByteArray. A variant having an image
cannot however be converted to a byte array. Therefore, to make these
convenience functions to work, the image is now encoded via
QImageWriter before sending it. On the receiving side QMimeData is
capable of decoding images from byte arrays, so no problem there.
The patch also renames an internal QWaylandMimeData class to a more
suitable clipboard-specific name as the functionality is clipboard
specific.
Change-Id: I77e7df903b8dbe9731613fdbb9693b2a37b05d18
Reviewed-on: http://codereview.qt.nokia.com/2616
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Lasse Holmstedt [Fri, 29 Jul 2011 21:12:28 +0000 (23:12 +0200)]
Add root-level .pro files
So that you can build from the root. By default, examples are not
built.
Jørgen Lind [Wed, 27 Jul 2011 14:54:53 +0000 (16:54 +0200)]
Make QPlatformIntegration not have a factory for eventdispatcher
but rather an accessor for the guiThreadEventDispatcher
Change-Id: I1b9ba14efc9f338c5a67e3e24ddb0caf76c07413
Reviewed-on: http://codereview.qt.nokia.com/2321
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Wed, 27 Jul 2011 09:34:09 +0000 (12:34 +0300)]
Merge branch 'master' into refactor
Conflicts:
examples/qml-compositor/qml-compositor.pro
Laszlo Agocs [Tue, 26 Jul 2011 08:55:50 +0000 (11:55 +0300)]
Fix qwidget example build with regular Qt5.
Laszlo Agocs [Tue, 26 Jul 2011 08:55:02 +0000 (11:55 +0300)]
Get rid of unnecessary focus checks for touch event sending.
Laszlo Agocs [Mon, 25 Jul 2011 10:01:04 +0000 (13:01 +0300)]
Drag and drop support in Wayland plug-in.
Change-Id: I5e4448a9b3d3df9e3a12733386079031be340a42
Reviewed-on: http://codereview.qt.nokia.com/2101
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Laszlo Agocs [Mon, 25 Jul 2011 09:57:57 +0000 (12:57 +0300)]
Pixmap cursor support in QWaylandCursor.
Change-Id: I7075229584e9705fae63679b5512c11fd8535797
Reviewed-on: http://codereview.qt.nokia.com/2100
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Samuel Rødal [Thu, 21 Jul 2011 11:50:28 +0000 (13:50 +0200)]
Added workable QScreen API on top of QPlatformScreen.
QPlatformIntegration::screens() no longer has to be implemented,
implementations should call QPlatformIntegration::screenAdded() for each
screen instead. This is for being able to support adding screens at
run-time later on, by connecting it to a signal in QGuiApplication.
The QGuiGLContext API has changed a bit, by not sending in all the
parameters in the constructor but instead having a create() function.
The createPlatformGLContext() factory in QPlatformIntegration takes a
QGuiGLContext * instead of a QSurfaceFormat and a share context, similar
to how the window and backing store factory functions work.
The XCB plugin has experimental support for connecting to multiple X
displays simultaneously, creating one or more QScreen for each.
Change-Id: I248a22a4fd3481280710110272c04a30a8021e8f
Reviewed-on: http://codereview.qt.nokia.com/2103
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Laszlo Agocs [Fri, 22 Jul 2011 12:11:44 +0000 (15:11 +0300)]
Add drag'n'drop and basic cursor support.
Oswald Buddenhagen [Thu, 21 Jul 2011 09:27:33 +0000 (11:27 +0200)]
and now: the (hopefully) correct fix
in fact, that private header comes from qtdeclarative
Oswald Buddenhagen [Thu, 21 Jul 2011 09:08:32 +0000 (11:08 +0200)]
fix build
the usage of declarative makes our code use opengl-private even without
opengl itself being used.
Oswald Buddenhagen [Wed, 20 Jul 2011 09:07:55 +0000 (11:07 +0200)]
recognize QT_WAYLAND_GL_CONFIG also as a qmake variable
unlike an environment variable set only for the time being, this
actually survives automated rebuilds of makefiles
Oswald Buddenhagen [Tue, 19 Jul 2011 12:39:19 +0000 (14:39 +0200)]
clean up the QT+= stuff in the project files
so that we don't have to inject privates from the outside.
after recent cleanups, only qtcore and qtopengl privates are necessary,
and that only in the compositor api.
Laszlo Agocs [Tue, 19 Jul 2011 12:34:21 +0000 (15:34 +0300)]
Merge branch 'master' into refactor
Conflicts:
examples/qwidget-compositor-mdi/main.cpp
src/qt-compositor/hardware_integration/mesa_egl/mesaeglintegration.cpp
src/qt-compositor/hardware_integration/xcomposite_glx/xcompositeglxintegration.cpp
src/qt-compositor/qt-compositor.pri
src/qt-compositor/wayland_wrapper/wlsurface.h
Laszlo Agocs [Tue, 19 Jul 2011 11:56:22 +0000 (14:56 +0300)]
Make it compile with xcomposite_glx.
Laszlo Agocs [Tue, 19 Jul 2011 09:19:25 +0000 (12:19 +0300)]
Add missing touchEventsEnabled property to WaylandSurfaceItem.
Laszlo Agocs [Tue, 19 Jul 2011 09:06:21 +0000 (12:06 +0300)]
Fix compilation of qml example and enable touch handling.
Laszlo Agocs [Tue, 19 Jul 2011 08:45:07 +0000 (11:45 +0300)]
Add touch event support to WaylandSurfaceItem.
Samuel Rødal [Fri, 15 Jul 2011 12:07:12 +0000 (14:07 +0200)]
Rename QPixmapData to QPlatformPixmap.
Makes the API symmetric with the other Lighthouse APIs.
Change-Id: I8a399f3c968ea35d4624711b31f2ac5bb94b7893
Reviewed-on: http://codereview.qt.nokia.com/1735
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Samuel Rødal [Tue, 12 Jul 2011 10:52:22 +0000 (12:52 +0200)]
Merge remote branch 'gerrit/master' into refactor
Conflicts:
src/gui/image/qicon.cpp
src/gui/image/qicon.h
src/gui/image/qicon_p.h
src/gui/text/qfontdatabase.cpp
src/plugins/platforms/wayland/gl_integration/qwaylandglwindowsurface.cpp
src/plugins/platforms/wayland/gl_integration/wayland_egl/qwaylandglcontext.cpp
src/plugins/platforms/wayland/gl_integration/xcomposite_egl/qwaylandxcompositeeglwindow.cpp
sync.profile
Change-Id: Ie0a23a12177ff51bf562e15b2dd41f071afb19b4
Martin Zielinski [Mon, 11 Jul 2011 08:05:21 +0000 (10:05 +0200)]
Reduced usage of private headers
Integration of v8 lead to a lot of v8 headers being included from
private QtDeclarative headers. As v8 headers are not installed, this
broke the compositor build. This change reduces the usage of private
headers to the minimum.