Commit Graph

26468 Commits

Author SHA1 Message Date
Liang Qi
beb65dcd79 Merge remote-tracking branch 'origin/5.6' into dev
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
2015-12-18 08:37:31 +01:00
Louai Al-Khanji
3fc1002489 QAndroidEventDispatcher: Remove dependency on select(2)
Change-Id: I4c23816a3a665cf2fa40705efe721b6f43fa3146
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2015-12-18 02:13:25 +00:00
Tor Arne Vestbø
420438b5d3 iOS: Implement support for QApplication::beep()
Vibrates the device or plays an alert sound on devices
that do not support vibration.

The other implementations of beep() have been moved to
QPlatformIntegration as a proper API instead of having
them as invokables in QPlatformNativeInterface.

Change-Id: Ic597dbef04b46d49862b070e78ddfc0d763829a2
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Kai Uwe Broulik <kde@privat.broulik.de>
2015-12-17 17:14:34 +00:00
Marc Mutz
a1bb00bece QScrollerPrivate: fix some const-incorrectnesses
Change-Id: Iad7ea926b90efa54ef94c04ac78e38254d9b5c98
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-17 16:48:31 +00:00
Marc Mutz
46ed6c058a QGraphicsScene: replace QList::prepend()s with appends()
Use the new reverse_iterator support in QList to
avoid building a QList with prepend()ing, using
append() instead.

Change-Id: Ia1f6d0ecc08a824f11d93a6fd4077b11b1b0f786
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-17 16:48:05 +00:00
Marc Mutz
bb7bc4a05e QApplication: replace QList::prepend()s with appends()
Use the new reverse_iterator support in QList to
avoid building a QList with prepend()ing, using
append() instead.

Change-Id: I6b9d9b1a9941cf2e6cc39ad2d9097fdc629c24bc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-17 16:47:59 +00:00
Marc Mutz
404b1fd8b3 QFlickGestureRecognizer: remove a useless check
There's no point in checking isEmpty() to prevent a for loop from
executing, esp. if the checking involves copying the container
and calling an out-of-line function to get said copy.

Just fall through the for loop.

