summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Reorganize devicediscovery headerLaszlo Agocs2014-11-2611-71/+235
| | | | | | | | | | | | | | | | As pointed out in 13b939c7f41bceb2061e549923eab242326e9bb5 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>
* iOS: only skip activating the most simple popup typesRichard Moe Gustavsen2014-11-261-3/+4
| | | | | | | | | | | | | | The current approach of not activating transient windows with the popup flag set was found to be too restrictive, as it would e.g stop transient dialogs from being able to contain editable controls. This patch will restrict the number of popup types that we skip activation for to only contain a few subtypes. Task-number: QTBUG-41613 Change-Id: I381a5a79fb4f7082da18a6b4e06a7255ff400b1a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Widgets, iOS: don't tell the input panel to hide on focus outRichard Moe Gustavsen2014-11-261-1/+3
| | | | | | | | | | | | | On iOS, autoSIP is handled by the platform plugin. We therefore avoid letting widgets tell the input panel to hide on focus out so we can gain better control over this from the plugin. Note that we could also set QApplicationPrivate::autoSipEnabled to false and achieve the same. But since autoSIP is logically set on iOS, it's better to report it as set in case the app asks. Change-Id: I96c68bc446a1e299fd57afe03a9e273491df08a7 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* XCB: send leave event on grabJørgen Lind2014-11-262-62/+17
| | | | | | | | | | | | | | When a popup is opened it grabs the input, but the leave event to the other windows needs to be sent. Remove the popupEnterLeave test as it did not test any code. The Popup never gets any enter or leave events so it will succeed always succeed Task-number: QTBUG-36862 Change-Id: I625c616eeb74b5168af7b751485e2a9a53b76cd3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Android: replace qFind with std::findShawn Rutledge2014-11-262-13/+13
| | | | | | | | qFind is deprecated, so these cause build errors with configure -no-feature-DEPRECATED Change-Id: Iefcb061d5e8ce256445528f601ead4c9d5d1dfd2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* sqlite: don't use deprecated QSqlError constructorShawn Rutledge2014-11-261-1/+1
| | | | | | | so that it can build with configure -no-feature-DEPRECATED Change-Id: Id2decc05974bad249c79936d99ab63d3cfc375ad Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* don't use QCursor if QT_NO_CURSORShawn Rutledge2014-11-263-0/+8
| | | | | | | to support configure -no-feature-CURSOR Change-Id: I8e7f9a7f80d3d44a1f8e25b909d552351b5f37e4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Improve diaglib.Friedemann Kleint2014-11-253-6/+57
| | | | | | | | | - Fix prototype for glinfo() for Qt 4 - Add more event types and object type flags to event filter. Change-Id: Ia4160b40486d054e860a339e7b5c9c28695330ae Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Windows: Respect hinting preferences with FreeType engine.Sérgio Martins2014-11-251-15/+21
| | | | | | | | | | One of the fontEngine()'s methods was missing hinting. This bug only manifests on Windows because on Linux QFontConfigDataBase already sets hinting on both code paths. Task-number: QTBUG-42534 Change-Id: I3a66a9d4aaa5e390fee305a3d5aacfeba38a1fc3 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* QDistanceField: a zero glyph index means the glyph was not foundShawn Rutledge2014-11-251-1/+1
| | | | | | | | | | In qt_fontHasNarrowOutlines, if we proceed to call alphaMapForGlyph when the glyph does not exist, there will be a failed assertion. The docs for FT_Get_Char_Index say that zero means the glyph was not found. Change-Id: I371e9a2797a34fa3ebeae44531af51e24dadad79 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* [QPainter] Fix QTextItem painting with extended paint engineKonstantin Ritt2014-11-251-1/+4
| | | | | | | | Multi QFontEngine should be handled just like all other cases covered several lines below. Change-Id: If3dd9a2e38a5f6f61b113576cb188da378fc9efb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* [QAndroidPlatformTheme] Get rid of static QFontKonstantin Ritt2014-11-252-3/+6
| | | | | | | | QFont is not POD and shouldn't be instantiated statically, otherwise we could end up with UB during qApp destruction. Change-Id: I2372c7a643eb3007957ab2b798732c1a18fd0ae5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Fix potential access to uninitialized memberKonstantin Ritt2014-11-251-2/+3
| | | | | | | | If GetTextMetrics() failed, there is no guarantee that TEXTMETRIC is initialized with any safe values. Change-Id: Idb5e3bc1bc2451368950978365487c908ce529e7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Don't assemble QRawFont from QFont manuallyKonstantin Ritt2014-11-251-8/+1
| | | | | | | Always prefer QRawFont::fromFont(..) Change-Id: Ic33f7d3a468f926418b39887f572829af93f8c1d Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* [QStaticText] Fix potential font engine leakingKonstantin Ritt2014-11-251-3/+8
| | | | | | | | Never assume the engine is still cached but rather delete it if we are the last consumer. Change-Id: I4e3c796d45c53f42722a437482d71e2dae14cad2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Don't say "Neon... auto" when ARM Neon isn't detectedThiago Macieira2014-11-251-0/+3
| | | | | | | Just say "no". Change-Id: I382d612ad0a7f4031b1891e7e4d9158db07badf1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Add missing host_build CONFIG for qlalrTor Arne Vestbø2014-11-251-0/+1
| | | | | | Change-Id: I6eddd2afd9eb4dac0b28329003dbd3b6d05d3fd1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* iOS: Clean up QPlatformInputContext subclass headerTor Arne Vestbø2014-11-251-10/+12
| | | | | | | | | Implements isValid(), which should be returning true for subclasses, and re-orders and adds Q_DECL_OVERRIDE where appropriate. Change-Id: I03519bf674b6f7b7ccc07a7154c9a1fb9a8105f2 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Get rid of some duplicate code in QFontEngineFTEskil Abrahamsen Blomfeldt2014-11-251-101/+25
| | | | | | | | | | | This removes some code duplication in the QFontEngineFT and it also removes the condition that loadTransformedGlyphSet() will return 0 if the font is too large to be cached, since this is handled by setting outline_drawing on the glyph set which will fall back to painter paths. Change-Id: I2fe6a963e854cdd7c6015154547dc06325cbe3b0 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Fix instances of !var & const that should be !(var & const)Marc Mutz2014-11-252-2/+2
| | | | | | | | | GCC recently started warning about these. Change-Id: I7b30c79f7f2b66b99e54354224700d54ace6ebec Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* QAbstractItemView: rename private canDecode to canDrop.David Faure2014-11-243-7/+7
| | | | | Change-Id: I9b1b3ead0bea35a75e20c5c18e288251de7ad7fe Reviewed-by: Stephen Kelly <steveire@gmail.com>
* QAbstractItemView: call canDropMimeData, as one would expect.David Faure2014-11-248-17/+47
| | | | | | | | | | | | | | | | The virtual method was added for 5.0 but never called. The old code (only checking mimetypes) is now the default implementation for canDropMimeData. Model subclasses can now refine this by having index-specific logic instead, or in order to inspect the dropped data (e.g. to accept files and refuse directories, which are all text/uri-list). [ChangeLog][QtWidgets][QAbstractItemView] now calls canDropMimeData in order to decide whether or not to accept the drop. Task-number: QTBUG-30534 Change-Id: Ied3aa964b4025bae6a1a26df89a681bfe61c3faa Reviewed-by: Stephen Kelly <steveire@gmail.com>
* QAbstractProxyModel: fix canDropMimeData/dropMimeData implementationsDavid Faure2014-11-244-22/+90
| | | | | | | | | | | | | | | The code in 4696e9dbaa4 was incorrect. It is perfectly valid to call these methods with row=-1 column=1 parent=some_index, this is exactly what happens in QListView and QTableView. Child row/column is only for trees. Move the coordinate mapping from QSortFilterProxyModel into a new mapDropCoordinatesToSource internal method, used by QAbstractProxyModel. Task-number: QTBUG-39549 Change-Id: I3312210473d84b639cbe4c01f70ea36437db3e91 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Stephen Kelly <steveire@gmail.com>
* tst_qtableview: fix virtual-override clang warningDavid Faure2014-11-241-2/+2
| | | | | Change-Id: I40391890c988ce15d8fa65898976bf0fdc446992 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* OSX: implement QFontMetrics::maxWidth().David Faure2014-11-241-1/+4
| | | | | | | | | | | CoreText doesn't seem to provide us with a "maximum advance" value, but 0 is really wrong, it leads to QLineEdit::minimumSizeHint() being 0 since it's based on maxWidth(). It even led to a negative min width with setTextMargins(-1, 0, -1, 0). Change-Id: I4faf8ecfb6d91e9dff66ec63651d003014503cb4 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Implement Download folder path retrieval on OS XSamuel Gaist2014-11-244-9/+17
| | | | | | | | | | | | The current implementation returns the DocumentLocation folder. Since now only cocoa is supported, we can use NSFileManager to get the correct path. [ChangeLog][QtCore][OS X] Now QStandardPaths returns the correct path for the DownloadLocation. Change-Id: Ic0ea3ebf8585a1e34a7b43c734df78fd3949d4d4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix warning about QDeviceDiscovery violating ODR ruleThiago Macieira2014-11-233-0/+4
| | | | | | | | | | | | | | | | When compiling with GCC 4.9's LTO, the compiler realizes that the class looks different in two different compilation units and prints a warning. Adding the necessary #define will make sure that the warning isn't printed. It's possible the warning indicates a real problem, if the class actually got used in those two plugins. I wouldn't know. QtPlatformSupport/private/.../qdevicediscovery_p.h:66:7: warning: type ‘struct QDeviceDiscovery’ violates one definition rule .moc/.../qdevicediscovery_p.h:66:7: note: a type with the same name but different layout is defined in another translation unit Change-Id: I73ca8e553e392b8d368f0deaa318d3e6635d73e1 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix failure to build QtQuick with LTOThiago Macieira2014-11-232-1/+5
| | | | | | | | | | | | | The presence of the inline QTestFontEngine's constructor causes a linker failure because QFontEngineBox isn't exported. I'd say this is a compiler bug (GCC 4.9), but it's an easy workaround and a difficult testcase. typeinfo for QTestFontEngine: error: undefined reference to 'typeinfo for QFontEngineBox' vtable for QTestFontEngine: error: undefined reference to 'QFontEngineBox::glyphIndex(unsigned int) const' Change-Id: I84829d111616977d6f3fcbbb48509d1c7d4f5fa6 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* SSL: Fix sslConfiguration in encrypted slotAndré Klitzing2014-11-231-0/+1
| | | | | | | | | | If "encrypted" signal is fired the configuration of ssl is not updated. If someone wants to perform additional checks on the certificate chain it is now possible to use peerCertificate and peerCertificateChain. Change-Id: Id5136a8c52727562c36028eaef721cc9ad86619d Task-number: QTBUG-40401 Reviewed-by: Richard J. Moore <rich@kde.org>
* Work around ICC compatibility problem with Apple headersThiago Macieira2014-11-221-1/+1
| | | | | | | | | | | | | | | | Apple uses __OSX_AVAILABLE_STARTING in enum values too, which ICC doesn't like. We need to force at least OS X 10.9 so we don't run into build errors. FSEvents.h(279): error: expected a "}" kFSEventStreamCreateFlagMarkSelf __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0) = 0x00000020 ^ Intel issue ID: 6000071924 Change-Id: Iae1abb8e8e92f228571c5064d96e9d33d3e35173 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Disable the tests that verify that the available space shrunkThiago Macieira2014-11-221-0/+10
| | | | | | | | | Somehow, it doesn't shrink with btrfs, even if you write 1 MB of non- null data. This does not seem to be a bug in QStorageInfo. strace confirms that there is a second statvfs call happening. Change-Id: I9ed99d27d25e191916278e6b8faeae132469fc63 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Don't send reply messages for non-method calls in QDBusMessageMatt Fischer2014-11-221-0/+4
| | | | | | | | | | | | | QDBusMessage is intended to avoid sending reply messages unless the message is a method call without the NO_REPLY_EXPECTED flag set. However, since messages which are not method calls will never have this flag set, the code will currently cause all non-method call messages to expect a reply. This patch changes the code to examine the message type, and to only check for the flag in cases where the message is a method call. Change-Id: Ic5bb00df69d3cfb38f60bf6bfd8463fb28cf2c99 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QtTest: fix pretty-printing of QStrings containing "Thiago Macieira2014-11-211-1/+1
| | | | | | | It needs to be escaped with a backslash. Change-Id: Idf62914fca08eb6be8a039c2af72bac42c0d594a Reviewed-by: Jason McDonald <macadder1@gmail.com>
* Put parentheses around "min" to prevent expansion as macroThiago Macieira2014-11-211-1/+2
| | | | | | | | | | | | If you write xxxx::min(), min() might be expanded as a macro on silly environments that follow that poor practice (read: inclusion of <windows.h> without NOMINMAX). However, if you write (min)() or (xxx::min)(), it means the same but prevents the expansion as macro. Task-number: QTBUG-42767 Task-number: QTBUG-31469 Change-Id: If3c93aafd4d0bf63ca15f3d01c2297d58d00f6bc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Fix coding style in QtCoreThiago Macieira2014-11-211-2/+2
| | | | | | | | Never start a line with a comma. Change-Id: Idce1766f2661aa97fd163c02436ef315999985ec Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix tst_QEventLoop::processEventsExcludeSocket testJan-Marek Glogowski2014-11-211-9/+43
| | | | | | | | | | | | | | | | | | | | The testcase always returns the expected result, independently of the QEventLoop::ExcludeSocketNotifiers flag to processEvents. In Qt4 the same test uses an intermediate QEventLoop and already runs it before the QEventLoop::ExcludeSocketNotifiers: QEventLoop loop; // allow the TCP/IP stack time to loopback the data, // so our socket is ready to read QTimer::singleShot(200, &loop, SLOT(quit())); loop.exec(QEventLoop::ExcludeSocketNotifiers); This fixes and improves the test by connecting, processing and checking the bytesWritten signal for the pending connection socket. Change-Id: I1b1d2b7b83910c87ba3fe48e29ac9fd585ac62ad Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* WinRT: Ignore winrtrunner specific argumentsMaurice Kalinowski2014-11-211-1/+2
| | | | | | | | | | qdevel is an option used from winrtrunner to indicate a specific environment to the app. QTestLib needs to ignore that parameter similar to the Visual Studio generated arguments. Change-Id: I00a3abe19f1e5b4159e65d26050f04e28f40316f Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.4.0' into 5.4Frederik Gladhorn2014-11-21336-14135/+18126
|\ | | | | | | Change-Id: I95f235a66ce2e9b1fa435c0f911c6f7e811755f0
| * Windows: Prevent registration of timers in shutdown phasev5.4.0-rc1Kai Koehne2014-11-202-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not register new timers after closingDown() has been called. They might call back into QEventDispatcherWin32 after the object has been destructed, leading to crashes on exit. registerSocketNotifier has a similar protection using QCoreApplication::closingDown(). This however does not work in all cases, because QEventDispatcher::closingDown() is called in ~QGuiApplication(), while QCoreApplication::is_app_closing is set in ~QCoreApplication(). In between qt_call_post_routines() is called, which might trigger new timers to be registered. Task-number: QTBUG-42772 Change-Id: I91325fb10e38c117c1cbedfee272d0ab6a5ca8fa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * Android: Use LocalServerSocket instead of ServerSocketBogDan Vatra2014-11-201-21/+32
| | | | | | | | | | | | | | | | | | | | | | Using LocalServerSocket is way much safer than ServerSocket because is not using ports which might be in use by other applications. Change-Id: I0e2be0b4561362939950861024f1f95ab819f2c2 Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Doc: Corrected autolink errors corelibNico Vertriest2014-11-205-23/+21
| | | | | | | | | | | | Task-number: QTBUG-40362 Change-Id: I551c2af94bb61fcc2494792761dab92d537e5068 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * Doc: corrected autolink issues itemmodelsNico Vertriest2014-11-202-5/+5
| | | | | | | | | | | | Task-number: QTBUG-40362 Change-Id: I8423643e47d27358dbbce58009cc9039aecb74cf Reviewed-by: Martin Smith <martin.smith@digia.com>
| * iOS: Make sure QStandardPaths::displayName() is definedTor Arne Vestbø2014-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | The file qstandardpaths_ios.mm doesn't have an implementation for this function, only (the wrongly named) qstandardpaths_mac.cpp does. There's no Foundation API to get the directory name, so we fall back to the hard-coded strings like all other platforms. Change-Id: I6dcfeb6a0e5860dd0d4e9a0cd334b2c2181a0004 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
| * Doc: correct autolink issues corelib/mimetypeNico Vertriest2014-11-193-8/+9
| | | | | | | | | | | | Task-number: QTBUG-40362 Change-Id: I852151fdbbe0cbc7ba88066984fc7bf83547b215 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * add buildsystem changelog for 5.4Oswald Buddenhagen2014-11-191-0/+43
| | | | | | | | | | | | Change-Id: I22ac7dc475fccb3c71e3f514fb58045062a1a95b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Doc: Added brief statement to group definitionNico Vertriest2014-11-193-0/+3
| | | | | | | | | | | | | | Groups: richtext and sharing. Task-number: QTBUG-42682 Change-Id: I46bd7e5bba0f665519ee4f3c033b971f0836e314 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * Fix QtCreator debugging on Android 5.0 devicesAlex Blasche2014-11-191-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | Add a socket based handshake method for gdb. The previous file based method remains for now and can be activated from Qt creator. It will be used by older creator builds but has the limitation of not working on 5.0 devices. The new mechanism works on pre 5.0 devices too. Task-number: QTCREATORBUG-13418 Change-Id: Ia3ecd1b144b544f52d90940ca885653bcbc477ac Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Correct the signature and access rights for the protected constructorLars Knoll2014-11-193-4/+4
| | | | | | | | | | Change-Id: Ic43398a82777f3b1a95a36f60ebc4338d60c29ec Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
| * qdoc: Missing break in qdoc switch statementMartin Smith2014-11-181-0/+1
| | | | | | | | | | | | | | | | | | | | There was a missing break statement in the function that generates the .index file, which caused qdoc to output extra attributes in the <module> element. Change-Id: I110c15c67a228249bfe0c7da138f2ca0b4921371 Task-number: QTBUG-42625 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| * Fix memcpy with incorrect destinationAndré Klitzing2014-11-181-1/+1
| | | | | | | | | | | | | | | | Variable dsa is assigned in this block with q_DSA_new instead of rsa. So this should be the destination of memcpy. Change-Id: Id5a41d99f1606bf525ad5f819bbc06bb1235bf5b Reviewed-by: Richard J. Moore <rich@kde.org>