summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Let QPlatformTheme decide which engine QIcon::fromTheme usesKevin Ottens2013-02-192-0/+19
| | | | | | | | | | | | | By default we still use QIconLoaderEngine but now platform theme plugins have the opportunity to override that. It is in particular planned to be used in a WIP platform theme plugin for KDE sessions. Change-Id: I07a82dc91daea44709b3a790f3f6e2a7a090d108 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2013-02-181-0/+2
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-181-0/+2
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/widgets/styles/qmacstyle_mac.mm Change-Id: If8326db9e7da3cbf45dbf7475fdff9915c7723b1
| | * Fixed QT_NO_ACCESSIBILITY build.Bjoern Breitmeyer2013-02-131-0/+2
| | | | | | | | | | | | | | | Change-Id: I14229753fc2e3b54da8a285ae9d27201b73e24be Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | Added QDebug support for QWindowSystemInterface::TouchPointShawn Rutledge2013-02-182-0/+11
|/ / | | | | | | | | Change-Id: Icfc606a49a7fd24fcd35b9c818642a03e044ed6c Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Added QOffscreenSurface class.Yoann Lopes2013-02-1810-1/+644
| | | | | | | | | | | | | | | | | | | | | | | | Inherits QSurface and allows to use OpenGL from an arbitrary thread. Platform plugins can implement QPlatformOffscreenSurface, otherwise an invisible QWindow is used by QOffscreenSurface. This patch includes an implementation of QOffscreenSurface for XCB and EglFS platform plugins using pbuffers. Change-Id: I57b4fc1db417331f34826dcfa754b7698782fde4 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-02-1410-14/+38
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/concurrent/doc/qtconcurrent.qdocconf src/corelib/doc/qtcore.qdocconf src/corelib/global/qglobal.h src/dbus/doc/qtdbus.qdocconf src/dbus/qdbusmessage.h src/gui/doc/qtgui.qdocconf src/gui/image/qimagereader.cpp src/network/doc/qtnetwork.qdocconf src/opengl/doc/qtopengl.qdocconf src/opengl/qgl.h src/plugins/platforms/windows/qwindowswindow.cpp src/printsupport/doc/qtprintsupport.qdocconf src/sql/doc/qtsql.qdocconf src/testlib/doc/qttestlib.qdocconf src/tools/qdoc/doc/config/qt-cpp-ignore.qdocconf src/widgets/doc/qtwidgets.qdocconf src/xml/doc/qtxml.qdocconf Change-Id: Ie9a1fa2cc44bec22a0b942e817a1095ca3414629
| * Fixed QSurfaceFormat documentation about DebugContext requiring GL3+.Samuel Rødal2013-02-121-1/+0
| | | | | | | | | | | | | | GL_ARB_debug_output only requires OpenGL 1.1 and above. Change-Id: Ib79d370fac36fa737817ea678f0dee25283dfa31 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * Mac: Remove broken platformPluginPath code.Morten Johan Sørvig2013-02-121-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The missing "/" in front of "../Plugins" prevents this from working - platformPluginPath is never set. Deployed platform plugin loading works in spite of this via qt.conf which adds the plugin path to QCoreApplication::libraryPaths(). Change-Id: I7ae4d13c65a380ddad72bffd29b776c39ea91c8a Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| * Fix QWindow::setFramePosition() to keep the size.Friedemann Kleint2013-02-111-1/+1
| | | | | | | | | | Change-Id: I14551e0d0573c2e8d86d76eadab4df9f3c8ed5e4 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * Factorize code for formatting window titles into QPlatformWindow.David Faure2013-02-062-0/+26
| | | | | | | | | | Change-Id: I0dcccd08916fc2ea1b795681e9b98a9550ef51b6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * Fix minor typos in docs, printed messages & commentsSze Howe Koh2013-01-281-2/+2
| | | | | | | | | | | | | | Missing apostrophes Change-Id: I3ef5e9d494fb7a37f8e6075f24cd3a274e572c23 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| * Doc, Qt GUI: Fix "no \inmodule command" warningsSze Howe Koh2013-01-284-0/+8
| | | | | | | | | | | | | | | | Explicitly add "\inmodule QtGui" to Qt GUI classes Change-Id: Id641c1dc98770fbd994cecc375ca46c01f083236 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| * Doc: Fix very minor typoSze Howe Koh2013-01-281-1/+1
| | | | | | | | | | Change-Id: I6af8e81296ef0dc3fcdfd67fae6899bc7c93b206 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Added QWindow::Visibility convenience API to QWindow.Samuel Rødal2013-02-123-0/+139
| | | | | | | | | | | | | | | | | | | | | | This finally makes it possible to make windows fullscreen etc from QML by doing "visibility: Window.FullScreen". I don't see any reason from not having the API at the QWindow-level instead of at the QQuickWindow-level since this way it can benefit other use cases too. Change-Id: If27344306eb563bc2ccd83296a46b1f2862e2db1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Add QWindowSystemInterface::handleFileOpen(const QUrl&)José Dapena Paz2013-02-084-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | In some cases, the call to handleFileOpen may receive a non local URL. With previous API, there was no way to pass it to other layers. With this change, any platform plugin creating this event can directly pass a URL. Change-Id: Ibd7299ad6c09527e1db979840bd67726882efb9b Reviewed-by: Jose Dapena Paz <jdapena@igalia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | Added version() and setVersion() convenience API to QSurfaceFormat.Samuel Rødal2013-02-082-0/+28
| | | | | | | | | | | | | | | | | | | | This lets you write code like format.version() >= qMakePair(3, 2), and format.setVersion(4, 2) instead of format.setMajorVersion(4); format.setMinorVersion(2); Change-Id: Ib052091cc12865ea0d5db52e468ed6cd28f14840 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Add enablers for Android port in QPlatformMenuEskil Abrahamsen Blomfeldt2013-02-051-0/+2
| | | | | | | | | | | | | | We need a couple of functions here for the Android support. Change-Id: I50e27277d7e838e277d616dbd3af9be817fb7197 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* | Remove unused variables and functions from the source codeThiago Macieira2013-02-021-105/+0
| | | | | | | | | | | | Change-Id: I5f37414ee4846b4fe774361f49367bc0d5874039 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2013-01-294-9/+9
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-284-9/+9
| |\| | | | | | | | | | Change-Id: I12b4d8b99bdccae53b1a978cd6eb8f4ac6fb3c76
| | * Doc: Fix module name formatSze Howe Koh2013-01-253-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow the conventions at http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation QtCore -> Qt Core QtDBus -> Qt D-Bus QtDesigner -> Qt Designer QtGui -> Qt GUI QtImageFormats -> Qt Image Formats QtNetwork -> Qt Network QtPrintSupport -> Qt Print Support QtScript -> Qt Script QtSql -> Qt SQL QtSvg -> Qt SVG QtTest -> Qt Test QtWebKit -> Qt WebKit QtWidgets -> Qt Widgets QtXml -> Qt XML QtConcurrent -> Qt Concurrent (partial) QtQuick -> Qt Quick (partial) Also, distinguish between "module" and "library" Change-Id: Icb8aa695ae60b0e45920b0c8fce4dc763a12b0cd Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| | * Minor QWindow documentation improvement for the accessor/mutatorsLaszlo Papp2013-01-251-6/+6
| | | | | | | | | | | | | | | Change-Id: I003e5dbf1e87fd98cb24c2efdfd39560326f2731 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | | Offscreen testing platform pluginSamuel Rødal2013-01-292-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | Useful for running auto-tests without popping up a bunch of windows in the windowing system. Thus they can be run in the background and even in parallel without focus issues. Change-Id: I8b14c6de258b41225480a0af5a2a9553663bc2b7 Reviewed-by: Jason McDonald <macadder1@gmail.com>
* | | Remove QT_{BEGIN,END}_HEADER macro usageSergio Ahumada2013-01-2953-208/+1
|/ / | | | | | | | | | | | | | | | | | | | | The macro was made empty in ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb and is no longer necessary or used. Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html Change-Id: Id2bb2e2cabde059305d4af5f12593344ba30f001 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: hjk <hjk121@nokiamail.com>
* | Establish an opacity property for the QWindowLaszlo Papp2013-01-262-3/+19
| | | | | | | | | | Change-Id: I1e399a41bc3aa890498d579f48d03cc6dee484bf Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | showIsFullscreen: only respect this hint for windows and dialogsRichard Moe Gustavsen2013-01-251-3/+5
| | | | | | | | | | | | | | | | | | | | If the window or widget is a popup, ignore the hint. The intention of the flag should be to show main windows etc in fullscreen, and not all kinds of popups and tooltips. The user can always call showFullscreen explicit when necessary. Change-Id: Ie150b6c6d7ca6c9344a9097544a7edbc4bd10df2 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | Fix focus handling of native child widgets in xcb.Gunnar Sletta2013-01-241-0/+2
| | | | | | | | | | Change-Id: If4d596195624011142bff6853849a23064e478df Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-22109-118/+116
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qsavefile_p.h src/corelib/tools/qregularexpression.cpp src/gui/util/qvalidator.cpp src/gui/util/qvalidator.h Change-Id: I58fdf0358bd86e2fad5d9ad0556f3d3f1f535825
| * QGuiApplication::font(): assert that a GUI app instance existsJ-P Nurmi2013-01-211-0/+1
| | | | | | | | | | | | Task-number: QTBUG-28306 Change-Id: Ia5b01265e7f88fdd8c2738ef03b14e83829625b0 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
| * Update copyright year in Digia's license headersSergio Ahumada2013-01-18109-109/+109
| | | | | | | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Doc: Fix documentation for devicePixelRatio() functionsTopi Reinio2013-01-173-9/+6
| | | | | | | | | | | | | | | | Fix Incorrect use of \sa, missing markup for comment block and typos. Change-Id: I1b7e477b7429ace30ca3ab25c4814c8cba659a65 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Regression: Fix setting of custom cursors for native widgets.Friedemann Kleint2013-01-214-14/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there is no concept of not having a cursor set on a Window. Qt::ArrowCursor is always set instead. This causes bugs when native child widgets are involved, for example setting a cursor on the native widget's parent no longer works since the child's Qt::ArrowCursor applies. Introduce QWindowPrivate::hasCursor tracking whether a cursor has been explicitly set and clear in QWindow::unsetCursor(). Handle 0 in QPlatformCursor::changeCursor() to mean "unsetCursor()": - Windows: Introduce default constructor for QWindowsWindowCursor meaning "0". Search for applicable parent cursor in applyCursor. - XCB: No big changes required, set XCB_CURSOR_NONE for no cursor. - Other platforms: Assume Qt::ArrowCursor when cursor = 0 is passed for now. Task-number: QTBUG-28879 Change-Id: Id82722592f3cd5fe577a5b64dcc600c85cfea484 Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-01-161-7/+18
|\| | | | | | | | | | | | | Conflicts: src/widgets/styles/qstyleanimation.cpp Change-Id: Iae570895be6544de80f9c1ec309d1a08c59daff8
| * Fix QOpenGLContextGroup object leakJian Liang2013-01-141-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-29056 QOpenGLContextGroup object is designed to be destroyed by deleteLater(), but this method will not always work due to the fact that in many cases event loop will exit before the deferred deletion of the QOpenGLContextGroup object is queued. Think about the following case: int main(int argc, char *argv[]) { QApplication a(argc, argv); QGLWidget w; w.show(); return a.exec(); } In the above program, the event loop will exit before QGLWidget object's destruction. This will cause the QOpenGLContextGroup object hold by QGLWidget object never been deleted. This patch will delete QOpenGLContextGroup object directly with delete operator if the current thread is the same as the thread which the QOpenGLContextGroup lives in. Change-Id: If835d7482474f4a668763fc7c21b293a27f075fd Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QPA, Cocoa: Add platform popup menusGabriel de Dietrich2013-01-111-0/+10
|/ | | | | | | | Also, allow to set menu-wide font (instead of per menu item), and minimum width. Change-Id: I5f83f260602f55b9409ad69abf670afb59b2d33a Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Replace macro qdoc with Q_QDOCDebao Zhang2013-01-081-1/+1
| | | | | | | | Both qdoc and Q_QDOC are used in source code, which looks not good. Change-Id: I4f3a71670278b0758d92bfa5db086a07e1b1acfd Reviewed-by: hjk <qthjk@ovi.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Fixed wrong emits of x/y/width/height changed signals in QWindowSamuel Rødal2013-01-041-9/+9
| | | | | | | | | | We should only emit these when the corresponding property value changes. Since these are changed asynchronously in the case of a platform window, we should not emit them in the setter, as they are already properly emitted in QGuiApplicationPrivate::processGeometryChangeEvent(). Change-Id: I5ac00601ddb4e7a8ff02376e5f5135d427913119 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Fix QGuiApplication::keyboardModifiers() and QGuiApplication::mouseButtons()Jon Severinsson2013-01-042-5/+7
| | | | | | | | | | | | | | | | | Previous commit b2363a935c8dac fixed keyboardModifiers() after QPA event processing, but broke QTestLib, which expects spontaneous input events sent to qApp->notify() to update keyboardModifiers() and mouseButtons(). The commit also did not fix mouseButtons() after QPA event processing, and missed keyboardModifiers() after QPA Tablet event processing. This commit fixes all these shortcommings in b2363a935c8dac. Includes test case by David Faure <faure@kde.org> Task-Number: QTBUG-26887 Change-Id: I8518b06c4ce86ea7b35120e3353a45ea2a81d356 Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Accessibility: Activate in QGuiApp instead of QApp.Frederik Gladhorn2012-12-161-0/+4
| | | | | | | | This makes it possible to use accessibility with QQuickWindow. Change-Id: I5fccd5f25021c4953b03e146705f48a198dbaaa7 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Implicit conversion of shortcuts to string is gone.Frederik Gladhorn2012-12-141-1/+1
| | | | | | | | This only effects compilation with DEBUG_QSHORTCUTMAP. Change-Id: I184e644f2165049336cee8a6ac63a3301cf4c849 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Entered hardcoded url for Gnu EmacsNico Vertriest2012-12-141-1/+1
| | | | | | | | | | Corrected in qkeysequence.cpp Link from external-sites not working So, entered hardcoded url. Task-number: QTBUG-27512 Change-Id: I5b8d25d2b1f4f4fb0d57d2306de7f1b7c3dc40e3 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* XCB: add support for getting and setting appTime and appUserTime.David Faure2012-12-142-0/+8
| | | | | | | | | | | | The QX11Info class needs this. This required adding the missing nativeResourceFunctionForScreen in QPlatformNativeInterface. Change-Id: I2c6e91c7f122f3ecdf769a177deafd2aa3896e2f Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Alberto Mardegan <mardy@users.sourceforge.net> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix empty window title regression, add application display name to window titleDavid Faure2012-12-141-1/+6
| | | | | | | | | | | | | | | This increases consistency a lot: all windows and dialogs from a Qt application will show the app display name in the caption, on Windows and X11. This helps identifying which app a dialog belongs to, which is especially useful when the dialog is very generic and shows up unexpectedly. For compatibility reasons, the app name is added to the caption only if setApplicationDisplayName() was called -- or if the caption would be completely empty. The standard Qt4 case (setWindowTitle + no display name) is unchanged. Change-Id: Ib284c62c1f4c0bc923e5bc2d10247d95e9aa76c1 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix QWidget::setWindowOpacity() when called before show().Friedemann Kleint2012-12-122-2/+6
| | | | | | | | | Pass opacity from the QWidget to QWindow and to the platform windows. Task-number: QTBUG-28477 Change-Id: If5a85d9183bd1ca33dac2052936ecd1e6c0b5f6c Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* De-inline all setters in QWindowShawn Rutledge2012-12-122-77/+84
| | | | | | | | | | | | | | | | If we don't do this, we can have binary compatibility issues later. For example https://codereview.qt-project.org/#change,41700 will change the behavior of setWidth and setHeight to call setSize instead of setGeometry, because we don't want changing the height to also set the position of a window; if x and y are left uninitialized it needs to remember that fact. But if setWidth is left as an inline method, calling setGeometry, then an application which was built with 5.0 would behave differently than an application built with 5.1, even if Qt is upgraded after the application was built. To generalize, setters should never be inlined. Change-Id: I1ec42cb61a45fe541b3f3bb99d1b1ca24ad2a517 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Some fixes to the OpenGL docs in GUIGunnar Sletta2012-12-121-1/+1
| | | | | Change-Id: I6415ff16b1765a5814d50a4cd39db00495d43073 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Remove incorrect and confusing documentation from qplatformwindow.cppSamuel Rødal2012-12-111-3/+0
| | | | | Change-Id: If3fd383bf7ff08a04df2e11c727c11aeef05a6de Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Compile with QT_NO_CURSOR.Volker Krause2012-12-071-0/+2
| | | | | | | | | | | | | Mostly straightforward, the a11y changes might look a bit drastic, but the base class QAccessibleTextWidget was already disabled in this case, so we have to obviously take out its sub-classes as well. Change-Id: I682ace20d6938688ddb1da23c3463f3c025fab8e Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
* Removed requestOrientation() API from QWindow.Samuel Rødal2012-12-065-90/+10
| | | | | | | | | | | There are no proper implementations of this API, and as it stands it only acts to confuse anyone who stumbles across it. It will be better to revisit the full cross platform orientation API story for 5.1. Change-Id: Iff7054a32c6e5e4ad0cc0493a5e4ecc35a6ec4f3 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>