Change-Id: If6c689ff4bcd685bc645b4fb3f2c15ce5d5945af
Reviewed-by: Sérgio Martins <iamsergio@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-17 16:47:48 +00:00
Friedemann Kleint
e3288f246b Windows: Restore window geometry after normal->maximized->fullscreen->normal.
- 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>
2015-12-17 14:58:29 +00:00
Friedemann Kleint
ac5c2aaf35 Windows: Clear key recorder when application becomes inactive.
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>
2015-12-17 14:58:21 +00:00
Andy Shaw
69839e55c1 Windows: fix fullscreen OpenGL window issues with an opt-in function
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>
2015-12-17 14:43:38 +00:00
Edward Welbourne
4815f1cda4 qmake: Combine two variables into an array to simplify a loop.
Change-Id: If787ed4a72c5fb91bb4a9e908ab3f6443b9358b9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-17 13:47:37 +00:00
Edward Welbourne
d6efc0aab3 qmake: teach findMocs to handle backslash-newline gracefully.
Change-Id: Id71352c0cf71ab84bd81d4f3d11bb19dc7965903
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-17 13:47:33 +00:00
Allan Sandfeld Jensen
879409fd0f Use Q_CONSTRUCTOR_FUNCTION instead of doing the same manually
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>
2015-12-17 13:47:26 +00:00
Markus Goetz
e78ca787ae iOS: Clear focusObject if first responder is set to null
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>
2015-12-17 13:47:23 +00:00
Markus Goetz
8885344ad4 iOS: Don't hide keyboard on "Done" button when focus object has changed
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>
2015-12-17 13:47:21 +00:00
Richard Moe Gustavsen
bace82bffe iOS: notify application when edit menu is closed
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>
2015-12-17 13:47:21 +00:00
Richard Moe Gustavsen
e362774df2 iOS: include marked text when reporting IM textInRange and endOfDocument
[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>
2015-12-17 13:47:14 +00:00
BogDan Vatra
0b10d41c3d Android: Fix crash at exit
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>
2015-12-17 13:46:14 +00:00
Shawn Rutledge
13e499893c eglfs kms: allow overriding physical display size via env variables
Implement the reading of the QT_QPA_EGLFS_PHYSICAL_WIDTH and
QT_QPA_EGLFS_PHYSICAL_HEIGHT as documented.

Change-Id: I862a03e9d05dcd15fb6a245c93ebd3e028de0c47
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-12-17 01:12:16 +00:00
Allan Sandfeld Jensen
d290424f2a NEON optimized bilinear sampling
Adds NEON version of interpolate_4_pixels used by smooth upscaling, and
bilinear sampling.

The SSE2 version is reordered to match the NEON version so they have
the same order of operations and a faster version that loads directly
into vector registers.

Testing is extended so we have a test of smoothness that can catch more
possible mistakes.

Change-Id: I0de4aecf5cb79468e7c8f19f421aa24b2955547c
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
2015-12-17 01:11:57 +00:00
Tor Arne Vestbø
3e892e4a97 iOS: Switch backingstore to use raster paint engine, not GL
Now that more of the raster operations are NEON-optimized this should
be acceptable. The switch enables antialiased drawing, and makes iOS
in line with other platforms in having QBackingStore backed by a QImage.

The use of QImage also allows us to remove code from the backingstore
implementation that was only needed to support the composeAndFlush
code path.

The common parts of a raster backingstore implementation have been
factored out into QRasterBackingStore in platformsupport, which can
be shared with more platforms in the future.

[ChangeLog][iOS] QBackingStore now uses the raster paint engine
instead of the OpenGL paint engine, enabling improved antialiased
drawing. In case of performance regressions, the old code path
can be enabled by setting the window's surface type to
QSurface::OpenGLSurface.

Task-number: QTBUG-35271
Change-Id: Ia300b9a5edf8dc0b4bfb99d84ed3c23a8523c267
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-12-17 01:11:52 +00:00
Giuseppe D'Angelo
08ee579cf0 QOpenGLTexture: fix the number of faces returned by faces()
Change-Id: I7bf08eee357fb9641ff9118edcf97809f98605b7
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-12-16 21:46:08 +00:00
Giuseppe D'Angelo
a5b254ff23 QOpenGLTexture: check textureId for knowing whether a texture was created
Change-Id: I0775ad9538a7793dc6628abe4556404634ae0462
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-12-16 21:46:05 +00:00
Giuseppe D'Angelo
7ec40ab52e QOpenGLTexturePrivate: remove unused member variable
Change-Id: I4d897c522087654649547c0ca4750ba4dbfa5cbf
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-12-16 21:46:02 +00:00
Marc Mutz
4891fd02c5 QGraphicsAnchorLayout: replace three loops over QHash::keys() with QHash::const_iterator loops
Quite obviously faster (doesn't need to populate a QList first,
just to iterate over it).

Also saves 1.5KiB text on optimized GCC 4.9 Linux AMD64 builds.

Change-Id: If4c7af80165a6027d39359bac22df30e7ca09815
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 17:42:29 +00:00
Marc Mutz
f2d8d9daee QGraphicsAnchorLayout: replace a Q_FOREACH with std::accumulate
Saves ~0.5KiB in text size on optimized Linux AMD64 GCC 4.9 builds.

Change-Id: Iba2c02eed44f1ee3521bc49fe7afae9c2e916fdc
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-16 17:42:21 +00:00
Marc Mutz
2cc2bcca94 QGraphicsAnchorLayout: own includes go first
... to check that they compile stand-alone.

Change-Id: I10f651125c17ea64c631f2bede4332ea71d50a10
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 17:42:13 +00:00
Marc Mutz
d8c996120c QFileDialogPrivate::restoreWidgetState(): use range-erase instead of while pop_front()
Depending on the number of popped arguments, repeated
pop_front()s could turn quadratic even with QList.

Change-Id: I1f29af4a61f0f8e13253807d2f208c7911e71378
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 17:42:02 +00:00
Marc Mutz
0516487237 QtWidgets: replace some index-based for loops with C++11 range-for
This needs to be handled a bit carefully, because Qt containers
will detach upon being iteratoed over using range-for.

In the cases of this patch, that cannot happen, because all
containers are marked as const (either by this patch or before).

Separate patches will deal with other situations.

Apart from being more readable, range-for loops are also the
most efficient for loop.

This patch shaves almost 2K of text size off an optimized Linux
AMD64 GCC 4.9 build.

Change-Id: I53810c7b25420b4fd449d20c90c07503c5e76a66
Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 17:41:50 +00:00
Marc Mutz
b697518634 QtWidgets: replace some Q_FOREACH loops with C++11 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 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 almost 3K of text size off an optimized Linux
AMD64 GCC 4.9 build.

Change-Id: I7b1d41db4d9b5db8b515cb75686dc5135177da68
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 17:41:37 +00:00
Oswald Buddenhagen
efcd4d6f86 ensure that we don't leak QT_TOOL_ENV beyond qt_tool.prf
the variable is later re-used by qtPrepareTool(), so the tools used to
build the tool would get excess variables passed.

Change-Id: Ib1bdd2211b4a8615e2be9ba0310822f373f5efb0
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-12-16 13:05:12 +00:00
Konstantin Ritt
e664251a77 Cache font fallback families to reduce startup time
Change-Id: I593708d76d513028ba1b59621b83cbc32e63d4e6
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 12:46:06 +00:00
hjk
2d3b04e4f6 Sanitize JSON test data
Strings do not have to be overly specific to test parser function.

Change-Id: I345dfec7fb4b8004661f6757cfd53b428ad87b6b
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-16 08:54:57 +00:00
Eskil Abrahamsen Blomfeldt
8a401371ea DirectWrite: Implement transforms for grayscale aa
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>
2015-12-16 04:54:45 +00:00
Eskil Abrahamsen Blomfeldt
a6ef446d4c DirectWrite: Fix clipping bug with grayscale AA rendering
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>
2015-12-16 04:54:35 +00:00
Marc Mutz
03356fd17a QMessageBox: optimize textToCopy string construction
1. Keep 'separator' a QLatin1String.
   - saves at least two memory allocations
   - necessitates carrying the \n previously prepended to it
     around explicitly
2. Start adding to 'textToCopy' with op+=
   - saves one allocation, costs one -> ±0
   - preallocates more capacity than if we started with
     assignment
3. Collapse three unconditional op+= into one
   - more efficient usage of QStringBuilder
4. Don't collect button texts in a separate variable, but
   append to 'textToCopy' directly.
   - saves at least one memory allocation, probably more
     since the growth increments of 'textToCopy' should
     be larger (due to more content) than those of a new
     variable.

Also replace index-based iteration over the buttons with
C++11 range-for over a const QList. Avoids the detach that
happened previously, due to use of op[] instead of at(),
but frankly, I was just too lazy to separate this change.

Change-Id: I27a46a6a163c16d773124f140e085325b17ce5d1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-12-15 17:50:38 +00:00
Maurice Kalinowski
44c6c3ae27 winrt: Align error code handling with WinCE
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>
2015-12-15 16:51:49 +00:00
Edward Welbourne
935ddbd3a2 qmake: simplify file-reading loop in findMocs
Change-Id: If436215c6041551782750f107021fcccbd447b32
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-15 16:40:15 +00:00
Edward Welbourne
5e7492325a qmake: teach moc-detector to handle C++-11 raw strings
As for the #include-parser, the moc-detector's minimal C preprocessor
could be confused by a raw string into ignoring large chunks of code.

Change-Id: Id688e9a1f04628ce75a51a7d15269078c734288e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-15 16:40:08 +00:00
Edward Welbourne
209a26c6c4 qmake: Fix comment false-alarm bug in findMocs().
If a / wasn't part of a comment-start, it and the character after it
were none the less stepped over.  If the character after started an
enclosure, this would duly be missed, leading to mis-parsing of the
subsequent text.  As for similar bug recently fixed in findDeps().

Change-Id: Ie5329ec633c23a554b42a6351723c980e27fb9a9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-15 16:40:02 +00:00
Oswald Buddenhagen
769027dcb3 don't call qtAddToolEnv() directly
qtPrepareTool() does it anyway, so this saves repeated manipulations.
for now, this is just nicer, but soon it will be a requirement.

Change-Id: I5184e0e4597c6d5a4d7dd4cc4d81e7f742a79fc8
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-12-15 16:34:47 +00:00
YAMAMOTO Atsushi
786984e7e4 Windows: Fix QWindowsInputContext for Japanese IME.
Change the QWindowsInputContext::composition if it is called
with lParam has flags GCS_RESULTSTR and GCS_DELTASTART,
it doesn't call endContextComposition.

Task-number: QTBUG-49955
Change-Id: I2035c4b3c1e947c5757d7532150798963fc39012
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Takumi ASAKI <takumi.asaki@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
2015-12-15 14:11:56 +00:00
Friedemann Kleint
16a73bca5d Testlib: Gather methods in a class.
In tests with many data sets and init()/cleanup() functions, a significant
time is spent looking up the methods "init"/"cleanup"and the test methods
in qInvokeTestMethodDataEntry().

Introduce a class TestMethods that aggregates the optional methods and the
test methods as a std::vector<QMetaMethod>. Its method list can be populated
either by inspecting the QMetaObject or from the command line.
The class is instantiated on the stack.

Previously, 2 data structures existed for storing the methods to execute
obtained from the command line (array of class TestFunction and an exported
StringList testFunctions for QML).

Remove the custom TestFunction and use only the (QML) testFunctions list
for populating the new class.

Speeds up tst_QChar::normalization() from 340ms to 300ms on an average
Linux machine.

Task-number: QTBUG-38890
Change-Id: I80b488e7249ce031b6d6c8442e53aa87bd2edd42
Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2015-12-15 14:11:37 +00:00
hjk
85eb7d9897 Complete a test for QFilePrivate::fileName offset on Linux
This extends the test suite introduced in 497f0af1f7 for
a known-to-be-good case also for 32 bit systems.

Change-Id: Ia231bcb9b0102c28483d932be18767662b7a6afd
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2015-12-15 12:40:54 +00:00
Konstantin Ritt
b8189ddd80 Use the cached font fallback families list in QFont::defaultFamily()
Change-Id: Iba1d9db05f7a09aabb81d0429e6081cd7710d381
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-15 12:06:06 +00:00
Konstantin Ritt
674b0e2382 QWinRTFontDatabase: Return the base class' fallbacksForFamily
instead of an empty list.
Even if QBasicFontDatabase::fallbacksForFamily() returns an empty list ;)

Change-Id: Ib4a63e7898d2708737dd694f0629bdb68b2eb3a1
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-12-15 12:05:53 +00:00
Konstantin Ritt
b0e422aa52 Use proper class namespace in QBasicFontDatabase sub-classes
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>
2015-12-15 12:05:44 +00:00
Friedemann Kleint
bece6fa0b9 QDockAreaLayout/QPlaceHolderItem: Store geometry excluding frame.
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>
2015-12-15 12:05:26 +00:00
Andy Shaw
482165057d Add support for reading fonts from TTC files on Windows Embedded
Task-number: QTBUG-49810
Change-Id: Ibfc999a15b17899ab2c87d6741dc69b0871699bb
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-12-15 11:37:02 +00:00
Tim Blechmann
0150cd3617 QCocoaWindow - resize embedded views
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>
2015-12-15 10:00:20 +00:00