Commit Graph

19378 Commits

Author SHA1 Message Date
Alex Trotsenko
edfac1a9ed Make QRingBuffer::append() not leave empty arrays in buffer list
Change-Id: I4c5af33488a70996299289ec2b953b7bf3b2c428
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-23 07:31:09 +02:00
Simon Sasburg
3905c6f00d Add QFileDevice::MemoryMapFlags::MapPrivateOption flag.
Passing this flag to QFileDevice::map() will allow writes to the mapped memory
without modifying the file that was mapped. These writes will be lost when the
memory is unmapped.

Change-Id: I7d46b044fc370585de8c06fdb4059f1f1be12d7d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-23 07:20:40 +02:00
Friedemann Kleint
f713bd3e19 Fix warnings about integer conversion in qloggingregistry.cpp.
io\qloggingregistry.cpp(134) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data
io\qloggingregistry.cpp(138) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data
io\qloggingregistry.cpp(142) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data

Change-Id: Ic9787aa8acb5cb4440c62bbb143f7c2b7fdad385
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-07-22 14:46:00 +02:00
Kai Koehne
4fb0ca4209 QDebug: Add a doc section about formatting options
Change-Id: I43cb965f9f45e8a50c767c7e9035811c90e6aab3
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
2014-07-22 14:45:27 +02:00
Eskil Abrahamsen Blomfeldt
5cb581b3b4 Windows: Default to MS Shell Dlg 2
In Qt 4, the default font for unrecognized font families would
be MS Shell Dlg 2, which is an alias for the default UI font on
the system. However, QFont::defaultFamily() had not been updated
to match this and would return MS Sans Serif instead, which was
the default UI font on Windows 9x. This is a raster font and not
really suitable for modern UIs.

In Qt 5, the problem with defaultFamily() was fixed, but Arial would
be returned as the default instead.

Enter change afd6313755 which tried
to revert the change to defaultFamily() and return MS Sans Serif
again. However, since it changed the actual default family and not
just the one returned by the function, this broke several tests
which depended on having a scalable default font.

This change sets the default family to MS Shell Dlg 2 like in Qt 4.
The fact that defaultFamily() now reports the actual default is
regarded as a bug fix, so we will not change this. Fixes some
XFAILs in qtdeclarative.

[ChangeLog][Windows] Set default fallback font to MS Shell Dlg 2
instead of Arial.

Task-number: QTBUG-39961
Change-Id: Ib08dfc7f2c00475d54d565bb933d1d2f8a3a3d90
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2014-07-22 09:09:36 +02:00
Friedemann Kleint
43e8c1896d Improve debug output of QImage, QPixmap and QIcon.
Task-number: QTBUG-38858
Change-Id: Ie45d595478f971c7ed973d911c65484d947d2a60
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-07-21 22:29:03 +02:00
Kai Koehne
c76a91ebdc Improve debugging output for QLoggingCategory
Make sure that the source the rules are loaded from is printed before
any syntax errors.

Change-Id: Id7ced1a346dd0d8501eab93ac00e1f432ca6b703
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-21 22:26:16 +02:00
Kai Koehne
1f9de90b4e Add example qtlogging.conf file to QLoggingCategory documentation
Change-Id: I0ceeb8afa711cc7bc1378287b0d550871e5bfd9d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-21 22:26:08 +02:00
BogDan Vatra
b379161565 Android: Add uninstall option.
Uninstall option will uninstall the test afer has been executed.
It is useful when you are using your own phone to execute the tests.

Change-Id: I2a3f6c3a93099d70c98f9ce059da22c409b55843
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-21 20:38:00 +02:00
BogDan Vatra
e8a97d8743 Android: Use androiddeployqt from qt path.
Change-Id: I085f2b20d1f53e3f5caf0b208f64a75c26a89219
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-21 20:37:51 +02:00
Fawzi Mohamed
a09ef38456 resoureces.prf: use small resources (though cpp file) for xcode
currently there isn't a clean solution yet to support object files
or architecture specific files during the preprocess step when
using the xcode generator.
This fixes ios resources (but will break with large resources).

Task-number: QTBUG-39835
Change-Id: If620ab0c3b5c1f92db8f7b4740061c807730db57
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-07-21 15:45:30 +02:00
Tor Arne Vestbø
3c5d405f34 iOS: Detect external screen connections and expose as additional QScreen
The additional QScreen can not be used for anything yet, since we don't
set up a window and root view controller for it.

Change-Id: I335b796bdd89fc58a27ec4e20c5ed355be0cab66
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-07-21 15:27:50 +02:00
Tor Arne Vestbø
f1724e4d8a iOS: Add helper for getting the iOS platform integration instance
Change-Id: I550d345ab0f8bcba1225c425464e198d43d9fda8
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-07-21 15:11:07 +02:00
Tor Arne Vestbø
5f9e1b079c iOS: Fix compilation with Xcode6/iOS8 SDK
We were implicitly including OpenGLES/ES2/glext.h prior to iOS8.

