QPlatformIntegration::screens() no longer has to be implemented,
implementations should call QPlatformIntegration::screenAdded() for each
screen instead. This is for being able to support adding screens at
run-time later on, by connecting it to a signal in QGuiApplication.
The QGuiGLContext API has changed a bit, by not sending in all the
parameters in the constructor but instead having a create() function.
The createPlatformGLContext() factory in QPlatformIntegration takes a
QGuiGLContext * instead of a QSurfaceFormat and a share context, similar
to how the window and backing store factory functions work.
The XCB plugin has experimental support for connecting to multiple X
displays simultaneously, creating one or more QScreen for each.
Change-Id: I248a22a4fd3481280710110272c04a30a8021e8f
Reviewed-on: http://codereview.qt.nokia.com/2103
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
That macro is a nightmare. It leads to writing code that is
thread-unsafe or other problems. So rewrite the code that used this
macro to use special-purpose classes with constructors.
This commit does not introduce new errors. The FIXME in qicon.cpp
(qtIconCache()) was a condition already present. It does fix the race
conditions that were present in qbrush.cpp nullBrushInstance() and
qfontengine.cpp qt_grayPalette().
Specialising QGlobalStatic is also evil.
Change-Id: I039311f6a5ac9ea4ad7b310b870a2adf888da7e5
Merge-request: 10
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1895
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
forward port from d7b688870aead912690188b324d370b920a7a600
Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit c89c7ebd2600f916eab937cb4853707ab066bc25)
Change-Id: I5130fcaaeb162b38c015f8649e83cbf820fb8a44
Reviewed-on: http://codereview.qt.nokia.com/1807
Reviewed-by: Charles Yin <charles.yin@nokia.com>
We need the content of the generated module master headers to be
reliable, so rebuilding in the same environment doesn't produce
different results. This minimizes the diff from package building
systems.
Change-Id: Ic914f56e13b11f313f01f6b8666c2d28aa50a985
Reviewed-on: http://codereview.qt.nokia.com/1900
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Arvid Picciani <arvid.picciani@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
This is needed in order to get proper font fallback, and incidentally
webfonts, working in QtWebKit.
See: https://bugs.webkit.org/show_bug.cgi?id=55036
Internal for now, maybe it could be made public for a future release.
Task-number: QTBUG-15575
Change-Id: I5c454689125cd9d5fda26ff2149208ed1beec24d
Reviewed-on: http://codereview.qt.nokia.com/1829
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Instead of having #ifdefs for the type of qreal, simply provide
overloads for both types.
Change-Id: I58582f57d5cd68fcad3fe9efb5fea5935f61b9e3
Merge-request: 17
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1542
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Instead of using a simple INNER JOIN, like:
SELECT a,b,rel.c FROM table1, table2 WHERE (table1.smthing =
table2.smthing)
which doesn't show row where foreign keys are NULL, allow use of LEFT
JOIN like:
SELECT a,b,rel.c FROM table1 LEFT JOIN table2 ON table1.smthing =
table2.smthing
The trick works also for multi-relational tables.
Just remember to use the new API setJoinMode.
Signed-off-by: DaNiMoTh <jjdanimoth@gmail.com>
Task-number:QTBUG-8217
Reviewed-by:Michael Goddard
Reviewed-by:Charles Yin
Merge-request: 2576
Reviewed-by: Charles Yin <charles.yin@nokia.com>
(cherry picked from commit c4280dbd9bb37cca21d007f5f8b9217f80b44043)
Change-Id: I349f9418e4859923977942add59872b000cac2c5
Reviewed-on: http://codereview.qt.nokia.com/1853
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Since Lion, Core Text starts to return fractional values for
x origin in the glyph bounding box. To get correct alignment
we need to make it integer, it seems that round will cut certain
pixels (x = 0.6 will be round to 1, then that glyph will be moved
too much to the left in image glyph cache). Reverting 4297b85a
appears to work fine on previous version of Mac OS X as well.
This change will not affect Windows (DirectWrite) and FreeType
font engines since they both return integer values for that.
Change-Id: I830f5b0bd27cad3a3a84b157da428134fb979703
Reviewed-by: Eskil
Reviewed-on: http://codereview.qt.nokia.com/1667
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Mount points are no symlinks. Period.
This was a regression to 4.7 which broke building Qt in a mount point.
Change-Id: Ib36688d7d394bbb7ab52629f8273c7fe4c0d7be8
Reviewed-by: Thomas Hartmann
Task-number: QTBUG-20431
Reviewed-on: http://codereview.qt.nokia.com/1830
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Fix the test tst_Moc::oldStyleCasts()
(The test make sure moc do not generate old C cast, by compiling the
generated code and testing for gcc warning. But if it is present in the
public header, the warning will be shown)
Change-Id: I2fd3d01e7d78639d97bea021c200afbe2caae85f
Reviewed-on: http://codereview.qt.nokia.com/1772
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
The patch implements periodic clearing of the point states when no
activity occurs (i.e. no ev_syn is coming at all, meaning that most
probably all the fingers are already up) and also moves the entire
functionality into a separate thread even when used as a plug-in.
Change-Id: Ib1daa738085b61af9b07eb8a284416e5a3fcabe8
Reviewed-on: http://codereview.qt.nokia.com/1744
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
In Qt 4.8 this generated a warning. For Qt 5 we should no longer
accept file urls without a scheme set. So you should use file://
for local files.
Change-Id: I57789e2b56b712aa4f370aec9437c6febf0d0211
Reviewed-on: http://codereview.qt.nokia.com/1822
Reviewed-by: Markus Goetz
These projects are conceptually not autotests, but more like helper
programs for the tst_selftests autotest. Some of them are expected to
fail, so they should not be run except via tst_selftests.
Change-Id: Iba8e4242e8dad9f92874ae690c9f4d9814758f4b
Reviewed-on: http://codereview.qt.nokia.com/1791
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
`make check' is intended primarily for running functional tests.
For the most part, it does not make sense to run benchmarks in the same
test environment as the functional tests.
Also, the runtime for some of these benchmarks is quite long, and some
of them share the same name as existing functional tests. These are
problematic.
Change-Id: I2ca4cfa24c73280a0b73e51423007eaff92085b8
Reviewed-on: http://codereview.qt.nokia.com/1794
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This is meant to be a temporary solution to not hold any further
development. JIRA tasks might be filed for failing tests.
Change-Id: I08a5f5b0cb153e7fd7890b2936ec3bb6b3a0907c
Reviewed-on: http://codereview.qt.nokia.com/1753
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Makes the API symmetric with the other Lighthouse APIs.
Change-Id: I8a399f3c968ea35d4624711b31f2ac5bb94b7893
Reviewed-on: http://codereview.qt.nokia.com/1735
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
For use for clipboard/DnD operations on Windows by its
Lighthouse plugin (to prevent having to export qt_read_dib(),
qt_write_dib()).
Change-Id: I79e69bf7cecb16cc47ea29de6805fc52e4df1007
Reviewed-on: http://codereview.qt.nokia.com/1714
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com>
The problem is that for some reasons, QByteArray::shared_null (and
probably shared_empty, and the ones for QString) are not in the .rodata
anymore, and they are initialized by code.
programs like QMake, which has others global objects (like global
QFiles) that uses QByteArray crashes, because they reference and
dereference shared_null (and try to destroy shared_null)
That happens before shared_null's refcount is initialized to -1
The solution here is not to ref() the objects that have a refcount of 0
(that is what the refcount is before it is initialized to -1)
The real fix to this problem would be to understand why it is not in the
proper section, and make sure it is.
Change-Id: I5b7e966ed4c460b90dba70855f4dc50685dff97f
Reviewed-on: http://codereview.qt.nokia.com/1712
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Moved the red-black tree class so it can be used outside the
triangulator as well.
Change-Id: I1d63fc88502e8e6c390cac2820c0ce45721cda79
Reviewed-on: http://codereview.qt.nokia.com/1710
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
the 'item' reference may become invalid inside the loop.
this approach was chosen (instead of making 'item' a non-reference) to
keep the code more in sync with creator (where the string type is more
complex).
Change-Id: I60a4b0654dc47c0e3466d43904c358eb7e3e64e2
Reviewed-By: Marius Storm-Olsen
Reviewed-on: http://codereview.qt.nokia.com/1702
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Recalculate how much time is remaining.
This commit needs to be backported to 4.8.
Change-Id: Ib587335bb90306e65969bb26256fb388f8f6bd24
Merge-request: 20
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1666
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
removing the NoCategory enum value caused all category flags to change.
not an issue for qchar where they were used properly, but an issue for qregexp
where the hardcoded values were used instead.
the `all_cats` could be set to `FLAG(QChar::Symbol_Other + 1) - 1` which is shorter,
but I don't want hardcode the values in order to avoid similar issues in he future
Change-Id: Ie3ae2fca1b01d5911b834f439a0a6216766b8a20
Merge-request: 21
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1696
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
there are return statements between locking and unlocking, so to not
leave the mutex locked when returning, this commit introduces a
QMutexLocker.
Change-Id: I74e2f329bf116e92250189bf097deb47d460d9dc
Reviewed-on: http://codereview.qt.nokia.com/1656
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz