| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
We do not currently emit screenchanged events when a window is moved
to another screen on X11.
This patch emits the event when a window no longer intersects with
its current screen, and switches to the first intersecting screen.
Change-Id: Ie40d6eb67b85bd961eeb348bc43e4f308ee22dba
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
|
|
|
|
|
|
|
|
|
| |
Removed useless overrides and inline simple functions.
Change-Id: I69df0ec8446fe2c8bb904c7d4d9cc2e1d269533b
Reviewed-by: Teo Mrnjavac <teo@kde.org>
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
| |
also add a boolean flag indicating if xsettings is initialized and can
be used
Change-Id: I9dae83b8fef224171744d2b940767cbf54ce4f55
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
|
|
|
|
|
|
|
|
|
| |
The event must be freed in all cases, also when a motion or configure
notify is skipped.
Change-Id: Ie55e62d0c3ab25bd9b20cc85098ea337d0b1ac5d
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|
|
|
|
|
|
|
| |
dlopen, etc. are defined in libc on FreeBSD.
Change-Id: Iad47113ec77029f8e300e4f08f454d70b3070b5a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
|
|
|
|
|
|
|
| |
the diff -w for this commit is empty.
Started-by: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: I77bb84e71c63ce75e0709e5b94bee18e3ce6ab9e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\
| |
| |
| | |
Change-Id: I99af0bef7f1c931533a324ebcfb27c40ee871a5e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The native child windows need to inherit the parent's visual in order
to have a translucent background as well.
Surface with type QSurface::OpenGLSurface should not be forced to use
the parent window's visual - the parent visual for instance, might not
even be GL capable.
Changing WA_TranslucentBackground during runtime is not supported, for
two reasons:
1) Other platform plugins seem not to support it
2) It would require recreating X windows.
Task-number: QTBUG-29625
Change-Id: Ic1474dd2de99069027481c7db6bf865f9b8d616d
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With this patch all wheel events will be generated by XInput2 where
available. This enables higher precision and smoother scrolling
especially from input devices such as touchpads on laptops.
[ChangeLog][Platform Specific Changes][X11 / XCB]Support XInput2 smooth scrolling events
Change-Id: I3b069ed92ad5c53e08af64baaece32de82e9b5c4
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|\|
| |
| |
| | |
Change-Id: I0b021b369725b73f09faa14b9da9e2431dc24fad
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In qt_xcb_XPixmapFromBitmap(), a new pixmap is generated for the caller.
This pixmap has to be freed after use. However,
createNonStandardCursor() didn't do this and instead leaked the pixmap.
Change-Id: I6fee180ec6508db9e82a5bb028957e7d9f7a4632
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using a touch screen on a Linux machine, we receive both touch-events
and emulated mouse events from XInput, on top of that we synthesize mouse-
events ourselves for the touch events.
This patch grabs the touch device for touch events whenever it processes
a touch-begin thereby avoiding XInput from synthesizing mouse events.
Task-number: QTBUG-35157
Change-Id: I5849d5841be236d6719cd080af2e9e39eb9cdd84
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Calling xcb_flush() right before QXcbConnection::sync() is pointless.
The flush sends all requests that were already queued to the server and
the call to sync() then just sends another request, flushes it and waits
for its reply. Having just sync() implicitly flush for us means less
overhead and has the same effect.
Another useless flush is in QXcbShmImage::put(). The only caller is
QXcbBackingStore::flush() and this calls put() in a loop. If we just
call xcb_flush() from flush(), then xcb can send more requests in a
single write() call again.
Finally, calling Q_XCB_NOOP() twice in a row without doing any
interaction with xcb in between doesn't help much, so remove one of the
two calls from QXcbShmImage::put()
Change-Id: Ia3d6945b8d961e2844fc3e31fdf8189c47b534d1
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|\|
| |
| |
| | |
Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fix a multiple define when Qt is configured to use both EGL and xcb-Xlib.
Change-Id: I6fdb282f575842711b3b5d377bbdf3bc9909bf0c
Reviewed-by: Christoph Cullmann <cullmann@kde.org>
Reviewed-by: David Faure <david.faure@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
move the dpy to the place where it is used inside the egl ifdef guard
fixes compilation on old distros not having egl
Change-Id: I7eebe5305f3a584c0c5da2ea7b9099fdd994249d
Reviewed-by: David Faure <david.faure@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
export QT_XCB_DEBUG_XINPUT_DEVICES=anything to show detected
input devices at startup
export QT_XCB_DEBUG_XINPUT=anything to log mouse, touch and tablet events
Change-Id: Id14844b68ad376740f82a36aab2c59c84d2017ab
Task-number: QTBUG-35583
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
logicalDpi() already has the logic to check m_forcedDpi, so let's reuse
it. I hope it's not a problem that we send a signal that it changed when
nothing changed.
[ChangeLog][Platform Specific Changes][X11 / XCB]Fixed a bug that caused
Qt applications to think the screen DPI had changed when it had not,
after connecting or disconnecting monitors.
Task-number: QTBUG-32683
Change-Id: I45dd27de5109e65e7599915f11cfdb633a65a67c
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|\ \
| | |
| | |
| | | |
refs/staging/dev
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/gui/kernel/qplatformtheme.h
tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp
tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp
Change-Id: Iecd3343d6a050b8764f78d809c4a1532aeba69e5
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit a2d3b7c99165cb5c4be6f0dd83a967e1119cf732. That
commit broke -opengl es2 builds on Linux desktops (when GLX is
available).
/usr/include/GL/gl.h:162:17: error: conflicting declaration ‘typedef double GLdouble’
qopengl.h:97:17: error: ‘GLdouble’ has a previous declaration as ‘typedef GLfloat GLdouble’
Change-Id: Id5f48c05803be1a8c03eeffca139b80e9a85a0eb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
foreach already knows how to iterate over the values without the need to create an intermediate qlist
Change-Id: Icf6bacc3472e09fde6fe3735086cea289ca0fa96
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/sql/drivers/sqlite/qsql_sqlite.cpp
Change-Id: Ia7cffd2c99ae3d5eea6b5740683c06e921336dcd
|
| |
| |
| |
| |
| |
| |
| |
| | |
Move the EGL initialization code outside of the XLib ifdefs, so it
can be enabled for non-XLib builds as well
Change-Id: Ie025551e4e99bb0b365f025356bd9725f4283b82
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Iff44698dcc941ca244b476f0e6c6a993f2ad75f3
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
|\|
| |
| |
| | |
Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We require glx version 1.3 which is where fbconfig is first defined.
Also make use of the configure test and report the glx status.
GLX support should always take precedence when compiling the
xcb backend
Change-Id: Ie46834210bf5cd2ac4006ff08379e0d3434ffa2b
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds a new configuration parameter, xcb-xlib, which allows
overriding the configure test for that existing configuration option.
The use of xcb-xlib in the xcb platform plugin becomes the preferred path
for non-OpenGL ES 2 builds, while the EGL codepath is used otherwise.
This has the advantage that EGL can be used with Desktop OpenGL if Qt is
configured with -no-xcb-xlib.
Change-Id: I5018e31fe0399b94f020c671eff9414d00431c44
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ifc8dc8d84fc60b70f8a49282dfe32cd248bef9ba
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
from QXcbNativeInterface. The QPlatformScreen is available from
QScreen::handle()
Change-Id: If81daf34c07f4a49c85c43d3755d1a9167626d6d
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For the conflicts in msvc_nmake.cpp the ifdefs are extended since we
need to support windows phone in the target branch while it is not there
in the current stable branch (as of Qt 5.2).
Conflicts:
configure
qmake/generators/win32/msvc_nmake.cpp
src/3rdparty/angle/src/libEGL/Surface.cpp
src/angle/src/common/common.pri
src/corelib/global/qglobal.h
src/corelib/io/qstandardpaths.cpp
src/plugins/platforms/qnx/qqnxintegration.cpp
src/plugins/platforms/qnx/qqnxscreeneventhandler.h
src/plugins/platforms/xcb/qglxintegration.h
src/widgets/kernel/win.pri
tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp
tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp
tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp
tools/configure/configureapp.cpp
Change-Id: I00b579eefebaf61d26ab9b00046d2b5bd5958812
|
| |\
| | |
| | |
| | | |
Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTCREATORBUG-10875
Change-Id: I25f3abc6ef15bba78fa9ec27de2c1e5e0bcc7fae
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previous version of the struct:
typedef struct {
uint8_t response_type; /**< Type of the response */
uint8_t pad0; /**< Padding */
uint16_t sequence; /**< Sequence number */
uint32_t length;
uint16_t event_type;
uint16_t pad1;
uint32_t pad[5]; /**< Padding */
uint32_t full_sequence; /**< full sequence */
} xcb_ge_event_t;
New version of it:
typedef struct xcb_ge_event_t {
uint8_t response_type; /**< */
uint8_t extension; /**< */
uint16_t sequence; /**< */
uint32_t length; /**< */
uint16_t event_type; /**< */
uint8_t pad0[22]; /**< */
uint32_t full_sequence; /**< */
} xcb_ge_event_t;
Changes are:
- "pad0" became "extension"
- "pad1" and "pad" became "pad0"
More details in https://bugs.freedesktop.org/show_bug.cgi?id=71502
Task-number: QTBUG-34748
Change-Id: Ibd801c11510f75fa82d5c14346b95236142487ac
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| |\|
| | |
| | |
| | | |
refs/staging/stable
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-34427
Change-Id: Ief4fe2fe2ab099d4ec61b6bfb2272724dfb2a800
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-34782
Change-Id: I411c89238b3002a118b1750af0157ccff5c78712
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The code was using the "long" type when a 32 bit type was actually
needed. This can cause bugs in those systems where "long" is 64 bits
wide, such as Linux x86-64 (which is LP64).
Task-number: QTBUG-34861
Change-Id: Iab289b2af3847dd62d8b4ecea51896936ca4c7a2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-34492
Change-Id: I1848cde3fb9517679fd54a7170ed5bee40880edc
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I4204cab76b2621318dda909d24ceb2abab6e0ba3
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It happens that we don't get a focus inn event for top level windows
when focus goes from a window mapped. But we do get a _NET_ACTIVE_WINDOW
event.
Task-number: QTBUG-34426
Change-Id: Id1d9eb708a968e0e8934e56dec19abe2dd203bc7
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Earliest occurrence is to my knowledge in 12.04.
It is still unclear how to act on those messages
Change-Id: I7da48281c6bec973448a1d4cd800d445a80695a2
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This will allow applications to make sure Qt has the same state as the
window system at any given point. The use of this function is
discouraged but it is very useful for auto tests.
Change-Id: I691bff365fc391e9d7213f2607008983505bb774
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
|
| |
| |
| |
| |
| | |
Change-Id: I84f89450e3fce1cbbafd19dbf4509b1911e06b19
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The xcb QPA plugin uses a separate thread for getting events from the
X11 server in a race-free manner. This thread has to be stopped when
shutting down. This is done by causing the X11 server to send a special
event that causes the thread to exit when it sees it. (Also, the thread
exits if the xcb connection goes into an error state, but that does not
matter here)
So this event listener window is only needed when Qt is sending events
to itself. This means that it does not have to be kept around and
instead can be created only when needed.
Since this window does not stay around for long, it does not need a
name. However, it does need the list of screens to find the correct root
window, so destroy screens later.
Change-Id: Ib4104cbc3f372fa5d1391bcf5a633a158409862f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implement swap interval support for EGL, GLX and WGL.
The environment variable QT_QPA_EGLFS_SWAPINTERVAL is renamed to
QT_QPA_EGL_SWAPINTERVAL and can be used to override the applications'
setting of the swap interval.
Task-number: QTBUG-31939
Change-Id: I644325d5d3306b7604bffd7efccda3c00ed37d36
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
|\|
| |
| |
| | |
Change-Id: Ie56539b2e0be611a363b5f15ae5412a78d6945a2
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
handleStatus() was called with drag==0 when releasing the mouse over the
desktop.
Task-number: QTBUG-33920
Change-Id: I553647d1e734934b7c6caf4c984683cff88f9162
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
src/plugins/platforms/xcb/qxcbsessionmanager.cpp:205:80: error: use of undeclared identifier 'ERANGE'
while (getpwuid_r(geteuid(), &entry, buf.data(), buf.size(), &entryPtr) == ERANGE) {
src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp:173:28: error: use of undeclared identifier 'LC_CTYPE'
char *name = setlocale(LC_CTYPE, (char *)0);
Change-Id: Ide6f3072e9158eef412973ce0a72babb41b695f0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
51c28cad67077500f63dbe8c0060ed19cf340c0d resulted in setting the title
of the wrong window.
Task-number: QTBUG-34048
Change-Id: Ia22d563e0ba9b0e074ef79ae5169c1627369c70d
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|