Change-Id: I353badb5c209b9ebc57c1718223c164590705064
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-07-21 15:11:03 +02:00
Tor Arne Vestbø
f86993cdee iOS: Refactor qioswindow.mm into quiview.mm and quiview_accessibility.mm
Change-Id: Ib6297e37d67b2c0ea251ae054b8ff877af2673a5
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-07-21 15:10:59 +02:00
Friedemann Kleint
7daf920e97 Fusion style: Use QStyleHelper::dpiScaled() where applicable.
When running unscaled on a high resolution display, some items
are too small. This patch converts most values returned by
QFusionStyle::pixelMetric() via QStyleHelper::dpiScaled(). Some
adjustments have been done to RadioButton, CheckBox, Slider and
SpinBox.

On systems with 96dpi, FusionStyle should still look exactly as
before this patch.

Task-number: QTBUG-40277
Task-number: QTBUG-38858
Change-Id: I2683a8a4db615d01c08f4d6f559417b995c0eb1a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2014-07-21 11:40:08 +02:00
Thiago Macieira
40d3ab564b Add support for CONFIG += c++14
Most compilers out in the wild still don't support the flag, so we need
to compare the version number anyway. This also makes it ready for
whenever compilers start supporting -std=c++14, something we should fix
for C++11 too.

It overrides the CXX11 variable for two reasons:
 1) we reuse the mechanics in c++11.prf
 2) we avoid c++11.prf overriding the flag if qmake decides to process
    it later (CONFIG += c++14 is additive)

Change-Id: I79b6523fd9017483f2474634d1c09f2fd5ea039d
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-07-20 04:32:44 +02:00
Thiago Macieira
4a99beb7ef "Beautify" the two-pass RCC execution
Use newlines in the Makefile for multiple commands.

Change-Id: If03617343ccf7e525ffdc27ad9df55718c63d77f
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-20 04:32:41 +02:00
Konstantin Ritt
461c2b2004 Update bundled HarfBuzz-NG copy to 0.9.32
- Unicode 7.0 support
- New shapers
- Multiple improvements in Arabic, Indic, and Hebrew shapers
- Build fixes, optimizations, etc.

Change-Id: I0ba14b619c3e6fb35cddd9d65e694af41197d6ae
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-20 01:12:24 +02:00
Alex Trotsenko
0078013693 QRingBuffer: purge unused part of the api
Remove unused and untested class functions.

Change-Id: I8eb963db0ae4be9b5cdde91f6747c4a1db4ea649
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-18 18:29:19 +02:00
Friedemann Kleint
ec190b0da7 Fix up existing high DPI manual test.
Compile on Windows, add command line options to activate the
various tests.

Task-number: QTBUG-38858
Change-Id: I38c6a9a6711831b2bd8b6ea051dd19615cc911a1
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-07-18 16:45:44 +02:00
Friedemann Kleint
f547381806 Implement QApplication::topLevelAt() using QGuiApplication::topLevelAt().
Reducing code duplication, preparing for High-DPI support.

Task-number: QTBUG-38858
Change-Id: Id0ed12db4b5cadd0eef79afd0ac62f58a7b01901
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-07-18 12:10:56 +02:00
Topi Reinio
fe099b6383 qdoc: Validate index file paths
Check for existence of the paths added by 'indexes'
documentation configuration command, and generate
warnings accordingly. Also, ensure that the strings
added with 'depends' command contain no duplicates.

Change-Id: I66a3d1b25907567bb5bfc72b78a8009d7bd8e067
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2014-07-18 10:14:42 +02:00
Topi Reinio
d15309edee qdoc: Support use of \value command outside \enum topic.
Even though qdoc accepts the \value command(s) anywhere in the
documentation and generates tables for them, the produced output was
invalid for documentation topics other than \enum.

This change fixes the issue by not trying to resolve the enumeration
values and removing the 'Value' column for generated tables when the
\value command is used outside c++ enum documentation topic.

This enables, for example, the use of the \value command for
documenting acceptable values for QML enumeration properties,
without having to use custom lists or tables.

Task-number: QTBUG-35019
Change-Id: I597b2f9d7d03d4ab72f276752ddf53e1c405313c
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-07-18 10:14:31 +02:00
Friedemann Kleint
9c774b7621 QItemSelectionModel: Sort persistent model indexes taking parent into account.
When sorting a tree model with large sub-trees and and a large
selection, the existing sort function would mix indexes of
different parents, causing a fragmented selection,
which slows down painting.

