summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Android: Handle virtual keyboard visibility changes.BogDan Vatra2013-11-017-66/+133
| | | | | | | | | emitInputPanelVisibleChanged when virtual keyboard visibility is changed. Task-number: QTBUG-34347 Change-Id: Iab7374db42ff8ce6f33dcc793b23f84d3c8692d5 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Cocoa: Improve cursor setting.Morten Johan Sørvig2013-11-015-44/+88
| | | | | | | | | | | | | | | | Implement cursor setting in terms of [NSCursor set] and [NSView cursorUpdate] using the window tracking area. Refactor cursor conversion into QCocoaCursor:: convertCursor. Rename QCoocaWindow::m_underMouseWindow to m_enterLeaveTargetWindow since it's set according to spesific enter/leave logic. Add m_windowUnderMouse which tracks mouseEntered/mouseExited state. Task-number: QTBUG-33961 Change-Id: Id5e12594f5db365e09c9926a4c08d748a9afb935 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* iOS: bugfix touch events when not using alienRichard Moe Gustavsen2013-11-011-5/+12
| | | | | | | | | | | | | | It seems that 130ee40b broke touch handling for non-alien QWindows. For those cases, a QWindow that is a child of another QWindow will get its own UIView to back it up. The current code did not take this into account when calculating the global coordinates of touch events. Instead we need to search for the top level QWindow it might be inside before we find the view that acts as the "desktop" for it. Change-Id: Ie3c19bf86c92fa3f247a0764116830e91b8322d2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* iOS: clear focus object when resigning first responder statusRichard Moe Gustavsen2013-11-011-1/+5
| | | | | | | | | | | Instead of deactivating the window when we resign first responder status, we now leave it focused, and tell it to clear its focus object instead. This will work better with the rest of Qt, which expects a window to have focus when its in front. Change-Id: I6fcc232467af306b791a834f4843bfd2786b206f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* QWindowPrivate: add virtual function 'clearFocusObject'Richard Moe Gustavsen2013-10-313-0/+13
| | | | | | | | | | | | | | | | | | | | | | | On mobile platforms, a line edit should only have keyboard focus when the virtual keyboard is open. As it stands, the only way to clear focus when the user hides the keyboard, is to deactivate the whole window. This is a bit too much, since Qt still expects the window in front to be active/focused. What we need is a way to remove focus from the current focus object without disturbing the state of the window. QWindow has a virtual function 'focusObject' from before. We now add a virtual function 'clearFocusObject' to QWindowPrivate that can be overridden by QWidgetWindowPrivate and QQuickWindowPrivate. That way we can remove focus from current focus object when the virtual keyboard is closed from the platform plugins. Change-Id: Ica4ec76f8a69cd6107236a8000ff8bd742e988b5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* make qreal double by default on all platformsLars Knoll2013-10-311-3/+0
| | | | | | | | | | | | | | On modern ARM CPUs there is no speed difference between float and double anymore, so let's rather use double for qreal to avoid rounding and precision issues. Like this we also get much better compatibility with our desktop OSes. This is not binary compatible on ARM, but the old behavior can be restored by passing -qreal float to configure. Change-Id: I2a4b61e19a3dfa6b0bd76734cecf2634c97207fc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix compilation with QT_COORD_TYPE=double on ARMLars Knoll2013-10-311-0/+1
| | | | | | | | | | Add a missing template specialization in the neon drawhelper. Task-number: QTBUG-33781 Change-Id: Iec02a93aee9403dc1275c32436db5527585b1088 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* QDateTime - Optimize refreshDateTime()John Layt2013-10-311-4/+1
| | | | | | | | | | A small optimization to the private refreshDateTime() function, improves standard performance tests by 0.3 msecs per iteration for affected functions, e.g. isValid() and offsetFromUtc() improve from 5.4 to 5.1. Change-Id: Ie67812649ef244388b484af35848b09d92dee38a Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDateTime - Optimize date() and time() methodsJohn Layt2013-10-311-6/+8
| | | | | | | | | | | | | | | | | Optimize the performance of date() and time(), resulting in a one-third improvement, and subsequent improvements in all date/time based functions. Tested over 1000 iterations of the standard benchmarks, in msecs per iteration: Before After date()/time() 0.3 0.2 setDate()/setTime() 0.9 0.8 daysTo() 0.6 0.4 Note original performance before msecs storage was 0.06. Change-Id: Ie838e560ddf7129281531dc965af56ac19cce91d Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove android specific qmake variables.BogDan Vatra2013-10-311-1/+1
| | | | | Change-Id: Iba2b929ba70588ffcbcc9395501753521cfe5154 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* use private linkage where possibleOswald Buddenhagen2013-10-3112-18/+18
| | | | | | Change-Id: Ie8eaa71bee87654c21218a23efd7e9d65b71f022 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* use the right scopeOswald Buddenhagen2013-10-311-1/+1
| | | | | | | | | "windows" only worked more or less by accident (it's the opposite of "console" and just happens to be the default on windows). Change-Id: Ib60c8ae5aea04f28207c05cc0005183dd6eb6244 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Don't cache QCoreApplication::appName.Robin Burchell2013-10-312-10/+5
| | | | | | | | | | | This isn't a hot codepath, there is no gain to doing this. It introduces unnecessary bloat (see e.g. https://www.webkit.org/blog/2826/unusual-speed-boost-size-matters/) and complicates boosting Qt application startup in cases where argv[0] is overwritten. Change-Id: I55b2b98b0de6b06fe7a049de262f3e19936b73db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix setVisible() of QWidget has no effect in QTreeWidgetItemChengyong Xie2013-10-311-1/+2
| | | | | | | | | | Check if the item is hidden before show the item(QWidget) Task-number: QTBUG-13522 Change-Id: I1c605d5cb8a80f340e9b7601612d3760f51cb4a7 Reviewed-by: Liang Qi <liang.qi@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Remove compiler warning when QT_NO_PRINTER is definedPaul Olav Tvete2013-10-311-0/+2
| | | | | | | This broke the build on Android with warnings-are-errors. Change-Id: I9edb9539c4a6f7286ff46cbaa53bcfef4cf5280f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Assert in QImage conversion from rgba8888pm -> rgba8888Allan Sandfeld Jensen2013-10-311-1/+1
| | | | | | | Fix typo in assert. Change-Id: I7dc056957b31a869eabe2e45feb99ae4fccb2d97 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Store the font's scalability in QFontEngine.Yoann Lopes2013-10-313-1/+5
| | | | | | | | | This is an enabler to fallback to native font rendering when using a bitmap font in Qt Quick. Task-number: QTBUG-32737 Change-Id: I6d841dd5ef54d78a00f7fab9d80e9c95ff7f7b98 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* QFileDialog: document the consequences of being "widgetless"Shawn Rutledge2013-10-311-1/+9
| | | | | | | | | After 37ca2224eca671200a2710f57f970d2993e62aa5 it's an exposed behavior change that the widgets and related paraphernalia don't exist. Task-number: QTBUG-34100 Change-Id: Ie0ebcb8c5c5668b6c12c5447f25bfbfd893dec6c Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Include unistd.h in the unix implementation source of QLockFileLaszlo Papp2013-10-311-0/+1
| | | | | | | | | | This is necessary to avoid hidden dependencies for int gethostname(char *name, size_t namelen); This was revelead while backporting the class to Qt 4 for QtSerialPort. Change-Id: I1c477d295eeae90b3136fc6aae5d45982d5b1d73 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Mac: Modify Qt::SizeAllCursor to look like arrowsKari P2013-10-313-3/+3
| | | | | | | | | On Mac, Qt::SizeAllCursor showed a spreadsheet cell selection cursor. It has been changed to look like it looks in the Qt Documentation. Task-number: QTBUG-27577 Change-Id: I2d50ab0d813137366b56cb30b8784ecf70392d4e Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Clean up QPlatformPrinterSupport via post routine.Friedemann Kleint2013-10-311-4/+16
| | | | | Change-Id: I5aff587f0186f15c9fa65d236e5ebe9a7901dd86 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Don't use NO_DEFAULT_PATH on mac when finding GL headers and libraries.Stephen Kelly2013-10-301-3/+13
| | | | | | | | | | | | The paths may be relative to a sysroot or osx SDK. The existing logic assumed that we always get fully resolved absolute paths from qmake. However, qmake populates and uses the -isysroot option separately. Task-number: QTBUG-32308 Change-Id: Ia23600cdc047d0844bfec32dd4feae3a2b5c95c0 Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* iOS: Add standard paths implementation for iOSIan Dean2013-10-302-0/+137
| | | | | | | | | | | A standard paths implementation for iOS. The APIs used on iOS require that the source file be "Objective-C++" (with a .MM extension), as there are no APIs available in C++ for this. The implementation complies with the latest documentation on standard paths. Change-Id: I349d3c5d4ddb6fb1297a45dc9ae26b56ac528abb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Windows: Do not use blend function for GL windows with alpha.Friedemann Kleint2013-10-301-5/+7
| | | | | | | Task-number: QTBUG-34376 Change-Id: I81a5ee6ff14e5472eb1f3846577d86b615be34e0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* iOS: Fix logic for determining whether to exit the root event loopTor Arne Vestbø2013-10-302-32/+8
| | | | | | | | | | | | | | | Instead of trying to hook into various places where we might be in a situation where the root event loop should exit, and then enabling the runloop-observer, we always keep the observer active, and then do the relevant checks whenever the run-loop exits. The reason for checking if the event loop is running is that iOS will enter and exit the root runloop as part of normal operation, eg due to flicking a scroll view and switching the runloop mode, so we need to ensure that we're actually supposed to exit the root event loop. Change-Id: I9b84b47ee45e0c9e2b1d2ebb5a432ea92700b324 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Consider multi-monitor setups in QPlatformWindow::initialGeometry().Friedemann Kleint2013-10-301-2/+23
| | | | | | | | Task-number: QTBUG-34204 Change-Id: Id79efe33ece071ad94578b6ac0370b0f040d1c3c Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix QSpinBox size calculation problem with empty stylesheetsCaroline Chao2013-10-301-1/+1
| | | | | | | Task-number: QTBUG-34305 Change-Id: I3e89dc66446e9f5e9e1810be367830b9df98ab0b Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Android: Don't rely on QIcon::isNull() to validate icon data.Christian Strømme2013-10-301-4/+6
| | | | | | | | | | | QIcon::isNull() only checks if it has a valid d pointer and not if it actually contains any image data. The result is that the QImage create from the icon would be invalid, and later cause an exception to be thrown. To avoid this we should check the QImage as well. Task-number: QTBUG-34416 Change-Id: I9dd0a2387d73bfc2c27ceb9df247ddc186dd659f Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Fix problem with leaking local refs.Christian Strømme2013-10-303-8/+27
| | | | | | | | | In some cases we where not releasing the local references and since we no longer disconnect from the VM on each call, the number of local refs. would accumulating until it hit the hard-limit of 512. Change-Id: I6826620e4cb61a37af26d276667489e876080076 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* xcb: Compilefix #ifdef glx codeJørgen Lind2013-10-301-0/+4
| | | | | Change-Id: I4204cab76b2621318dda909d24ceb2abab6e0ba3 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* xcb: Act on the _NET_ACTIVE_WINDOW eventJørgen Lind2013-10-301-3/+6
| | | | | | | | | | 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>
* Fix the network proxy code for windows to detect properly servicesThierry Bastian2013-10-301-32/+20
| | | | | | | | | | | | | | | This patch makes it so even sub processes of services are also detected to be running in the context of a service. With the previous code it would only detect that the current process is a service and not the sub processes. This fix makes sure we detect properly if the current process is running in the context of a service. This is important to detect properly the proxy configuration of the current user. Change-Id: I110dee62597aec3f8e2f6925166a428f72d14fd0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Use Q_UNLIKELY in qCDebug, qCTraceKai Koehne2013-10-301-2/+2
| | | | | | | | By default debug, trace is disabled, so this can be marked as unlikely. Change-Id: I221a688c953c1ff1fdfda65d2d99457785d3ff47 Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix finding cursor position in words with accentsJoshua Grauman2013-10-301-3/+3
| | | | | | | | | | | | | | In positionInLigature() we were mixing indexes into the script item with indexes into the entire string. The getClusterLength() function would expect an attributes array for the current script item and it thus needs to be adjusted by si->position. In addition, when looking for the next grapheme boundary, we were comparing pos (which indexed the string) with end (which indexed the script item). This has also now been fixed by adjusting for si->position as well. Task-number: QTBUG-30123 Change-Id: Id02e2eddcc5b7888eacb34bd1e39cc6911880ca1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Silence the _COMPIZ_DECOR_* warnings on UbuntuJørgen Lind2013-10-303-1/+12
| | | | | | | | | 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>
* Add QGuiApplication::sync() functionJørgen Lind2013-10-306-1/+50
| | | | | | | | | 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>
* Doc: Fix miscellaneous typosSze Howe Koh2013-10-309-11/+10
| | | | | | Change-Id: Iaf0dd8974c3ad78beffa995c596a76fb3e4cceab Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
* Issue correct warnings with QObject::startTimer()Sze Howe Koh2013-10-301-2/+2
| | | | | | | These are not specific to QTimer Change-Id: Idcffab51a3277413889a727afa1cf7ce15171ec9 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Doc: Remove unofficial Qt Concurrent headersSze Howe Koh2013-10-303-37/+10
| | | | | | | | | | | | | | | <QtConcurrentRun>, <QtConcurrentMap>, and <QtConcurrentFilter> are not official headers. Developers should use <QtConcurrent> instead. As a side-effect, this patch also stops the function documentation from being duplicated (one copy in the QtConcurrent namespace page, one copy in the \headerfile pages) (For some reason, \brief doesn't work on standalone pages like these) Change-Id: I9482f014acf52ba734a3fa597cdcc5931fcd7ecf Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Different native Cocoa menu fixes.Christoph Schleifenbaum2013-10-292-11/+19
| | | | | | | | - Fix location of NSMenu when no NSView is given. - Fix shortcut when given in text with tab. Change-Id: Iec21cf3d12084db1e70c1a8779d5482c78285796 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Keep web fontdata alive as long as CG uses itAllan Sandfeld Jensen2013-10-291-4/+13
| | | | | | | | | | | With OS X 10.9 font decoding appears to happen lazily, this means we have to ensure the data we provide CG is kept alive until it dereferences it itself. Task-number: QTBUG-34332 Change-Id: I8fc38fafba746b062c4ad16314b0a410fd0b668d Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
* Don't support threaded GL on chromium (virtual box GL)Gunnar Sletta2013-10-293-1/+39
| | | | | Change-Id: I84f89450e3fce1cbbafd19dbf4509b1911e06b19 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* QNX: Manage foreign mmrenderer windowsRafael Roquetto2013-10-296-10/+125
| | | | | | | | | Manage and correctly set the z-order of a foreign created mmrenderer window by QtMultimedia Task-number: QTBUG-33816 Change-Id: I46273b945bf10991462fa72eb1ec8d00b0648988 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* remove qt_windows.h include from qwineventnotifier.hJoerg Bornemann2013-10-291-1/+1
| | | | | | | | | | | We must not include qt_windows.h in public headers, otherwise we're cluttering the environment with a colorful bouquet of Windows API preprocessor macros and typedefs. Task-number: QTBUG-34058 Change-Id: I415717ea2a47f39e7f4b7ce1c1df9d49afc99278 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Cocoa: Fix mouse event coordinates transform to window spaceGabriel de Dietrich2013-10-291-22/+21
| | | | | | | | | | | We pass the mouse screen coordinates that we convert to window space instead of the other way around. This makes sure the original mouse coordinates are not bound to any moving window. Task-number: QTBUG-29583 Task-number: QTBUG-32221 Change-Id: I8f9ada6e8c0d20af8e85e88ee39190d23e58977f Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* qdbusxml2cpp: Fix warnings about writing to closed devices.Friedemann Kleint2013-10-291-12/+17
| | | | | | | | | Unearthed by fe1cbe9ca78619b54b08e4ec1155d7e6e4e0640a while building QPlatformSupport. Change-Id: Ife56efe111dda6bcf9f11f9c144a4d1dc1651380 Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make the localHostName() copy function return QByteArrayThiago Macieira2013-10-291-8/+8
| | | | | | | | | | This avoids one extra memory allocation when creating the lock file. The number of memory allocations when checking the file are still the same. Change-Id: I16a2fdb7a5458bdc66f8ad1c602582b5698a5b5c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix QCommonStyle::subControlRect(SC_GroupBoxCheckBox)J-P Nurmi2013-10-291-1/+1
| | | | | | | | | Make sure the groupbox check indicator doesn't get placed in negative coordinates when font height is smaller than the indicator height. Task-number: QTBUG-33610 Change-Id: Ifad0016e9311f1212cccb6d5971343beb68517c4 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* generate qfeatures.h at build timeOswald Buddenhagen2013-10-293-688/+2
| | | | | | | | | much more elegant than the checked in file. and less chance to get it wrong, as people often enough do. Change-Id: I975a62dfd83ce4f15947ce54f3c40931b1badae0 Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* give XMLSTREAM a NameOswald Buddenhagen2013-10-291-1/+1
| | | | | | Change-Id: I4759d8d64f90db580cd15cad6edeed77411c0c33 Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>