Commit Graph

20 Commits (5bd41b850f65b8054d94b58b787704bb45ede16c)

Author SHA1 Message Date
Laszlo Agocs 421f78a65f Reorganize devicediscovery header
As pointed out in 13b939c7f4 the approach
qdevicediscovery_p.h takes is just wrong. The defines it relies on will
often be missing when the header is included from random places in qtbase.
This results in different class layouts. It was working only because the
interface of the class is very limited and the public part was matching
regardless of having the macro defined.

This is now corrected by introducing subclasses and a common, non-variated
base class. QDEVICEDISCOVERY_UDEV is removed completely.

Change-Id: I9c83b5b041440a3a6ea3a604eee4a325d4d74439
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2014-11-26 16:22:43 +01:00
Matti Paaso 974c210835 Update license headers and add new license files
- Renamed LICENSE.LGPL to LICENSE.LGPLv21
- Added LICENSE.LGPLv3
- Removed LICENSE.GPL

Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
2014-09-24 12:26:19 +02:00
Samuel Gaist 8206a263ab Add missing private headers warning
Change-Id: I7a4dd22ea3bcebf4c3ec3ad731628fd8f3c247e0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-09-04 22:58:57 +02:00
Frederik Gladhorn a1fe728fa5 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/gui/kernel/qguiapplication.cpp
	src/plugins/platforms/android/androidjnimain.cpp
	src/plugins/platforms/android/qandroidplatformintegration.cpp
	src/plugins/platforms/android/qandroidplatformintegration.h
	src/plugins/platforms/android/qandroidplatformopenglcontext.cpp
	src/plugins/platforms/cocoa/qcocoawindow.h
	src/plugins/platforms/cocoa/qcocoawindow.mm
	src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
	src/sql/doc/src/sql-driver.qdoc
	src/widgets/widgets/qtoolbararealayout.cpp

Change-Id: Ifd7e58760c3cb6bd8a7d1dd32ef83b7ec190d41e
2014-02-07 13:07:25 +01:00
Cedric Chedaleux c6d3fe8873 Checking input mask before scanning evdev devices
Adding device mask verification for static device discovery.
DRM devices are no longer scanned if mask is set to input devices only

Change-Id: Ibd2e77280c2d93c707ba7bdb84c4ae3cb0932178
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-02-05 13:46:46 +01:00
Laszlo Agocs 328f2f9c35 eglfs: Move reusable functionality to eglconvenience
The cursor implementation is generic GL(ES) code that should be shared
by all the present and future egl-based embedded platform
plugins. Follow the pattern of QEGLPlatformContext and move this class
into eglconvenience as QEGLPlatformCursor.

Similarly, the common bits from the context implementation context are
moved back to EGLPlatformContext.

eglconvenience has now base classes for integration, screen, window,
etc. too. By using these, eglfs becomes much smaller and cleaner. This
also paves the way for creating new, separate EGL-based platform
plugins for Android, embedded Linux, etc.

Also added some documentation to each of the base classes.

devicediscovery is now fixed to be usable on any platform. The
implementation in this case is naturally a dummy one. This finally
allows using it from anywhere without myriads of ugly ifdefs.

Change-Id: I02946e360c04e02de7fe234a23a08320eff4ccf5
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-01-17 14:30:48 +01:00
Robin Burchell e48aa2a402 Support discovery of key evdev devices.
Change-Id: Iac2751b51fb0af9fba181c26ad788f25eb0b02f7
Done-with: Andrew den Exter <andrew.den.exter@jollamobile.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-01-06 20:55:47 +01:00
Laszlo Agocs c16dbfbdde eglfs: Show the mouse cursor when a mouse is connected
Currently the mouse cursor is shown by default and it can be
turned off by setting QT_QPA_EGLFS_HIDECURSOR to a non-zero
value. This is now enhanced with an automatic detection step
via QDeviceDiscovery (the helper the input code use anyway).

From now on if QT_QPA_EGLFS_HIDECURSOR is not set, the cursor
is shown only if a mouse device is present in the system.

This could later be enhanced further by showing and hiding the cursor
dynamically during runtime although that will not be of much use for
embedded platforms without libudev.

