| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is still one fullscreen window per screen at a time, but
there is no reason we should fail in the backend when the screen
already has the gbm_surface created. If there is really another
active GL window for this screen, then the base eglfs window
implementation will panic anyway.
This should help certain cases, where windows belonging to screen B get
created for screen A and then moved (recreated) for screen B.
Task-number: QTBUG-62262
Change-Id: Ia029f028d32a35e8e023f3132097ba9a919b8fe8
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QTBUG-62262
Change-Id: If21cbfcda2decf7bd70cf56695ee1d676cbaa55f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-62262
Change-Id: Id5225737f619d3f0d980e8b67de92f30dc62e8a6
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/examples.pro
qmake/library/qmakebuiltins.cpp
src/corelib/global/qglobal.cpp
Re-apply b525ec2 to qrandom.cpp(code movement in 030782e)
src/corelib/global/qnamespace.qdoc
src/corelib/global/qrandom.cpp
src/gui/kernel/qwindow.cpp
Re-apply a3d59c7 to QWindowPrivate::setVisible() (code movement in d7a9e08)
src/network/ssl/qsslkey_openssl.cpp
src/plugins/platforms/android/androidjniinput.cpp
src/plugins/platforms/xcb/qxcbconnection.cpp
src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
src/widgets/widgets/qmenu.cpp
tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp
Change-Id: If7ab427804408877a93cbe02079fca58e568bfd3
|
| |
| |
| |
| |
| |
| |
| |
| | |
Propage event to all sibling screens resulting in enter and leave
events being properly sent.
Change-Id: Ia89d53105f6303fae3f304ce0920b5a4a24f86ae
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid polluting the output by default. Unfortunately there are various
systems (modern Fedora with XWayland, VMWare) where parsing will fail
for some not yet known reason. Showing warnings on each and every Qt
application startup is not desirable, especially since not having the
EDID data available is far from being critical.
Change-Id: Ibaca7db4d897e705819f7c359f8de41b9be862a6
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/plugins/platforms/xcb/qxcbconnection.h
src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp
src/plugins/styles/mac/qmacstyle_mac.mm
src/widgets/widgets/qdockarealayout.cpp
src/widgets/widgets/qmainwindow.cpp
src/widgets/widgets/qmainwindowlayout.cpp
src/widgets/widgets/qmainwindowlayout_p.h
tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
tests/auto/other/macnativeevents/BLACKLIST
tests/auto/widgets/widgets/qmenu/BLACKLIST
Change-Id: Ic8e724b80a65e7b1af25511b0e674d209265e567
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Explicitly declare which DRM event context version we want to use,
rather than just the latest one libdrm supports. New versions may change
semantics, or extend the structure, in ways we're unaware of.
Stick with version 2, which is the version that introduced
page_flip_handler.
Change-Id: I1d2066d5ab485ea571f016a8660829f435821c82
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Call eglCreatePlatformWindowSurface when it's available.
Change-Id: I1a3af6e7dac2e40335c9f9913dd67f9b153a4dff
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changes internal data-size and pointer calculations
to qssize_t.
Adds new sizeInBytes() accessor to read byte size, and
marks the old one deprecated.
Task-number: QTBUG-50912
Change-Id: Idf0c2010542b0ec1c9abef8afd02d6db07f43e6d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/widgets/widgets/qmenu.cpp
Change-Id: I6d3baf56eb24501cddb129a3cb6b958ccc25a308
|
| |
| |
| |
| |
| |
| | |
Change-Id: I5bdfe9bb50aafe50542c665d91973e4c0c12e602
Reviewed-by: Nikola Velinov <nvelinov@ghs.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Retrieve and parse EDID blob.
Return screen product information from EDID.
[ChangeLog][QPA][eglfs][kms] Add screen product information from EDID.
Change-Id: I766999afd9298e82f6147fdeba5d14757bfb4b03
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
EGLNativeDisplayType is void* on NVIDIA systems but the backend may get compiled
on others where it is something else. The function definition does not match
the proto on these so it is time to correct this.
Change-Id: I569d9f8f3fcba7b2a4672d83606dfdc7bb18a1f0
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-60330
Change-Id: Ibbd74ae00d17fdc6ee9c86e758788dcca15ea4ff
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/corelib/tools/qbytearray.h
src/corelib/tools/qdatetime.h
src/corelib/tools/qstring.h
src/corelib/tools/qversionnumber.h
src/plugins/platforms/android/qandroidplatformintegration.cpp
tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp
Change-Id: Iefd92a435e687a76cd593099e40d9a9620a1454d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
drmEventContext has grown by one pointer, so the build fails with an
error about a member without initialization.
qeglfskmsgbmdevice.cpp:147:5: error: missing initializer for member ‘_drmEventContext::page_flip_handler2’ [-Werror=missing-field-initializers]
Change-Id: I0e1a09998253489388abfffd14b6014b1ddc90e1
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I80fb7e403073fd264e0878d7c638812027282ad8
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2322ffcb28c646b289ee718b9c3946bc0a44bd3c
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
mkspecs/linux-icc/qmake.conf
mkspecs/macx-icc/qmake.conf
mkspecs/win32-icc/qmake.conf
src/gui/painting/qgrayraster.c
Change-Id: Ib08c45ea3215be05f986ecb3e1f4b37d209aa775
|
| |
| |
| |
| |
| | |
Change-Id: I1a92da5b2ed0b8064efa37c43d7894c212073b60
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/corelib/io/qfilesystemengine_win.cpp
src/gui/text/qdistancefield.cpp
src/plugins/platforms/xcb/qxcbconnection.h
Change-Id: I1be4a6f440ccb7599991159e3cb9de60990e4b1e
|
| |
| |
| |
| |
| |
| |
| | |
Fixes linux-clang-libc++ builds.
Change-Id: Id75c35d858123193e7d29b0bbb113d2c109a7560
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/widgets/widgets/qpushbutton.cpp
Change-Id: I615de00e6e64540c50f658d4d8ab3e002d701a81
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6fb61944ef88e328a94ea6b7ab42db271828a602
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I7d84cfed0b2a122d334b8a920e6e4f18472d2f11
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Compilation failed with clang 3.9.1:
qeglfskmsegldevicescreen.cpp:104:27: error: use of undeclared identifier 'errno'
qErrnoWarning(errno, "drmModeSetCrtc failed");
Change-Id: I7cf08494359092b9cdac10bb013ac56c3ddf5597
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|/
|
|
|
|
|
|
|
| |
Add support for reporting available modes.
[ChangeLog][QPA][eglfs][kms] List screen modes, current and preferred mode.
Change-Id: If64c1512271fadbafbb8c9fd715e64663d598599
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A default-constructed static QBasicAtomicInt at function scope
will be dynamically initialized. It will still be zero-initialized,
but at least GCC adds guard variables for such objects.
When using aggregate initialization, the guard disappears.
Amends 04d6495bf773a6bb0d4fa6980df22d3b81a605b0.
Change-Id: Id9335cffdd43094cafb231fdde2523d013abe1d6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A variable of static storage duration that is not zero-initialized
takes up space in the DATA segment of the executable. By making the
counters start at zero and adding the initial value afterwards, we
move them over to the BSS segment, which does not take up space in
the executable.
Wrap atomics used across function boundaries into small functions,
to avoid code duplication and to increase readability.
Change-Id: Ida6ed316ecb8fe20da62a9577161349e14de5aed
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
| |
Use the default dpi of 100 to calculate physical size of the display,
if KMS output returns 0 as the size and the size was not set via
environment variable.
Change-Id: If310592b2694a46d2fab464b21ec1765a5033933
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enables optimizing with -Og if GCC has the option available, this
should produce faster debug binaries without compromising debugability.
Is a privateConfig to limit it to the default Qt build.
Includes two fixes for false positives of maybe_uninitialized triggered
by -Og on gcc 4.9.
Change-Id: I466d7a4070295714189024369312e6cbd36cfacf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not having a way to say that a given output should be registered as the
primary screen (meaning it comes first in the QGuiApplication::screens() list,
emits primaryScreenChanged() signal etc.) can be a problem for some systems.
The order of the outputs array in the JSON configuration file is not relevant
in this respect since screens are registered either in the original DRM connector
order, or, when the virtual desktop layout is specified via virtualIndex, in the
order specified by virtualIndex. The primary screen status is independent from this.
Therefore, add a new, optional boolean property: primary. For example, the following
forces the QScreen corresponding to the VGA output to be the primary screen on the
Renesas R-Car H2 board, even though by default it is the HDMI one that happens to
be reported first by the system.
{
"device": "/dev/dri/card0",
"outputs": [
{ "name": "HDMI1", "mode": "1280x720" },
{ "name": "VGA1", "mode": "1280x720", "primary": true },
{ "name": "LVDS1", "mode": "off" }
]
}
In addition, improve the quality of the logging output.
[ChangeLog][Platform Specific Changes] Added support for specifying the primary screen
in the JSON config file in QT_QPA_EGLFS_KMS_CONFIG when running on DRM/KMS with eglfs.
Task-number: QTBUG-57980
Change-Id: Iba490800dee3b7162c68c4d40b0822f3f6d81b69
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
| |
Change-Id: I5ea23eeac930dcc628047e3322061d543bddb643
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Nikola Velinov <nvelinov@ghs.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
configure.pri
examples/widgets/painting/fontsampler/mainwindow.cpp
examples/widgets/painting/fontsampler/mainwindow.h
mkspecs/features/moc.prf
src/corelib/global/qglobal.h
src/gui/text/qtextdocument.cpp
Change-Id: Ica65512e00871695190a14ccea5c275b0165f787
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use qmake operator *= to prevent adding it multiple times resulting
in warnings on Linux/Desktop:
Makefile:114: warning: overriding recipe for target 'sub-eglfs_kms_support-qmake_all'
Makefile:64: warning: ignoring old recipe for target 'sub-eglfs_kms_support-qmake_all'
Makefile:118: warning: overriding recipe for target 'sub-eglfs_kms_support'
...
Change-Id: I18a926c9faeb8f9eafea5223d32c526c06c43724
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
qmake/Makefile.unix.macos
qmake/Makefile.unix.win32
qmake/generators/win32/msvc_vcproj.cpp
src/3rdparty/pcre/qt_attribution.json
src/corelib/io/qsettings.cpp
src/corelib/kernel/qdeadlinetimer.cpp
src/platformsupport/kmsconvenience/qkmsdevice.cpp
src/platformsupport/kmsconvenience/qkmsdevice_p.h
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h
tests/manual/qstorageinfo/printvolumes.cpp
tools/configure/configureapp.cpp
Change-Id: Ibaabcc8e965c44926f9fb018466e8b132b8df49e
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6f026b81fdc403d99d37dfa22ea6a27a95ead347
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I257cfb29b919de5d4876d39e0512815c6ed24a88
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a QT_QPA_EGLFS_KMS_PLANE_INDEX environment variable that applies
both to the GBM and EGLDevice backends. When set to a value between 0 and
the number of planes on the connector - 1, the chosen overlay plane will
be used for output, meaning there will be a drmModeSetPlane to configure,
and, in case of EGLDevice, the plane's corresponding EGL layer will get
chosen instead of the CRTC's.
Task-number: QTBUG-57386
Change-Id: I12c89472ea5730987052f39211fadc597d1302ef
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a QT_QPA_EGLFS_KMS_CONNECTOR_INDEX environment variable that applies
both to the GBM and EGLDevice backends. Instead of specifying all
uninteresting outputs as "off" in the config file in QT_QPA_EGLFS_KMS_CONFIG,
this variable provides a shortcut to force one single connector and ignore
all others in embedded systems with a fixed connector configuration. The index
must be between 0 and DRM connector count - 1.
Task-number: QTBUG-57386
Change-Id: I3f9562f48bf6b2ffaf9a0cc232e09a7e0c15645b
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make it possible to identify from the logs that QT_QPA_EGLFS_LAYER_INDEX
was set, in order to help troubleshooting.
Change-Id: Ic22825e5df9f0eeb31f817f398b9f6c000c3a00f
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Setting QT_QPA_EGLFS_STREAM_FIFO_LENGTH to a >= 1 value changes from
mailbox to FIFO mode, with the specified length.
[ChangeLog][Platform Specific Changes][Linux] Added an option to switch
from mailbox to FIFO mode in eglfs' EGLStream backend. This is done by
setting the environment variable QT_QPA_EGLFS_STREAM_FIFO_LENGTH to a
>= 1 value, the desired length of the FIFO queue.
Change-Id: Ib98e2ff805f8c00ca2e224d1db5b9c1b2c9a04f0
Done-with: Pasi Petajajarvi <pasi.petajajarvi@theqtcompany.com>
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/network/socket/qnativesocketengine_winrt.cpp
tools/configure/configureapp.cpp
tools/configure/environment.cpp
Change-Id: Ieae6f2ee004a87f041751852b687484f91ee4480
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This also reverts commit 0d2f0164f45cb626c40a7c95026ba00fa56ac249.
Conflicts:
header.BSD-NEW
qmake/Makefile.win32
src/openglextensions/qopenglextensions.cpp
src/openglextensions/qopenglextensions.h
src/winmain/qtmain_win.cpp
src/winmain/qtmain_winrt.cpp
tools/configure/configureapp.cpp
util/glgen/qopenglextensions.cpp.header
util/glgen/qopenglextensions.h.header
Change-Id: If26c6f4111b342378dd88bbdc657e322d2ab6ad8
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Avoid duplicated struct fbdev_window definition (introduced by commit
58bed4cda98e8e25db8adc61c7db73b6853077dc) by renaming the local
shadow definition to struct shadow_fbdev_window.
Task-number: QTBUG-57156
Change-Id: I72b03f09fc57ddcd0284d6d3554a5658e02b80fc
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Julien Corjon <corjon.j@ecagroup.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We can use 'override' directly since Qt 5.7.
Also remove redundant 'virtual'.
Change-Id: I4c1d5d8a69bf51a7f31077f7cdc74ba06da0bc11
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
To support multiple displays in the emulator, it is necessary that an
additional EGLFS device integration be added to query information about
the available screens, and to help associate a window surface with a
screen.
Change-Id: I852c27bd66f5f32a92c4ff876838ac2f6fbde86a
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The generic DRM code, not involving any GBM or EGLDevice stuff, can
now be reused in components outside eglfs, for example linuxfb in
order to get support for DRM dumb buffers.
Task-number: QTBUG-56306
Change-Id: If7dffdb2415489dbc6470782fa76efcaeccf01c7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
config.tests/win/msvc_version.cpp
configure.pri
mkspecs/macx-ios-clang/features/default_post.prf
mkspecs/macx-ios-clang/features/resolve_config.prf
mkspecs/features/uikit/default_post.prf
mkspecs/features/uikit/resolve_config.prf
src/corelib/io/qsettings_mac.cpp
src/corelib/json/qjsondocument.cpp
src/plugins/platforms/cocoa/qcocoawindow.h
src/plugins/platforms/cocoa/qcocoawindow.mm
src/plugins/platforms/cocoa/qnswindowdelegate.h
src/plugins/platforms/cocoa/qnswindowdelegate.mm
src/plugins/platforms/ios/ios.pro
src/plugins/platforms/ios/kernel.pro
src/plugins/platforms/ios/qiosintegration.h
src/plugins/platforms/minimalegl/qminimaleglintegration.cpp
tests/auto/gui/painting/qpainter/tst_qpainter.cpp
tools/configure/environment.cpp
Change-Id: I654845e54e40f5951fb78aab349ca667e9f27843
|