Task-number: QTBUG-33954
Change-Id: Ia585fc1e5de9a1a3f6124a58c9c7c40fcbdbfb6a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-07-17 11:26:29 +02:00
Jerome Pasion
83c6e74a0c QDoc: Allow the listing of uppercase- and lowercase-named items in list.
-QML basic types are lowercase-named while object types are uppercased.
-reference page for QML types should list both.
-caveat: simple implementation means the uppercase items are listed
 first.

Change-Id: I9092ad0cd9e79c4d3f8b794ac5d68879ce6338a5
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-07-17 10:46:23 +02:00
hjk
c87a894927 RCC: Use macros not defined in qglobal.h
This prevents conflicts in case of link time optimizations or
precompiled headers are used since we don't include qglobal.h
in the generated code.

Change-Id: I4266c8ae38e6eafefd28b3bde5cb725a24d67ea0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-16 17:40:14 +02:00
Kai Koehne
bb0263eb80 rcc: Prevent CRLF conversion on Windows for -binary
Fix an issue on Windows where

  rcc -binary project.qrc >project.rcc

resulted in a corrupted file (\n was automatically replaced with \r\n).

This is caused by Qt using fwrite internally, which will automatically
replace linefeed with carriage-return for streams opened in text mode.

The fix forces stdout to binary mode in this case.

Task-number: QTBUG-39422
Change-Id: Ib5b5e82db922dc389d160b0115dbafe8641c95fd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-16 10:57:10 +02:00
Michael Palimaka
9de7b4d750 Canonicalize inputs when filtering default system paths
Contrary to expectations, various <foo>-config tools sometimes spit out
denormalized paths, which breaks the text-based filtering, as it relies
on exact matches with normalized paths.

Change-Id: I0613ed24953a3bde19939d28d09572c88b43a361
Task-number: QTBUG-39216
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-15 20:18:59 +02:00
Jerome Pasion
0e4807455a QDoc: Allow QDoc to collect all QML basic types in a map.
-needed if a list of just QML basic types is needed.
-adding QML basic types to map of QML types.
-generating the list of "qmlbasictypes" also now supported.
-part of the fix for QTBUG-32871

Change-Id: Id291982a5684645b2b5e75256be673c1701e60b1
Task-number: QTBUG-32871
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-07-15 14:13:07 +02:00
Andrew Knight
4aec47b1eb windows: Fix ANGLE function resolution in static builds
The EGL/GLES functions are now resolved statically when needed.

Task-number: QTBUG-40199
Change-Id: I58c675b1c410708237475e1e5d6609ca7d6713f1
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-07-15 13:23:58 +02:00
Kai Koehne
87aceebf42 QDebug: Add resetFormat()
Similar to QTextStream::reset(), this resets the stream format to the
defaults. Its primary use is inside custom operator<< implementations,
where you'd want to have a fixed format regardless of the current
stream state.

Change-Id: I421d76c61f164579bb90cf4195cc5376e2dcf0f3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-15 13:06:38 +02:00
Friedemann Kleint
45854c75aa QGroupBox: Exclude top level widgets from child event handling.
Prevent the QGroupBox from changing the enabled state of
dialogs parented on it.

Task-number: QTBUG-40132
Change-Id: I91cc6ccf5ade0b3a491020ed947d4aceca62d7b6
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2014-07-15 11:24:47 +02:00
Frederik Gladhorn
08fd2a724d Remove outdated comment
Change-Id: I4d662318acf072ce9cbfd9c024f5316a0617f2e6
Reviewed-by: David Faure <david.faure@kdab.com>
2014-07-15 11:04:24 +02:00
Friedemann Kleint
b62e22c1d9 Fix current directory setting in manual dialog test.
It was always constructing a QUrl from the string causing the warning
"Non-native QFileDialog supports only local files" with the
new QUrl-based implementations of getOpenFileUrl(), etc.

Change-Id: Idd9bb432a48865df137f8f39f53014dda150ffe9
Reviewed-by: David Faure <david.faure@kdab.com>
2014-07-15 10:40:40 +02:00
Kai Koehne
0fe2713e26 Improve QLoggingCategory example code in documentation
Don't use a qt.* category in the user documentation: These should be
reserved to Qt internal use, and also have special semantics (QtDebugMsg
by default off) that might lead to confusion.

Also, adapt the camel case naming convention for logging categories
defined by the macros. This was the (although somewhat controversial)
result of a recent discussion on the development mailing list.

Change-Id: Ic7162b47bb2d76550c766bc40dd65ce039e7e3eb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
2014-07-15 10:01:29 +02:00
Olivier Goffart
3b0c2b7c1b Examples: Add Q_DECL_OVERRIDE to overridden functions
Q_DECL_OVERRIDE (which expands to 'override' for supported compiler)
helps to declare the intent (that it is an overridden function) and
force compilation error when there is no such virtual function in the
base class.
The examples should show the best practice of having it, as it may save
the programmer quite some time in case of change of API or typo in the
function name or arguments.