Change-Id: I7e4b85ea8807200871c88fc42b11ab2adac90d32
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-11 11:58:59 +02:00
Pier Luigi Fiorini 888bfb09da Find primary GPU only
Some systems may have multiple DRM devices attached to a single seat and we are
not guaranteed to pick up the primary GPU. With this flag we can control how
DRM devices are detected and consider only the primary GPU.

This is very useful for the kms plugin or QtCompositors running on kms in order
to use the right DRM device.

Change-Id: I8b91e78f148b25aaa4e40724e39e0ed0918ca100
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-08-06 11:00:23 +02:00
Oswald Buddenhagen 2bf76918ab mark private dependencies as such
Change-Id: Ic93c8dc5aaad3973e4d4fc6bb3b70ad7c0a632b0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-05-20 15:20:26 +02:00
Paul Olav Tvete 97fcf3bc98 Introducing the Qt Android port
Based on the Necessitas project by Bogdan Vatra.
Contributors to the Qt5 project:

BogDan Vatra <bogdan@kde.org>
Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
hjk <hjk121@nokiamail.com>
Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Paul Olav Tvete <paul.tvete@digia.com>
Robin Burchell <robin+qt@viroteck.net>
Samuel Rødal <samuel.rodal@digia.com>
Yoann Lopes <yoann.lopes@digia.com>

The full history of the Qt5 port can be found in refs/old-heads/android,
SHA-1 249ca9ca2c7d876b91b31df9434dde47f9065d0d

Change-Id: Iff1a7b2dbb707c986f2639e65e39ed8f22430120
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-03-05 08:31:23 +01:00
Sergio Ahumada 48e0c4df23 Update copyright year in Digia's license headers
Change-Id: Ic804938fc352291d011800d21e549c10acac66fb
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-01-18 09:07:35 +01:00
Iikka Eklund be15856f61 Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-22 19:20:11 +02:00
Robin Burchell 0823fa2c61 android: work around android's linux/input.h being retarded.
It seemingly doesn't include many of the required defines for evdev, so do what
everyone else seems to do, and work around it.

Change-Id: I4a6ffb548c7370f675c736177b63220f034d06b8
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-07-06 00:37:39 +02:00
Robin Burchell edcca18872 Don't try build devicediscovery if evdev is not available.
Fixes build on Android.

Change-Id: I1e6af972e8c29dd4c38773985e8f201064c2164f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-26 19:45:23 +02:00
Laszlo Agocs bc3cfebc66 evdevtablet plugin
Change-Id: Ie8fbaac929180e6d4c626253c4c20d1b3a9083f5
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-04 22:29:10 +02:00
Laszlo Agocs 5cbdba588a Fix int-long mismatch in device discovery
Change-Id: I506fc206e68d57b67524cedf99896db1cff1694f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-31 17:49:54 +02:00
Holger Hans Peter Freyther 486f0e93de Only build devicediscovery on linux systems
libudev and linux/input.h are Linux specific. Instead of add a !*bsd*
to the pro line I have decided to only check for linux-*. This is fixing
the compilation on FreeBSD.

Change-Id: If59481421e811eca205407031db593e00b6e8534
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-29 19:54:25 +02:00
Johannes Zellner 9a17206b5c devicediscovery: add more sophisticated discovery
Detect devices based on bit testing through evdev ioctl api. As this is
for the udev replacement, the bit testing is done similar to what udev
does. The current keyboard detection is based on testing if the KEY_Q is
available. This might be adjusted in the future.

Change-Id: I3f4176681a351e33d90a1425f1afedc8ce3640b8
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-26 02:47:01 +02:00
Johannes Zellner ce5c1db2d3 udev: UDevHelper becomes DeviceDiscovery
Rename QUDeviceHelper to QDeviceDiscovery and add a static device
discovery fallback in case we dont have udev. The fallback so far only
scans /dev/input/event* and /dev/dri/card* at startup and detects device
nodes only by device path.

Change-Id: I7a423910b30ae16a10d8f1f47b86c6b4d2c2ec36
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
2012-05-24 07:15:02 +02:00