summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* QtPrintSupport: eradicate all Q_FOREACH loopsMarc Mutz2015-12-236-16/+21
| | | | | | | | Saves more than 2KiB in text size on optimized GCC 4.9 Linux AMD64 builds, iow: ~0.5% of the total library size. Change-Id: I84e1dc208da13eefdf1573c9b7ac7c9d76a7f5c7 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QGraphicsView: replace some Q_FOREACH loops over const locals with C++11 ↵Marc Mutz2015-12-233-19/+19
| | | | | | | | | | | | | | | | | | | | | range-for This needs to be handled a bit carefully, because Qt containers will detach upon being iterated over using range-for. In the cases of this patch, that cannot happen, because all containers are local and marked as const (either by this patch or before). Separate patches will deal with other situations. Range-for loops are much more efficient than foreach loops. This patch shaves ~1.8KiB of text size off an optimized Linux AMD64 GCC 4.9 build. Change-Id: I5c58658937ac4323594161bf94a2fce3c5667914 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QGraphicsView: replace some Q_FOREACH loops over rvalues with C++11 range-forMarc Mutz2015-12-236-45/+78
| | | | | | | | | | | | | | | | | | | | | This needs to be handled a bit carefully, because Qt containers will detach upon being iterated over using range-for. In the cases of this patch, that trivially cannot happen, because all containers are marked as const when being assigned the rvalues previously found on the rhs of the Q_FOREACH. The new code thus does exactly what the old code did: take a const copy, then iterate over it. Separate patches will deal with other situations. Range-for loops are much more efficient than foreach loops. This patch shaves almost 4K of text size off an optimized Linux AMD64 GCC 4.9 build. Change-Id: Ida868b77d078cbfa0516d17e98e6f0a86fcdb7a3 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix resource leak/fix broken file open checkFrank Meerkoetter2015-12-221-2/+4
| | | | | | | | | | | Also marking the error path as unlikely while I am on it. Fixes coverity CID154482. Change-Id: I069fa7753e364ff1b8a4449b7008dfa8aee73de5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Optimize a code path in QGraphicsScenePrivate::cancelGesturesForChildren()Marc Mutz2015-12-221-19/+20
| | | | | | | | | | | | | | | | | | | | | | | If ev.isAccepted(), since list is gestures.toList(), the first foreach loop would clear 'gestures', one item at a time. The second foreach loop would then not execute at all. Make this case clearer by not executing either loop if ev.isAccepted(). Make it more performant by not iterating twice, but once, simply skipping those gestures in the second (remaining) loop which would have been removed by the first one. Also iterate over the equivalent QList instead of the QSet, because the former is way more efficient. Text size savings are present, but minimal. The runtime savings are signficant, of course. Change-Id: I3d5bfe99c5d3fcbe4c98816577846551c632f315 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix OSX namespace build.Erik Verbruggen2015-12-221-1/+1
| | | | | | | Again. Change-Id: I76956dce609693da2adad7f809a5ff0aadb61f98 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* QGraphicsSceneBspTreeIndex: simplify the code of items()Marc Mutz2015-12-221-16/+13
| | | | | | | | | | | | | | | | | | | | | | The old code dealt with a lot of special cases, probably to avoid detaching. But the only case where deep copies are avoided is if a) there're no freeItemIndexes b) there're no unindexedItems c) the sort order is neither AcendingOrder nor DescendingOrder, which is funny, since those are the only two values for Qt::SortOrder. The code checks for SortOrder(-1), but nowhere in Qt is such a sort order created. Ergo, the deep copy was _never_ avoided. So simplify the code by always building the result list from the two input lists by copying all non-null items. Saves over 2KiB in text size on optimized GCC 4.9 Linux AMD64 builds. Change-Id: I8e739fb78896b2ad0bec45d05e86a76fe1ede04a Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QGraphicsScene: don't build a temporary QList just to iterate over itMarc Mutz2015-12-221-7/+4
| | | | | | | Iterate over the original list instead. Change-Id: I7be154c0e19074033df6f6e01f68d21a8904d2ee Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* QGraphicsScene: prevent lots of detaching d/t editing of copiesMarc Mutz2015-12-222-4/+4
| | | | | | | | | | | | | | | | | | | QTouchEvent::touchPoints() returns a const-&, but the old code took a copy, over which it then iterated, modifying the touch points, causing (necessary) detaches of both the list and the touch points. Befriend QTouchEvent and modify the list in-place, avoiding all detaches in the likely case that QTouchPoint contains the only copy of the touch point list. This is all the more important as the function is called once for every item-under-mouse in sendTouchBeginEvent(). Port to C++11 range-for as a drive-by. Change-Id: I2f74d19845711d97e3566886123b5d18d55db74c Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* Qt5CoreMacros: Sync with CMake project counterpartKevin Funk2015-12-211-4/+4
| | | | | | | | | | | | | | | | | | | Port of CMake commits: commit 2622bc3f65162bf6d6cb5838da6999f8b5ca75cf Author: Rolf Eike Beer <eike@sf-mail.de> Date: Sun Apr 6 21:30:00 2014 +0200 Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex) commit 7beba98652212c7a44f291b51dd03681e5193c49 Author: Robert Maynard <robert.maynard@kitware.com> Date: Thu Apr 3 11:27:58 2014 -0400 Qt4Macros: Make QT4_CREATE_MOC_COMMAND a function Change-Id: I5b928d114adb393ed9370163609311b7486e4a36 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QListViewItem: Remove pointless copy ctorSérgio Martins2015-12-211-3/+0
| | | | | | | Fixes static analyzer warning. Change-Id: I4f1bec1da5b2e90a1aeae699a9e3e329f1cc9199 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QtWidgets: de-inline some more virtual dtorsMarc Mutz2015-12-216-1/+24
| | | | | | | | | | | | | | | | | | | | Helps pinning the vtable to a single TU, which can prevent false negative RTTI (incl. dynamic_cast and catch()). But mostly because it's rather pointless to have dtors of polymophic function inline. Most of the time, the code will be called through the vtable indirection, anyway (which also means that an out-of-line copy of the code needs to exist in any case). The inline method will only be used when the compiler can prove the dynamic type of an object. Saves ~1.5KiB in text size on optimized GCC 4.9 Linux AMD64 builds. Change-Id: Ic4ce96da559252c8abc29d880530c84035db2306 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QtWidgets: de-inline some Private ctorsMarc Mutz2015-12-216-97/+113
| | | | | | | | | | | | Saves ~7KiB text size on optimized GCC 4.9 Linux AMD64 builds. Drive-by fix: properly init QGraphicsProxyWidgetPrivate::proxyIsGivingFocus. Change-Id: Iac923f0f2a9cdc0349f706c5760883a210be36f3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Don't re-evaluate QTextCharFormat::font() all the time in ↵Marc Mutz2015-12-211-5/+7
| | | | | | | | | | QAccessibleTextWidget::attributes() Saves ~100b in text size. Change-Id: I144b8c1d02ce8a24f1654d54abad90ba1054be9a Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Boris Dušek <me@dusek.me>
* Remove a use of a QMap in QAccessibleTextWidget::attributes()Marc Mutz2015-12-211-7/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QMap<QByteArray, QString> was only used to hold key/value pairs until they were serialized into a QString at the end of the function. Serialize into QString directly instead, dropping the temporary QMap. The problem is that we'd like to keep the line formatting central while at the same time harnessing the power of QStringBuilder. This is possible with a templated function with an input/output parameter: format_attr(QString &result, const char *key, T &&value) format_attr(result, text-foo, str + str2 + str3); Or with return type deduction: formatted(const char *key, T &&value) -> decltype((expr)) { return expr; } result += formatted(text-foo, str + str2 + str3); I don't like out parameters, and we can't rely on auto return type deduction, yet, so I opted for a miniature expression template solution that can only match the expression attr[key] = value; where 'key' is a const char* and 'value' can be anything that QStringBuilder supports. This allows to keep the syntax of a map while at the same time serializing to QString immediately. The only behavioral difference to the old code is that the attributes are no longer sorted, but order doesn't matter. Saves more than 10KiB in text size on optimized GCC 4.9 Linux AMD64 builds. Change-Id: I7b3bec0466ef24156c693adaa95f0316007e0bfe Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QLineEdit: hold SideWidgetEntry in std::vector, not QVectorMarc Mutz2015-12-213-14/+22
| | | | | | | | | | | | | | | | | | | This is private implementation, so there's no BC issue here. The collections ported here also do not benefit from CoW, because they are never copied. Adapt to STL API and replace foreach with C++11 range-for loops, because the former deep-copies STL containers. Also replace index-based for loops with C++11 range-for, to evade the int/size_t problem on MSVC. Saves a bit more than 1KiB in text size on optimized GCC 4.9 Linux AMD64 builds, not all of which can be attributed to the ports to range-for. Change-Id: I240030180bd1b2ca40c002b03ab72319a99a87c3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Make use of new QHash::erase(const_iterator) overloadMarc Mutz2015-12-1910-33/+31
| | | | | | | | | | Drive-by changes: - use auto for iterators - add Q_UNLIKELY for conditions leading to a qWarning etc Change-Id: Iff8f36d67c96674d354a501b26640f73c15ce58d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Sérgio Martins <iamsergio@gmail.com>
* QHash/QSet: add erase(const_iterator)Marc Mutz2015-12-194-14/+43
| | | | | | | | | | | | This is the signature the functions have in C++11. For the std containers, this is just convenience, but for Qt containers with their implicit sharing problem, the combination of erase() with constFind() can delay a detach until absolutely necessary. [ChangeLog][QtCore][QHash/QSet] Added erase(const_iterator). Change-Id: I2fc841c664cd7515b0f56fd7210fcd17c37f9014 Reviewed-by: David Faure <david.faure@kdab.com>
* Fix linux-clang build.Erik Verbruggen2015-12-191-0/+1
| | | | | | | | | Clang's integrated assembler does not accept this assembler syntax, so tell it to only run the preprocessor, and pipe everything through the system assembler. Change-Id: I6bd884473e634837b47480546a1d1d8d62e7a2b6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Fix namespaced build on OSX.Erik Verbruggen2015-12-191-1/+1
| | | | | Change-Id: I1fc2195792eeea1addcb262aca37e59107a131c5 Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
* Use qEnvironmentVariableIntValue() instead of qgetenv().toInt().Sérgio Martins2015-12-183-5/+5
| | | | | | | It's much faster. Change-Id: I55e0a23f9086fe2e7872e81dc0f5e10105ed124a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* De-duplicate QGraphicsItemPrivate vtableMarc Mutz2015-12-182-2/+8
| | | | | | | | | | | | | | | | | | | | By making the destructor (usually the first non-inline, non-pure, virtual function, and therefore the trigger for most compilers to emit the vtable and type_info structures for the class in that TU) out-of-line, vtables and, more importantly, type_info structures for the class are pinned to a single TU. This prevents false negative dynamic_cast and catch evaluation. Since QGraphicsItemPrivate is already exported, users of this class are unaffected by the change, and since it's private API, we don't need to avoid adding code to the out-of-line destructor until Qt 6. Also saves ~2.5KiB in text size on optimized GCC 4.9 Linux AMD64 builds. Task-number: QTBUG-45582 Change-Id: Ibb404a43d5464e8e280ccebd5f95719852f5a986 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Merge "Merge remote-tracking branch 'origin/5.6' into dev" into refs/staging/devLiang Qi2015-12-1870-339/+831
|\
| * Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-12-1870-339/+831
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/painting/painting.pri src/plugins/platforms/xcb/qxcbconnection.cpp tests/auto/corelib/thread/qthreadstorage/qthreadstorage.pro tests/auto/corelib/tools/qlocale/test/test.pro tests/auto/gui/kernel/qwindow/tst_qwindow.cpp tools/configure/environment.cpp Change-Id: I9c40f458b89b2c206de2d2c24e90b5f679c93495
| | * Windows: Restore window geometry after normal->maximized->fullscreen->normal.Friedemann Kleint2015-12-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Do not save geometry when going from maximized->fullscreen - Use SW_SHOWNA instead SW_SHOWNOACTIVATE as otherwise the maximized geometry is restored. - Add a test for Windows. Task-number: QTBUG-49709 Change-Id: Ic81e7398ee90d499a50b02192a45cb09276a2105 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| | * Windows: Clear key recorder when application becomes inactive.Friedemann Kleint2015-12-171-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | When keys are pressed and the application becomes inactive before they are released, the stored state becomes inconsistent. Task-number: QTBUG-49930 Change-Id: Ide86b1d9052df060f30f7c02b81a4f2ae15d28e7 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| | * Windows: fix fullscreen OpenGL window issues with an opt-in functionAndy Shaw2015-12-175-2/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows automatically disables DWM for opengl windows that have the exact dimensions of the primary screen. This causes numerous issues, such as menus and popups not showing up, and alt+tab misbehavior. Adding a one pixel border via WS_BORDER solves all of these issues. This is done by a QWindowsWindowFunctions to make it opt-in as turning it on can cause an unwanted change in the look of the window so it is up to the user to decide if they want this. [ChangeLog][Platform Specific Changes][Windows] Add a function to QWindowsWindowFunctions to enable working around a limitation with showing other top level windows when showing a fullscreen OpenGL based window. Task-number: QTBUG-41309 Task-number: QTBUG-41883 Task-number: QTBUG-42410 Change-Id: I8c5c785f5024737cd034b2b703671632a8102700 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Use Q_CONSTRUCTOR_FUNCTION instead of doing the same manuallyAllan Sandfeld Jensen2015-12-172-23/+7
| | | | | | | | | | | | | | | | | | | | | | | | Use the macro we have that does exactly what we want without the boiler plate code. Change-Id: I25c67a71f83f91f50128c8a54033ee53ad28e88a Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
| | * iOS: Clear focusObject if first responder is set to nullMarkus Goetz2015-12-171-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | In certain cases we were still showing a cursor in a TextInput even though the keyboard was hidden programmatically. Change-Id: I48ebb6b8bc0382236b1ea5835e68eae48ece2b4f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| | * iOS: Don't hide keyboard on "Done" button when focus object has changedMarkus Goetz2015-12-171-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the focus object changed programmatically for example to the next input field in a window, we want to keep the keyboard open. This strangely only worked if the inputs had different IM hints because this made the keyboard appear again. Change-Id: I52e66bb7d2ff97ae7084173769d9b5c2d0c549b5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| | * iOS: notify application when edit menu is closedRichard Moe Gustavsen2015-12-171-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | The edit menu will also close if the user taps outside it, not only when selecting a menu item. But we never caught this case, which left QMenu to belive that it was still open. Change-Id: Iae071b4fc5fdc44d7d05b4dd767042907e337957 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| | * iOS: include marked text when reporting IM textInRange and endOfDocumentRichard Moe Gustavsen2015-12-171-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [UITextInput textInRange] is sparsely documented, but it turns out that unconfirmed marked text should be seen as a part of the text document. This is different from Qt IM (ImSurroundingText), which handles marked text on the side. The reason we can assume this is that the range we are given as argument to textInRange exceeds the documents length when having marked text appended to the end, suggesting that it tries to read / verify the current marked text. In addition, keyboards like Japanese-Kana will not update and function correctly unless marked text is included. Note that the docs seems to imply that you cannot have marked text and text selection at the same time, unless the selection is contained within the marked text (using the dedicated selectedRange argument to setMarkedText). If this turns out to be incorrect, we might need to adjust the methods dealing with selection to also include marked text as well. Task-number: QTBUG-49946 Change-Id: Ifedd792ec66db435806f57fca157e1abbbf121a8 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| | * Android: Fix crash at exitBogDan Vatra2015-12-173-3/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Delay the exit call until Java part finishes the execution. We must be sure all the threads are stopped (hanged), when we call exit, otherwise java thread will try to use static vars that are freed by the qt thread. We also need to call exit from Qt thread, otherwise Qt will complain about it. Change-Id: Ia1e7a4d7d56c39d38313f040aab618ec5a68dfb6 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| | * QOpenGLTexture: fix the number of faces returned by faces()Giuseppe D'Angelo2015-12-161-0/+2
| | | | | | | | | | | | | | | Change-Id: I7bf08eee357fb9641ff9118edcf97809f98605b7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | * QOpenGLTexture: check textureId for knowing whether a texture was createdGiuseppe D'Angelo2015-12-161-1/+1
| | | | | | | | | | | | | | | Change-Id: I0775ad9538a7793dc6628abe4556404634ae0462 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | * QOpenGLTexturePrivate: remove unused member variableGiuseppe D'Angelo2015-12-161-1/+0
| | | | | | | | | | | | | | | Change-Id: I4d897c522087654649547c0ca4750ba4dbfa5cbf Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | * Cache font fallback families to reduce startup timeKonstantin Ritt2015-12-161-3/+52
| | | | | | | | | | | | | | | Change-Id: I593708d76d513028ba1b59621b83cbc32e63d4e6 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * DirectWrite: Implement transforms for grayscale aaEskil Abrahamsen Blomfeldt2015-12-162-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When cleartype rendering was turned off, transforms would be badly broken with the DirectWrite engine because we did not implement the appropriate code path there. In Qt 5.6, this would become especially visible, since DirectWrite is always used when high-dpi scaling is enabled. [ChangeLog][Windows][DirectWrite] Added transformation support to DirectWrite engine when using grayscale antialiasing. Task-number: QTBUG-49562 Change-Id: Ic5f7dd5b020a85ed1b6473c511a67cdb5ed5cedb Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
| | * DirectWrite: Fix clipping bug with grayscale AA renderingEskil Abrahamsen Blomfeldt2015-12-161-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code is using the same rasterizer for A8 and A32 glyphs, in the former case it's just converting to grayscale afterwards. Therefore, we need to pad the glyph cache with the same number of pixels for both cases. [ChangeLog][Windows][DirectWrite] Fixed clipping bug when rendering unhinted text with grayscale antialiasing. Task-number: QTBUG-49562 Change-Id: If85ff768451116278f6d2ccd1e77b5ce0664087d Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * winrt: Align error code handling with WinCEMaurice Kalinowski2015-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Both specify 87 (invalid parameter) as error code for non existing shared memory. Change-Id: I02b02da106e9e4e574a21359c25bc2a03e385a7c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| | * Use the cached font fallback families list in QFont::defaultFamily()Konstantin Ritt2015-12-151-2/+4
| | | | | | | | | | | | | | | | | | Change-Id: Iba1d9db05f7a09aabb81d0429e6081cd7710d381 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * QWinRTFontDatabase: Return the base class' fallbacksForFamilyKonstantin Ritt2015-12-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | instead of an empty list. Even if QBasicFontDatabase::fallbacksForFamily() returns an empty list ;) Change-Id: Ib4a63e7898d2708737dd694f0629bdb68b2eb3a1 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * Use proper class namespace in QBasicFontDatabase sub-classesKonstantin Ritt2015-12-152-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Do not assume QBasicFontDatabase doesn't reimplement fallbacksForFamily() and use the proper chaining instead. Change-Id: I822d1902843a3a13517b7025761b88439fd75ced Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * QDockAreaLayout/QPlaceHolderItem: Store geometry excluding frame.Friedemann Kleint2015-12-152-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the geometry stored for floating dock widgets in QPlaceHolderItem::topLevelRect and QDockAreaLayoutInfo::saveState() included the window frame (frame position/content area size). This does not work in the case where a floating dock widget is deleted since the geometry is determined after reparenting the widget when the frame geometry is no longer available. Change the behavior to store the geometry excluding frame to avoid such problems and adapt QDockWidgetPrivate::setWindowState() accordingly. Task-number: QTBUG-49832 Task-number: QTBUG-45780 Change-Id: I84b5c80df6e1c9e738bbb1407b9047cc84719ce0 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * Add support for reading fonts from TTC files on Windows EmbeddedAndy Shaw2015-12-151-13/+60
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-49810 Change-Id: Ibfc999a15b17899ab2c87d6741dc69b0871699bb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * QCocoaWindow - resize embedded viewsTim Blechmann2015-12-151-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when QCocoaWindow::setCocoaGeometry is called on windows embedded into a native cocoa gui, QPlatformWindow::setGeometry does not apply the geometry. we therefore need to set the frame on the embedded view manually. related tasks: Task-number: QTBUG-47632 Task-number: QTBUG-45269 Change-Id: I976e4606d36bb4afc74b0834105bceab8a6f8cbd Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
| | * QtNetwork: Standardize error message about IPv6 addresses for nameservers.v5.6.0-beta1Friedemann Kleint2015-12-144-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | Add a const char * message with QDnsLookupRunnable's translation context and use that for untranslated warnings and errorString. Change-Id: I1b6c9fb259fb9ff824a0c3829b2c00c36aaecdfa Reviewed-by: Richard J. Moore <rich@kde.org>
| | * xcb: Don't try to detect cases where the WM restricts geometry changesTor Arne Vestbø2015-12-141-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | This caused issues in upstream tests that didn't expect to have their geometry requests not being respected by the WM. Task-number: QTBUG-49912 Change-Id: Iec99f341d81488de6026f04c99dff45a0d3f8587 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * winrt: Avoid blocking for the first processEvents runMaurice Kalinowski2015-12-141-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calling WaitForMultipleObjectsEx, do not use a timeout for the initial call. This saves around 10% of blocking invocations in the QEventLoop autotests. Change-Id: Ib24436ed11de1865e31f9ff0ddf6ce1bc5562f42 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| | * remove visual studio specific argumentMaurice Kalinowski2015-12-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "-ServerName:" is only used for Visual Studio and causes bad side- effects when using QCommandLineParser. Change-Id: Ifef652bbb65df9279a39ae3c74ddbb563c87bd90 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>