This change was done automatically with
clang-modernize -add-override -override-macros

And fixed MSVC compilation by removing inline for TorrentViewDelegate::paint

Change-Id: Ice66ae93fae571266f908703d5b8892b2c1ebb1a
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2014-07-15 08:44:44 +02:00
Axel Rasmussen
6d87e3ed40 Rename QPixelFormat enum value to avoid conflict with X.h.
This commit fixes a potential compile error where pixelformat.h would
not compile if X.h from x11proto was included first, since X.h #define's
GrayScale as an integer constant.

Task-number: QTBUG-40087
Change-Id: I7208a204259c6d3a13b5d0cbc98a76bb54b8b494
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-07-14 23:03:18 +02:00
Thiago Macieira
8e69a03921 Doc: update QCoreApplication to be clear that we don't support text UI
Change-Id: Icc032470629201668c085fd74725a2965f09eb47
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-07-14 21:41:44 +02:00
Jerome Pasion
d4cd55daa2 QDoc: Prevent QDoc from outputting the brief for example pages.
Example pages' \brief do not form a complete sentence. The example
pages have proper introductions and descriptions, unlike API pages
which do use the brief information to summarize.

Change-Id: I11f1362cd05e3cf90ae8e1c3a07d2584737fd89c
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2014-07-14 17:18:19 +02:00
Shawn Rutledge
3f47becec0 Merge "Merge remote-tracking branch 'origin/5.3' into dev" into refs/staging/dev 2014-07-14 16:44:12 +02:00
Kai Koehne
f6940a7081 QLoggingCategory documentation improvements
Change-Id: I9cc16d01f62d94fa3e7869bf9bb7734c774f82e3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-14 16:44:07 +02:00
David Faure
439ee03fc5 tst_qfiledialog: ease debugging of "directoryEntered not emitted".
It can happen when the sidebar only has only one item, due to
"My Computer" being missing.

Change-Id: I2b38fef45139f1dfa20d88059e56185c3163a833
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-07-14 12:02:34 +02:00
David Faure
564eaa6640 tst_qfiledialog: extend reject-test to test getOpenFileNames etc.
So that this method is at least called once in the test :)

Change-Id: I3b5fc6b7c464d9e56264c709cfa313d475004207
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-07-14 12:02:20 +02:00
Friedemann Kleint
eb66916082 Fix some compiler warnings in benchmark tests.
main.cpp(332) : warning C4307: '*' : integral constant overflow
tst_qpainter.cpp(1293) : warning C4305: '+=' : truncation from 'double' to 'float'
tst_qpainter.cpp(1474) : warning C4305: '+=' : truncation from 'double' to 'float'
tst_qtbench.cpp(155) : warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data
main.cpp(68) : warning C4189: 'fontHeight' : local variable is initialized but not referenced

Change-Id: If6aadd50df7c5cf7d0f33791c9247730a47ddd27
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2014-07-14 10:55:55 +02:00
Frederik Gladhorn
7c495cfea9 Merge remote-tracking branch 'origin/5.3' into dev
Conflicts:
	src/gui/text/qfontengine_qpf2.cpp

Change-Id: Ib04f92c41d0edd55d3aef8fb1708d917fba0f2a8
2014-07-14 10:35:51 +02:00
Friedemann Kleint
a55b01e038 Stabilize tst_QMenu::statusTip().
Instantiate the timer on the stack to prevent it from
interfering with other tests.

Change-Id: I91ffe23b502fcddaeb6d6d3f89ea3d27b083cdb0
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-07-14 10:30:48 +02:00
Christian Strømme
b61ee210e6 Android: Simplify the jni code in QtAndroidClipboard
Let the QJNI classes manage the jni environment and cache the jni
handles. This lets us lazily cache the jni handle until we actually
need them.

Change-Id: Iced91e7cab19bdcab8581e94c6f2dd766fed47ed
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-14 02:25:29 +02:00
Christian Strømme
1220a87f8a Android: Simplify the jni code in QAndroidPlatformServices
Remove the use of QtAndroid::AttachedJNIEnv and lazily cache
the openURL() methodID on first use.

Change-Id: I601d13bc7d644d7cb2f78655ad40c7d9566cf3cb
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-14 02:24:57 +02:00
Christian Strømme
c4b1fffb22 Android: Update QSslSocketPrivate::fetchSslCertificateData()
Replaces the raw jni calls with our own jni wrappers. This allows us
to make use of the centralized cache, avoid global data storage and
use a more optimized way to attach to the jni environment.
This change also removes the JNI_OnLoad() function since it's not
used. If we need to add a JNI_OnLoad() function later, we should find a
more suited place for it.

Change-Id: Id84ead10c27d03d19c160304b1f9853b381a103c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-07-14 02:24:36 +02:00