Commit Graph

9923 Commits (02afd94ef4c1913735bd650ca93279cfb00dc534)

Author SHA1 Message Date
Jason McDonald d692b8663c Fix obsolete contact email
Replace the old Trolltech contact email address with the current Qt
contact email address.

Task-number: QTBUG-20370
Change-Id: If5b9c3a044e1ee46264548eea456c704ced8e363
Reviewed-on: http://codereview.qt.nokia.com/2153
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-07-28 10:03:45 +02:00
Jørgen Lind b6b853b1b6 Initial OpenWFD support
Change-Id: I06f71073ec58af1a431edb997f3a359800320196
Reviewed-on: http://codereview.qt.nokia.com/2288
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-27 15:56:31 +02:00
Jørgen Lind 86e7c36b50 Make it possible to use QSocketNotifier in Lighthouse plugins
The idea is that now the plugin can register the event dispatcher
in its constructor, so it can freely use QSocketNotifier or what not.

If the plugin choses not to do so, then the createFunction will be
called at a later point.

Change-Id: I75fb2ee4180d9619ac94e75fbcf1efd7a2deecbc
Reviewed-on: http://codereview.qt.nokia.com/2287
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-27 15:47:49 +02:00
Samuel Rødal b03f5fd476 More graceful choosing of EGL configs.
If someone asks for a depth buffer of size 32, we should try to give
them a smaller depth buffer if none of that size is available. Also,
don't unconditionally read the alpha size of the  configure
attributes, since it might have been removed when reducing the config.

Change-Id: If2f9d49c1cc3ded015384f9551b19cd15c523ce3
Reviewed-on: http://codereview.qt.nokia.com/2269
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-27 12:17:53 +02:00
Samuel Rødal 233411bc1e Added Q_GUI_EXPORT for some internal symbols needed in QtWidgets.
Change-Id: I1e3ba974ebb1200095ddd32a905acaab3cea1c1e
Reviewed-on: http://codereview.qt.nokia.com/2207
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-27 12:16:51 +02:00
Samuel Rødal 2d114e45a8 Remove nativeimagehandleprovider.
Symbian / OpenVG are currently not supported in Qt 5.

Change-Id: I0a0e1dd9ac3f48c62c0e30baa4d32a087c15a766
Reviewed-on: http://codereview.qt.nokia.com/2194
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-27 12:15:45 +02:00
Friedemann Kleint 833090abb9 QWindow: Do not call setters for window state, type etc in creation.
Remove the need to do housekeeping and comparison of window types,
etc in the platform window setters. They can safely assume the flags
have really changed and something (potentially recreating the
window) has to be done.
createPlatformWindow() must then query all parameters from
QWindow and apply them.

Change-Id: I497060ba46a955cad1fa3cbb5eb91438a420b80e
Reviewed-on: http://codereview.qt.nokia.com/2198
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-26 14:58:54 +02:00
Bradley T. Hughes 33a55c5661 Use QFreeList for timer id allocation
The timer id allocator doesn't need a paylod (hence T=void), but we want
to tune the allocation 'strategy.' We allocate a maximum of 6 blocks
(like before), but the first block is twice as large as before and is
not static writable anymore. The initial value is 1 (0 is not a valid
timer id), but otherwise the constants are the same as the defaults.

Change-Id: Ied49ff4d7a6a8d69bc8c7bfa5475e4111446659f
Reviewed-on: http://codereview.qt.nokia.com/2161
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-26 13:40:07 +02:00
Bradley T. Hughes 6b82798ee7 Add QFreeList as an internal class
This is a generic implementation of the lock-free free list found in
qabstracteventdispatcher.cpp. Use next() to get the next free entry in
the list, and release(id) when done with the id.

This version is templated and allows having a payload which can be
accessed using the id returned by next(). The payload is allocated and
deallocated automatically by the free list, but *NOT* when calling
next()/release(). Initialization should be done by code needing it after
next() returns. Likewise, cleanup should happen before calling
release(). It is possible to have use 'void' as the payload type, in
which case the free list only contains indexes to the next free entry.

Autotest included.

Change-Id: Ifd12a961d47f3d76593c45061f72e55c9b80a43b
Reviewed-on: http://codereview.qt.nokia.com/2160
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-26 13:40:07 +02:00
Samuel Rødal e4042435ba Get the eglfs plugin compiling.
Change-Id: I5addb1a2593a670d559b9fbf9183f52af410895b
Reviewed-on: http://codereview.qt.nokia.com/2176
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-26 12:02:32 +02:00
David Faure b7064513e2 Make QTabWidget::tabBar() public.
This is very much useful to be able to write things like
myTabWidget->tabBar()->setSelectionBehaviorOnRemove( QTabBar::SelectPreviousTab );
without subclassing QTabWidget.

Change-Id: Ic7c42709ea1086631d37f90f184b058c4b6e9601
Merge-request: 3
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2172
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-26 11:41:11 +02:00
Friedemann Kleint c7c8a38ec3 Set an object name matching the Widget on QWidgetWindow.
To aid debugging.

Change-Id: I841a59a60a0de504eef140debc5e55ee5f15d7f7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2167
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-26 10:34:27 +02:00
Friedemann Kleint 32cec9f3ba Retrieve QPlatformScreen from top level when querying widget metrics.
Check for 0 and use primary screen as default.

Change-Id: Ib4d0d3f507e7fb17687f5e126b49f98cfdbead6c
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2166
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-26 10:33:54 +02:00
Friedemann Kleint 97c659a5aa Fix MSVC compiler warning.
class/struct mismatch.

Change-Id: Ifaecc4ba4baeceb41fffba84678466faf48469bc
Reviewed-on: http://codereview.qt.nokia.com/2156
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-26 08:41:21 +02:00
Rohan McGovern c0589cde3d Windows: fixed qtmain.lib not going to `lib' directory
`load(qt_module_config)' clobbers DESTDIR.
Rearrange the order so that our setting of DESTDIR works as intended.

Change-Id: Id6f02e9fb55069fae9b2a75c9d0f51578b84f4d1
Reviewed-on: http://codereview.qt.nokia.com/2130
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-07-26 03:27:34 +02:00
Sarah Smith 750147f5c9 Improve doc to avoid row vs col major confusion.
There has been a few reports of user confusion from the fact that the
constData and data functions return results in column-major format.
There is nothing in the doc anywhere that states this, and nothing
states that the class is especially for OpenGL which would give a clue
at least.

Change-Id: I3a9afde0fbeb8b9d2bcba6a387620b60a56774b9
Reviewed-on: http://codereview.qt.nokia.com/2066
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Julian de Bhal <julian.debhal@nokia.com>
2011-07-26 03:27:34 +02:00
Andrew den Exter ac22379a75 Emit selectionChanged signals when input method alters the selection.
Check if the input method removes the selection and force emit
selectionChanged if it sets a new selection.

Task-number: QTBUG-19727
Reviewed-by: Martin Jones

Change-Id: Ic8ea1044d0917aac4e52368f431ac9e5c7db7c56
Reviewed-on: http://codereview.qt.nokia.com/2076
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-26 01:35:59 +02:00
Andrew den Exter ef2384ad57 Update cursor position when selection is reversed.
A reversed selection will have the same resolved start and end
positions but a different cursor position so testing the end points
alone doesn't guarantee the selection is the same.

Task-number: QTBUG-19456
Reviewed-by: Martin Jones

Change-Id: I516e5a501ec878d673f21e54d688fd2d21b624ef
Reviewed-on: http://codereview.qt.nokia.com/2080
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-26 01:35:40 +02:00
Friedemann Kleint 28fbcb3d2a Lighthouse: Provide default plugin.
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>

Change-Id: I13e78c499f77ac6ad034e61488fc6ef00e2e2be8
Reviewed-on: http://codereview.qt.nokia.com/2124
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-25 17:11:25 +02:00
Friedemann Kleint 56f27b99c6 Compile fix.
Change-Id: I8eef93e05ef4938111d2fb21c2ade019b578ab11
Reviewed-on: http://codereview.qt.nokia.com/2123
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-25 17:08:32 +02:00
Friedemann Kleint 7b32330249 Compile fix.
Change-Id: Iab8abc6ebd580f8bafc08b250244e72907c253f4
Reviewed-on: http://codereview.qt.nokia.com/2122
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-25 17:05:33 +02:00
Samuel Rødal 970a6146aa Compile fix.
Added missing qscreen.cpp.

Change-Id: Id79a6a12aca0758fdb1a168d63969940111f03dd
Reviewed-on: http://codereview.qt.nokia.com/2119
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-25 16:54:05 +02:00
Olivier Goffart cec00a2dda Add the missing function in bootstrap
(required for the metatype changes)

Change-Id: I0e3c73e7828493b4f03ec6439ec80b1c8c2bf377
Reviewed-on: http://codereview.qt.nokia.com/2105
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2011-07-25 16:53:57 +02:00
Sergio Ahumada ffa8882ad6 testlib: fix include of `qttestversion.h' in testlib.pro
The actual file defined in `sync.profile' and generated
by 'syncqt' is `qttestversion.h' instead of `qttestlibversion.h'

Change-Id: I90ed2d5b7cd9f98855a878c97afceced01e7e8b0
Reviewed-on: http://codereview.qt.nokia.com/2050
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2011-07-25 16:53:57 +02:00
Laszlo Agocs f432927ffd Drag and drop support in Wayland plug-in.
Change-Id: I5e4448a9b3d3df9e3a12733386079031be340a42
Reviewed-on: http://codereview.qt.nokia.com/2101
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-25 15:34:44 +02:00
Laszlo Agocs 43f2246995 Add drag and drop events to QWindowSystemInterface.
For non-desktop platforms these are better suited and are more
QPA style than relying purely on QDragManager/QSimpleDrag/sending
drag events directly to the windows.

Change-Id: Id466830cf83427b3d86925602086a858e8f713e5
Reviewed-on: http://codereview.qt.nokia.com/2084
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-25 15:26:51 +02:00
Ilya Konkov 3ef653f681 Add initial support for bitmap version 4/5 headers.
The headers are just skipped, information stored in them is ignored.

Merge-request: 824

Change-Id: I48f37757114ed83cd5c92cb3d5a43eeaca4b91b3
Reviewed-on: http://codereview.qt.nokia.com/2108
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
2011-07-25 15:01:39 +02:00
Laszlo Agocs ec984bdd3e Pixmap cursor support in QWaylandCursor.
Change-Id: I7075229584e9705fae63679b5512c11fd8535797
Reviewed-on: http://codereview.qt.nokia.com/2100
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-25 14:59:11 +02:00
Laszlo Agocs 9ce5297cc5 Support non-desktop platforms better with QDragManager.
By default QDragManager brings in a number of "desktopisms" (e.g. that
a drag is always controlled by mouse events, can be cancelled with some
key press, etc.), these assumptions are not necessarily suitable for
all QPA platforms. Therefore there has to be a way to disable this
built-in event handling, and let the QPlaformDrag decide how the drag
is controlled and when it ends.

Change-Id: Ie9fa2df7ba1e30dd1c6e2cff406490e36be73c4f
Reviewed-on: http://codereview.qt.nokia.com/2085
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-25 14:58:19 +02:00
Laszlo Agocs d78a677305 Fix for not calling QPlatformCursor's pointerEvent.
The code to pass mouse events to platform cursors is there in 4.8,
however it went missing in refactor. This patch restores it.

Change-Id: I7873c892c1ae907fc084d3f00f7d4e5a6293ba4d
Reviewed-on: http://codereview.qt.nokia.com/2083
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-25 14:57:29 +02:00
Samuel Rødal c3da77798b Added workable QScreen API on top of QPlatformScreen.
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>
2011-07-25 13:52:09 +02:00
Kim Motoyoshi Kalland b949b17c3c Changed QLibrary::resolve() to return a function pointer.
According to the C++ standard, there is no guarantee that
you can cast between function pointers and void pointers
without data loss (section 5.2.10-6).

Change-Id: I27f4d835e4c8ca8ecca0d76cfea9ce34491956bd
Reviewed-on: http://codereview.qt.nokia.com/1995
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-07-25 12:58:23 +02:00
Jiang Jiang 8d762c9cae Making cached glyphs drawing check clearer
Putting the logic inside supportsTransformation() is a bit confusing and
that name is misleading.

Also move the same check in GL2 paint engine to the same place.

Change-Id: I182500a0ff375122e6be966b7ce2495c84d113d0
Reviewed-on: http://codereview.qt.nokia.com/2096
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-25 11:50:16 +02:00
Andrew den Exter a150880ae6 Delay masking the last character in Password echo mode.
If QT_GUI_PASSWORD_ECHO_DELAY is defined in qplatformdefs.h with an
integer value in milliseconds, QLineEdit and TextInput will display
the last character entered unmasked for that delay period and then
mask the character as normal.  If QT_GUI_PASSWORD_ECHO_DELAY is
not defined then the behaviour is unchanged.

Task-number: QTBUG-17003
Reviewed-by: Martin Jones
(cherry picked from commit f9e7aee2019d321edd655bfde7de43f20a106971)

Conflicts:

	src/declarative/graphicsitems/qdeclarativetextinput.cpp
	tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp

Change-Id: I3683223189b7176e4ef5081ee315c95a0efb9cfe
Reviewed-on: http://codereview.qt.nokia.com/2060
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-07-25 05:31:46 +02:00
liangqi be76c09981 Use QUuid::toByteArray() instead of QUuid::toString().toAscii()
This is a cheaper way.

Change-Id: Ibfc67e0ac46a77e95b2ef32cd6f28c7409c42d63
Reviewed-on: http://codereview.qt.nokia.com/2037
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-22 14:59:08 +02:00
Olivier Goffart 7fc3203062 QAbstractConcatenable::convertFromAscii: make len the actual length
Before, it was the length + 1, to include the ending \0 (for historical
reasons)
Having it the actual length is more intuitive and less error prone

Also added QT_ASCII_CAST_WARN to QConcatenable<QByteArray>::appendTo
to show the warnig that convertion from ascii to qstring occurs.

Change-Id: Ie7c8552b6b4e7ccb393cb09f5f0ca9b00336c714
Reviewed-by: thiago
Reviewed-on: http://codereview.qt.nokia.com/1988
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-22 13:10:42 +02:00
Ritt Konstantin 769f522342 remove Qt3 leftovers
Merge-request: 22
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: I5d25fb05894d9baa645f97946e1f9aaa1622c876
Reviewed-on: http://codereview.qt.nokia.com/1925
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-22 10:55:02 +02:00
Martin Jones 345a8a67f0 Optimize QMetaObject::property().
Avoid using QByteArray.

Change-Id: I7216bc88efdd6e4e57d84b8c45e7c38119dc7092
Reviewed-on: http://codereview.qt.nokia.com/2000
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
2011-07-22 06:06:45 +02:00
Thiago Macieira a6d87b5114 Add unit tests to QStringLiteral and QByteArrayLiteral with operator %
This requires a fix for QByteArrayLiteral to work too.

Change-Id: I3c2a50ad431d5b0c014a341e675fa54e7b206e70
Merge-request: 27
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1967
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 22:36:39 +02:00
Thiago Macieira 038d7c6c3b Fix the timeout calculation again.
The commit 412ef92162 introduced a fix, but the
fix was incomplete. Fix it for good.

Change-Id: I3e7fbdb294f8e960fbbf2e830790750240ed813a
Merge-request: 30
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1991
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 22:36:39 +02:00
Pierre Rossi f74296ef7c Add support for rawFonts loaded from data in FaceId
The problem was that with an empty filename and index of 0, all raw fonts
loaded from data had the same FaceId, and we wouldn't bother to load
another one after doing this once.
This commit introduces a uuid in FaceId to help distinguish them in
that case.

Change-Id: I93655ff07a7d8856af1f854024e207c519f8ed1a
Reviewed-on: http://codereview.qt.nokia.com/1882
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-21 20:40:51 +02:00
Thiago Macieira 001bd63e81 Make the N parameter to the QXXXLiterals be the actual string length
Before, it was the length + 1, to include the ending NUL or
U+0000. This avoids mistakes of -1 in QStringBuilder and will allow us
simpler code in the User-Defined Literal (future improvement)

Change-Id: I75c47d6c44579124888f925e240817229347dc70
Merge-request: 31
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1966
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 18:56:02 +02:00
Kim Motoyoshi Kalland 16c17f5965 Fixed memory leak in the TIF handler.
Change-Id: Iaa3093b172ddbac6597169ee4217a7f6c7867e60
Reviewed-on: http://codereview.qt.nokia.com/1952
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-07-21 16:30:41 +02:00
Samuel Rødal e026f767c9 Handle failed SHM attach in XCB backing store.
Change-Id: I5f97c0c6030d13b68cfc17d19ba969cd78f79c3f
Reviewed-on: http://codereview.qt.nokia.com/1943
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-21 14:56:38 +02:00
Samuel Rødal 7b3b6b5afa Merge remote branch 'gerrit/master' into refactor
Conflicts:
	examples/opengl/cube/main.cpp
	examples/widgets/applicationicon/main.cpp
	examples/widgets/orientation/main.cpp
	src/gui/image/qicon.cpp
	src/gui/image/qimage.h
	src/gui/image/qpixmap.h
	src/gui/image/qpixmap_mac.cpp
	src/gui/kernel/qapplication.cpp
	src/gui/kernel/qpalette.cpp
	src/gui/kernel/qwidget.cpp
	src/gui/styles/qmacstyle_mac.mm
	src/gui/widgets/qmenubar.cpp
	src/gui/widgets/qslider.cpp
	src/opengl/qwindowsurface_gl.cpp
	tests/auto/qvariant/qvariant.pro
	tests/benchmarks/corelib/kernel/qobject/qobject.pro
	tests/benchmarks/gui/animation/qanimation/qanimation.pro
	tests/benchmarks/gui/graphicsview/qgraphicsanchorlayout/qgraphicsanchorlayout.pro
	tests/benchmarks/gui/graphicsview/qgraphicsitem/qgraphicsitem.pro
	tests/benchmarks/gui/graphicsview/qgraphicsscene/qgraphicsscene.pro
	tests/benchmarks/gui/graphicsview/qgraphicsview/qgraphicsview.pro
	tests/benchmarks/gui/graphicsview/qgraphicswidget/qgraphicswidget.pro
	tests/benchmarks/gui/image/qimagereader/qimagereader.pro
	tests/benchmarks/gui/itemviews/qtableview/qtableview.pro
	tests/benchmarks/gui/kernel/qapplication/qapplication.pro
	tests/benchmarks/gui/kernel/qwidget/qwidget.pro
	tests/benchmarks/gui/painting/qpainter/qpainter.pro
	tests/benchmarks/gui/painting/qtbench/qtbench.pro
	tests/benchmarks/gui/painting/qtracebench/qtracebench.pro
	tests/benchmarks/gui/text/qtext/qtext.pro

Change-Id: I4b911c795ecb29d73b6a7fd18819711b49478a30
2011-07-21 14:42:46 +02:00
Ritt Konstantin 56defa4725 minor improvements to QChar documentation
Merge-request: 22
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: Ib70922f98385888c084ccd3224a9bb12ca766ccf
Reviewed-on: http://codereview.qt.nokia.com/1926
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-21 10:53:26 +02:00
Olivier Goffart 6a818cffe2 Fix more use of C style cast.
Commit 77ed8787ac was not enough

Fix the test tst_Moc::oldStyleCasts()

Change-Id: Ia2f98f4e02ba512c3f7fd7cd09b692a1aabd8de0
Reviewed-on: http://codereview.qt.nokia.com/1927
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-07-21 10:53:26 +02:00
Samuel Rødal 41f9e765f5 Fixed clipping errors for non-extended paint engines.
Partially revert change a33ef62469fd71bec for the non-extended paint
engine path.

Task-number: QTBUG-19525
Reviewed-by: Andy Shaw
(cherry picked from commit f370dd07560c449ba17d13475721f7d3b46e6b24)

Change-Id: I19eaaa265a54b2df65a8ec73e36fbdf58b1a4334
Reviewed-on: http://codereview.qt.nokia.com/1211
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-21 10:53:26 +02:00
Samuel Rødal 070fc2f694 Get rid of unused function in qpaintengine_raster.cpp.
Change-Id: I43024c8a16c6ba9fd43df114df9e4d2d1abeea6d
Reviewed-on: http://codereview.qt.nokia.com/1734
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-21 09:21:22 +02:00
David Boddie ff63d0f28c Doc: Removed documentation for deleted code.
Change-Id: Icdbc05decac3dfe3fc18ce073c494e1fce4ea347
Reviewed-on: http://codereview.qt.nokia.com/1824
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-07-21 08:54:07 +02:00
Thiago Macieira 6d3c064302 Get rid of the evilness of Q_GLOBAL_STATIC_WITH_INITIALIZER
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>
2011-07-21 08:54:00 +02:00
Charles Yin de587d736a Forward port qt modifications for sqlite3.c
Forward port from:
 1. c42bc88a9f366899747945a4478492cf765c7166
 2. 0d61cf15358e1ff0b5125542ed4a9c4b7e96c141

Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit 2156f7057df5c748b51a7fd16a044f39c60b872c)

Change-Id: I21a4490c212e8e02ff3fc336b150d2e8bcf02c2b
Reviewed-on: http://codereview.qt.nokia.com/1808
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 03:54:07 +02:00
Charles Yin 968b54ff89 Forward port the vxworks changes
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>
2011-07-21 03:53:53 +02:00
Charles Yin ce3aaf38aa Update sqlite to 3.7.7.1
Updated sqlite3.h, sqlite3.c and shell.c from sqlite.org
SHA1 for sqlite3.c: d47594b8a02f6cf58e91fb673e96cb1b397aace0

Task-number: QTBUG-16607
Reviewed-by: Michael Goddard
(cherry picked from commit 0cb9b95beb9949ec31c5c67fd360c4b463472efe)

Change-Id: I56c5ce8db178ab850992812d6f8ff7e74eb9b7dc
Reviewed-on: http://codereview.qt.nokia.com/1806
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-21 03:53:46 +02:00
Pierre Rossi b255344373 Add a way to check if we have a matching family in the database.
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>
2011-07-20 12:47:25 +02:00
Samuel Rødal 48f761a3e1 Fixed build of generic linuxinput plugin.
Change-Id: I2289e369c831bfee9646ffe5c587647443548804
Reviewed-on: http://codereview.qt.nokia.com/1870
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-20 12:47:25 +02:00
Thiago Macieira 2dcd3939a8 Cleanup qRound and qRound64: provide overloads for double and float
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>
2011-07-20 10:29:33 +02:00
Olivier Goffart a39ca22b4d Do not use qRound with integers
Required for https://qt.gitorious.org/qt/qtbase/merge_requests/17

Change-Id: I5319ea99eb083c5931c55a246f7057fbc88c8fa4
Reviewed-by: Thiago
Reviewed-on: http://codereview.qt.nokia.com/1866
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-20 10:29:05 +02:00
Charles Yin acc16fe345 Add docs for QSqlRelationalTableModel::JoinMode
Task-number:QTBUG-8217
Reviewed-by:Michael Goddard

(cherry picked from commit e2e62bc810d21fecc9ed1d1db486b529b760d292)

Change-Id: Ie2af750c3a64aa634e11617cf9b3f9e7bdcf3a5f
Reviewed-on: http://codereview.qt.nokia.com/1854
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Charles Yin <charles.yin@nokia.com>
2011-07-20 08:25:08 +02:00
DaNiMoTh 23e4d1a517 Fixed behavior on NULL foreign keys
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>
2011-07-20 08:24:59 +02:00
Jiang Jiang d4af9f6f2d Use truncate only for subpixel boundingBox x position
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>
2011-07-20 00:01:35 +02:00
Joerg Bornemann 9a7a18f83a fix QFileInfo::isSymLink() for NTFS mount points
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>
2011-07-19 16:49:02 +02:00
Olivier Goffart 55d68a16aa Add a qHash for QUuid
Change-Id: Ib0d9a765b8db3b34aa20d510de501c72a54cacbe
Reviewed-on: http://codereview.qt.nokia.com/1743
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Xizhi Zhu <xizhi.zhu@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-07-19 16:49:02 +02:00
Olivier Goffart d5bdbd70b3 Update the documentation of QUuid::operator QString
2c8e030a3f forgot to make it obsolete

Change-Id: Ic4d1f04c8c9c6656c3e93c60e7483b14f4517f19
Reviewed-on: http://codereview.qt.nokia.com/1742
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-19 16:49:02 +02:00
Olivier Goffart 77ed8787ac Fix use of C style cast.
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>
2011-07-19 16:49:02 +02:00
Laszlo Agocs ba1b6f16ae Implement todos in touchscreen generic plug-in.
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>
2011-07-19 15:00:46 +02:00
Martin Petersson 9581c90395 QNetworkAccessFileBackend: Do not accept file url without scheme set.
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
2011-07-19 15:00:46 +02:00
Samuel Rødal 310519d6d1 Rename QPixmapData to QPlatformPixmap.
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>
2011-07-19 09:50:37 +02:00
Friedemann Kleint 5abf4f55b1 Images: Implement internal DIB image plugin.
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>
2011-07-19 08:35:06 +02:00
Samuel Rødal bc0a0281d5 Get rid of some obsolete functions in QImage / QPixmap / QPixmapData.
Change-Id: I0d2412c9196475b926a17de9fcc3281f6625fae0
Reviewed-on: http://codereview.qt.nokia.com/1733
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-07-18 10:50:12 +02:00
Olivier Goffart 6c984d6c15 "Fix" the crash at startup on MSVC
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>
2011-07-15 18:46:50 +02:00
Kim Motoyoshi Kalland b1a0f7c0d2 Moved red-black tree from qtriangulator.cpp into its own file.
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>
2011-07-15 17:14:37 +02:00
Thiago Macieira 412ef92162 Fix the timeout calculation for futexes in QMutex.
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>
2011-07-15 11:39:25 +02:00
Olivier Goffart 2c8e030a3f Deprecated QUuid::toString
Change-Id: I1186358df1c3f7615868725d93621608ed22ac99
Reviewed-on: http://codereview.qt.nokia.com/432
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-15 11:39:19 +02:00
Ritt Konstantin 92a1a3cc4f fixup for d17c76feee
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>
2011-07-15 11:39:04 +02:00
Olivier Goffart 639943ddea Revert "make QChar::Unicode_Unassigned a constantly big value"
This reverts commit ebfd24a20b.

Breaks QChar and QString autotests

Change-Id: If1e915520ea491262c5f7753368be98c02ddac5e
Reviewed-by: Ritt Konstantin
Reviewed-on: http://codereview.qt.nokia.com/1672
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-15 09:49:52 +02:00
Olivier Goffart 4bb5167177 Regenerate unicode tables
Required after d17c76feee

Change-Id: I6820b5cbb78636aa5348bdddf8824ea5c78ba934
Reviewed-on: http://codereview.qt.nokia.com/1673
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-15 09:49:42 +02:00
Samuel Rødal 31d0891866 Deprecate some QPixmap functions (marked as obsolete already).
Reviewed-by: Olivier Goffart
(cherry picked from commit fb4903c4eca6a085c4c39078c11de03f5791f08e)

Change-Id: I87208fe830b47412b40044070fbdad4ed3d0af8c
Reviewed-on: http://codereview.qt.nokia.com/1551
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-14 14:38:15 +02:00
Samuel Rødal 1cc5464236 Deprecate some functions in QImage (that have been obsolete since 4.1).
Reviewed-by: Olivier Goffart
(cherry picked from commit 5ee3e4964d60f4d9cd7026c6f8b6fb93ddd39588)

Change-Id: Ib536c2b5a2b51ca42ab26129142242f30f6c6759
Reviewed-on: http://codereview.qt.nokia.com/1550
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-14 14:38:15 +02:00
Jiang Jiang d29401ebad Fix warning for uninitialized variable
Reviewed-by: Eskil
(cherry picked from commit 94913c337a388e3d5938ece3a460f1f6e9590cd5)

Change-Id: Ie3c0986a3f5c70a654d9f14c3fae42b528c06b9e
Reviewed-on: http://codereview.qt.nokia.com/1632
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 14:38:15 +02:00
Peter Hartmann 6ab8ecb002 SSL internals: certificate verification: use mutex locker
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
2011-07-14 13:08:20 +02:00
Jiang Jiang 3b19eab45e Fix editable combobox style on Mac
Reviewed-by: Jens Bache-Wiig
(cherry picked from commit 459dc4a3bf0dc0ac54fc558379fdf551949dd1c6)

Change-Id: I744722d46ced0c2b6139bc232a819d0d802eed0d
Reviewed-on: http://codereview.qt.nokia.com/1633
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 13:08:20 +02:00
Jiang Jiang 9e7a21291c Skip boundry neutral characters in bidi itemization
According to UAX #9, bidiItemize should act as if those characters
don't exist. If we don't, dir and status.eor here may become
QChar::DirBN, thus interfere the result of bidiItemize.

Task-number: QTBUG-19949
Reviewed-by: Lars Knoll
(cherry picked from commit a5c3064439a9f1483565e5d9dfbf0342cd9236f0)

Change-Id: I224cfdf5b38433a31d33b6d944d5770accf74546
Reviewed-on: http://codereview.qt.nokia.com/1631
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang 1080586abc Fix crash when app font is added
Loading app fonts will clear the application font cache, but
QFontPrivate::engineWithScript will try to load the font again,
in Mac the font engine used here must be the one used for shaping,
because subsequent sub font engines may be added to it during the
shaping process (QCoreTextFontEngineMulti::stringToCMap). That is
why we need to fetch the font engine directly from QTextEngine's
fontEngine cache instead of QFontCache.

Task-number: QTBUG-20250
Reviewed-by: Eskil
(cherry picked from commit 1f90ae36cff8acf581d1624bf011fe3a55c623c0)

Change-Id: Ibc0054cd7df65b65a67af4a7b15027731ba417fe
Reviewed-on: http://codereview.qt.nokia.com/1630
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang 042cffd601 Apply 57993ba7 properly to 4.8
Because we have moved alignLine from qtextlayout.cpp to QTextEngine,
this patch has to be applied manually.

Reviewed-by: TrustMe
(cherry picked from commit 705416cdc8ee91ac88d80298dbe2971a9384c196)

Change-Id: Ibd657a52da1c510c839623738d49602b5c4a0824
Reviewed-on: http://codereview.qt.nokia.com/1640
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-14 11:21:55 +02:00
Jiang Jiang b2a8832a10 Avoid buffer overrun in QMacPixmapData resizing
Shouldn't use size bigger than the original (source) pixels buffer
or the new one (just allocated).

Task-number: QTBUG-18547
Reviewed-by: aavit
(cherry picked from commit 348894a550510e54e7709d18676b4b10c9e5e9e3)

Change-Id: I7cc373b7d0f1ffef2d2f0cdddb7018c856849d29
Reviewed-on: http://codereview.qt.nokia.com/1635
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-14 09:27:15 +02:00
Eskil Abrahamsen Blomfeldt 1f8418807a Fix potential crash when clicking in a text edit
Since the attributes() call might resize the layout and therefore
delete the previous data, the logClusters pointer might be dangling
at this point. We need to reget it to make sure it's valid.

Task-number: QTBUG-20310
Reviewed-by: Jiang Jiang
(cherry picked from commit c0772f44fb1d53608ff629fc622103698c6d0ee5)

Change-Id: I20a29d0c529764eb5d41cb3383c22b6cad8de255
Reviewed-on: http://codereview.qt.nokia.com/1598
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-13 15:13:52 +02:00
Ritt Konstantin ebfd24a20b make QChar::Unicode_Unassigned a constantly big value
this makes the version based checks a bit simpler (and thus faster)

Change-Id: I975c6d043d238a5c16a4b13f8379e87fbade23cc
Reviewed-on: http://codereview.qt.nokia.com/1586
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:42 +02:00
Ritt Konstantin 46e2985379 drop a dead QChar::Punctuation_Dask enum value
Change-Id: I22c67ff7c08ab514a646bad86eb8cd0f41099e9c
Reviewed-on: http://codereview.qt.nokia.com/1585
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:29 +02:00
Ritt Konstantin d17c76feee drop an obsolete QChar::NoCategory enum value
there is no such category in the Unicode specs. the QChar::NoCategory
was a subject of bugs since it was introduced. int 4.6 it's meaning was
limited to mention ucs4 > UNICODE_LAST_CODEPOINT only (which is useless anyways)
in order to preserve the old (wrong) behavior.
fix it now for qtbase

Change-Id: I630534824e071090b39772881e747c1fdb758719
Reviewed-on: http://codereview.qt.nokia.com/1584
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-13 13:31:13 +02:00
Lars Knoll a81093b915 Merge remote-tracking branch 'origin/master' into refactor
Change-Id: I53c78056abde99198ffe1c67f7f9e90b4b08051d
2011-07-13 12:49:31 +02:00
Markus Goetz 4a8d8055b4 QNAM: Introduce clearAccessCache()
Task-Number: QTBUG-17312

Change-Id: I4d7bb22f4aa0292ac6604d783fa9fd218db691e5
Reviewed-on: http://codereview.qt.nokia.com/1574
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-13 12:07:47 +02:00
Lars Knoll 718153cfa0 Fix compilation on MSVC
MSVC apparently doesn't like the way the QString::Data
pointers got initialized.

Also fixed a few warnings about signed/unsigned conversions.

Change-Id: I1267979af7601129e5483f8785d4982a1f2f8182
Reviewed-on: http://codereview.qt.nokia.com/1558
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-13 10:38:59 +02:00
Pierre Rossi 92c4b63ee1 Fix a crash with QGraphicsScene.
It happened when the scene gets deleted after ~QApplication has been
called.

test case:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QGraphicsScene *scene = new QGraphicsScene(&a);
    return 0;
}

Change-Id: I74d4023c9575242a2e334b2c786e00d0686c452b
Reviewed-on: http://codereview.qt.nokia.com/1544
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
2011-07-12 19:59:40 +02:00
Thiago Macieira a8fd5b9d2a Fix uses of qRound on non-floating-point types.
It's silly to round integeres, since they are already round. At most,
this would waste CPU cycles without any benefit.

Change-Id: I6fc0152f4416d723b65966e5d48cc7a07957b83c
Merge-request: 17
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1541
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-12 19:59:36 +02:00
Olivier Goffart 1bedbb3706 Fix compilation with icc 11
Rvalues reference are not supported by icc11 yet.
Disable all C++0x feature on that compiler.

Task-number: QTBUG-19979
Change-Id: Ifca939b18aa933b047883584cdf91f5543b852b5
Reviewed-by: Thiago
Reviewed-on: http://codereview.qt.nokia.com/1535
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 17:02:38 +02:00
Lars Knoll 2770415f92 Merge "Merge remote branch 'gerrit/master' into refactor" into refactor 2011-07-12 16:11:03 +02:00
Markus Goetz 2b5dcfcee1 QNAM HTTP: Re-write compression code
This eliminates some code (header parsing) that can be done by
zlib already.
Add support for 'deflate' encoding.
Also do less memory copying while uncompressing.

Change-Id: I94de21e3c58b904dd91d004c375ed8cbea56cb0b
Task-Number: QTBUG-13191
Reviewed-on: http://codereview.qt.nokia.com/1314
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Markus Goetz
2011-07-12 15:34:12 +02:00
Olli Werwolff 992ef929df Use PlatformNativeInterface to obtain backingStore's dc
Change-Id: I6ec2fc0b8e7696fdfe4468920228df2d21c933fd
Reviewed-on: http://codereview.qt.nokia.com/1501
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-12 14:15:35 +02:00
Thiago Macieira 363c710bc4 Add the #defines for C++0x features in GCC 4.6
Merge-request: 8
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>

Change-Id: I9176f53bd98692c31e49d1d98f91641661a52044
Reviewed-on: http://codereview.qt.nokia.com/1522
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 13:57:14 +02:00
Markus Goetz 37be55a86f QNAM HTTP: Do zero-copy for small HTTP replies by default
Task-Number: QTBUG-19046

Change-Id: I34bf432c81d94787524124b7d110a00305a660c1
Reviewed-on: http://codereview.qt.nokia.com/1516
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-07-12 13:57:14 +02:00
Peter Hartmann e11fac22c4 QSslCertificate: extend documentation for new verify method
Change-Id: I47e038299a7e6ef18206839ff59ecef9f0860415
Reviewed-on: http://codereview.qt.nokia.com/1510
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-12 13:57:14 +02:00
Richard Moore 451f3b3785 Add the ability to verify a chain of certificates
Currently it is only possible to verify a certificate chain when
connecting to a server. This change makes it possible to verify a
chain at any time.

Change-Id: Ib70ad7b81418f880e995f391b82ce59561ededb8
Merge-request: 11
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1509
2011-07-12 13:57:14 +02:00
Samuel Rødal 2371147354 Merge remote branch 'gerrit/master' into refactor
Conflicts:
	src/gui/image/qicon.cpp
	src/gui/image/qicon.h
	src/gui/image/qicon_p.h
	src/gui/text/qfontdatabase.cpp
	src/plugins/platforms/wayland/gl_integration/qwaylandglwindowsurface.cpp
	src/plugins/platforms/wayland/gl_integration/wayland_egl/qwaylandglcontext.cpp
	src/plugins/platforms/wayland/gl_integration/xcomposite_egl/qwaylandxcompositeeglwindow.cpp
	sync.profile

Change-Id: Ie0a23a12177ff51bf562e15b2dd41f071afb19b4
2011-07-12 12:52:22 +02:00
Lars Knoll ad35a41739 Refactor QByteArray to allow for const data
Similar refactoring as done for QString. Make
shared_null read-only, and add support for
compile time generated QByteArrayData.

Add support for properly reserving capacity.

Change-Id: Ie4c41d4caac7b3b4bb1aef40c1c860a30b82edb8
Reviewed-on: http://codereview.qt.nokia.com/1484
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 12:28:12 +02:00
Jedrzej Nowacki 9fea02400c Cleanup reference counting in QDateTimePrivate class.
It is better to use QSharedData which is a common interface for ref
counting.

Change-Id: I990476d6763901bf383f241bce16fe26665b021c
Reviewed-on: http://codereview.qt.nokia.com/1439
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 12:28:12 +02:00
Lars Knoll 82454b6014 remove unneeded cast operator on QConstStringData
Change-Id: Ib5f090cd6c716e1d936894be206b78629e70137b
Reviewed-on: http://codereview.qt.nokia.com/1487
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-12 11:04:04 +02:00
Olivier Goffart 6618dd877f Introduce QT_DEPRECATED_SINCE
To be used to versionize deprecated symbols

Symbols deprecated in Qt 5.0 need to be inlined

Change-Id: I696a834c25b7e86acf14ae081ea91ef993a5b19e
Reviewed-on: http://codereview.qt.nokia.com/431
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-12 11:04:04 +02:00
Peter Hartmann 94e110ca5f QSslCertificate: rename "tag" to "attribute", as in the RFC
RFC 2459 "Internet X.509 Public Key Infrastructure" uses the word
"attribute" for fields in a certificate like common name, organization
etc.

Change-Id: I51e595acbe3e146acf81af21cf48e554fa9490e4
Reviewed-on: http://codereview.qt.nokia.com/1453
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-12 09:25:06 +02:00
Jedrzej Nowacki 12d9436522 Cleanup reference counting in internal::Base class (qtconcurrent)
It is better to use QSharedData and QExplicitlySharedDataPointer then
doing manual ref counting.

Change-Id: I5674046141701bd48a53415ab96fcb6b538e79e6
Reviewed-on: http://codereview.qt.nokia.com/1440
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 18:58:41 +02:00
Jedrzej Nowacki d1f080138a Cleanup reference counting in QIcon class
It is better to use QSharedData and QExplicitlySharedDataPointer then
doing manual ref counting.

Change-Id: Icbb06d92102bcc906291238c5895a05e8d0e6de1
Reviewed-on: http://codereview.qt.nokia.com/1438
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 18:58:41 +02:00
Richard Moore eab215070e SSL: Move the code for extracting the name of an ASN1_OBJECT
Moves the code for extracting the name of an ASN1_OBJECT to a function.
We're going to need this again for implementing support for X509
extensions.

Change-Id: I43276eb375b37f5fef0d981f4003220d7e7b81ba
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1452
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:33:37 +02:00
Richard Moore 852d4b03f6 SSL: Add methods to access the tags of the subject and issuer of a cert
Add methods that return a list of the tags in use in a certificate
issuer or subject. This means that unknown elements of these fields can
be accessed.

Change-Id: I588989e34f541b1d31cc9e97f5a85d1624ece1b1
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1451
2011-07-11 17:33:16 +02:00
Richard Moore 14b56b2be4 SSL: Make the internals of certificate name info match the externals.
The internals of QSslCertificate were using QString but the API used
QByteArray, this commit unifies the code. This means that we don't keep
converting things.

Change-Id: I29fc149a85b77e786a6e90e5154c62f713476599
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1450
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:33:00 +02:00
Richard Moore 8499fb3a9a SSL: Store x509 name entries that have no short name as their OID.
Previously, x509 name entries that didn't have a shortname would all be
(accidentally) stored with the tag 'UNDEF'. This commit changes things
so that they are stored using the string form of their OID.

Change-Id: I667306cc4f91b1ca84f29b986bc21daadeb089b6
Merge-request: 18
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1449
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 17:32:47 +02:00
Peter Hartmann c299b4deac SSL internals: rename methods in the SSL backend to reflect public ones
Change-Id: I234c740b1acbfea670d6170332626f5e3ba49328
Reviewed-on: http://codereview.qt.nokia.com/1437
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-11 15:52:33 +02:00
Friedemann Kleint 54ec6d177e Bring OpenGL closer to compiling on Windows.
Change-Id: I8ebb459f27a1054f8cb5524d2ff77988c6153557
Reviewed-on: http://codereview.qt.nokia.com/1421
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com>
2011-07-11 14:35:37 +02:00
Thiago Macieira 0c0676ada2 Remove #ifdef for platforms where QChar was packed -- there aren't any
On ARM OABI, sizeof(QChar) was 4, so we used to pack it so QChar[] was
isomorphic to ushort[]. We don't support the OABI anymore and the EABI
does the right thing.

Change-Id: I181dd2f169f6868450302e269ef9ad5d643f306f
Merge-request: 13
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1386
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 14:17:33 +02:00
Markus Goetz 06f2c9da46 QNAM: Remove QNetworkAccessHttpBackend
Qt 5.0 is using QNetworkReplyHttpImpl

Change-Id: I230230dc8b81e55a6c0cc8e1d85714e49fd35d17
Reviewed-on: http://codereview.qt.nokia.com/1381
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-11 12:43:52 +02:00
Thiago Macieira f9035587b9 Replace try/catch blocks in favour of destructors in the event loop.
This has two direct benefits:
1) compiles regardless of -fno-exceptions: no need for #ifndef
QT_NO_EXCEPTIONS or QT_TRY/QT_CATCH

2) no QT_RETHROW either, which means the backtrace of an application
crashing due to an uncaught exception will include the actual throw
point.

Change-Id: I18e5500e121bfa81431ef16699df96d962794f0e
Reviewed-on: http://codereview.qt.nokia.com/663
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 12:43:52 +02:00
Jiang Jiang 915ec02cad Remove some metrics parsing code from Core Text
The respective value in some of the default fonts like Lucida Grande
are simply not reliable. It seems that the only reliable way to get
such information is by going through all the glyphs.

It seems that these code are not well tested on Mac and should be
removed for now since it caused visible regressions in QLineEdit
rendering.

Reviewed-by: Eskil
(cherry picked from commit 8032d6f4ced50837e126f28c1475ad89eaf91ad7)

Change-Id: I85e71a2e3228a367659be9f5f6ec3e667e0ce902
Reviewed-on: http://codereview.qt.nokia.com/1264
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-11 12:43:52 +02:00
Richard Moore c82af87b53 QSslSocket: Add accessors for SSL version
This commit adds accessors for both the openssl version number and the
version string. The intention here is to aid debugging by making it
possible for applications to know which version of the openssl library
has been found by the runtime linking code.

Since the version of openssl in use will depend on the installation of
the developer, the test cases merely display the version string and
number rather than verifying that any particular version is in use.

Change-Id: Ieec44f0941f99887c85c2858bab0481722d739e5
Merge-request: 12
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1406
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 12:43:52 +02:00
Thiago Macieira d9bec0a1d2 Remove Qt 4.3 binary compatibility for MSVC
When we removed the useless "const" in the return type, we broke
compatibility with a few compilers that include the return type in the
mangling. We don't need that anymore in Qt 5.

This change should have had a ### Qt5 mark everywhere, not just in a
comment in qstring.cpp.

Change-Id: I8839f8dc540b34e57a3efdb160a1c015f7328422
Merge-request: 13
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1385
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 11:16:22 +02:00
Thiago Macieira 8cc3b1a426 Remove the definition of QT_NO_FPU based on the processor or WS
The definition is just wrong these days. Modern ARMv7 and MIPS have
FPUs. Maybe AVR32, SH or SH4A don't, but then QT_NO_FPU should be
defined in the qplatformdefs.h for those platforms.

More importantly, since QPA is the only supported architecture for Qt
5, we definitely don't want to say that no platforms have no FPU.

Still let qreal be defined to float on ARM, though: on Cortex-A8,
which is the current norm these days, float performance is better than
double performance.

Change-Id: I89e01c10c59fbe95840a668ec9736846d23258fb
Merge-request: 16
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/1383
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-07-11 11:16:12 +02:00
Thiago Macieira cd80fcb5d6 Use lambdas for generating static data for QStringLiteral
This means it will work on C++0x compilers that support lambdas (all
of them once they've completed supporting the functionality). Olivier
had the idea and the initial code.

Change-Id: I11ef7da4058ed18f4ea99ada070891a68ed54f55
Reviewed-on: http://codereview.qt.nokia.com/1380
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-11 11:15:53 +02:00
Casper van Donderen 6efe729881 Remove more references to demos.
Change-Id: I431184cd0534c86047706fdaa1045b2935de5d7a
Reviewed-on: http://codereview.qt.nokia.com/1307
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-07-08 15:36:26 +02:00
Shane Kearns b59392aeb5 Fix memory leak in QHostInfo
QHostInfo was leaking in the code path where it removes duplicate
name lookups after one has completed.

Task-number: QT-5121
Reviewed-by: Markus Goetz
(cherry picked from commit 73df7890923f377f19147466d9317fe1ec064b1d)

Change-Id: I26cc6a168ef8ea6cc18940300ca2eddd6777071d
Reviewed-on: http://codereview.qt.nokia.com/1363
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-08 13:34:47 +02:00
Friedemann Kleint 3ee33285ed QLineControl: Fix compilation, warnings.
Change-Id: I6a2d2f24b13961e8dc113366f62402824d80e1c2
Reviewed-on: http://codereview.qt.nokia.com/1365
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-08 12:38:28 +02:00
Olivier Goffart 2e58f52ded Remove the qs() macro.
There is tootoo many risks of conflicts with existing code.

QStringLiteral is not that hard to type. And if users want to use qs
they can still define it in their own headers.

Change-Id: I7da4772d902033fa163f5177c012b5d0e87332d7
Reviewed-on: http://codereview.qt.nokia.com/1357
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-08 11:22:30 +02:00
Thiago Macieira d96b7b809e Use memmove in QListData::append(int) as regions overlap.
It's undefined behaviour to memcpy regions with overlapping area. You
have to use memmove.

Change-Id: I912c819bf7ab26ba1e60028ee9d7c833dfc5138a
Reviewed-on: http://codereview.qt.nokia.com/1355
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-08 11:22:30 +02:00
Markus Goetz 948d051fb1 QNAM: Add support for more KnownHeaders
Task-Number: QTBUG-17267

Change-Id: I32b41d26411ee3a7162bb658d69363a5eeb37230
Reviewed-on: http://codereview.qt.nokia.com/1327
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-07-08 11:22:30 +02:00
Martin Zielinski 62481fe9f6 Fixed wayland windowmanager-protocol authorization
The authorization is now handled more robust. The client tries to authenticate
as soon as a surface is created, but does so only if the authentication
token is valid. A re-authorization than happens when requestActivateWindow()
is called.
This is needed to get the auth-process properly working even with
pre-started clients, that do not have a valid token on surface-creation
time.

Change-Id: I4371b424686b9d5a6a163a802ec66a33c0aeeea7
Reviewed-on: http://codereview.qt.nokia.com/1207
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lasse Holmstedt
2011-07-08 11:22:30 +02:00
Thiago Macieira a21f992925 Add support for QStringLiterals in QStringBuilder
Otherwise we get errors for failing to have operator+ properly when
writing:
    QStringLiteral("foo") + s

Change-Id: I03844c95e9fdfa886eadfa2b5fe104ff048fd618
Reviewed-on: http://codereview.qt.nokia.com/1351
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-08 11:22:30 +02:00
Thiago Macieira 571785b31d Make the new QStringLiteral produce a non-temporary
This is currently GCC-only code (the __extension ({ }) stuff), but it
was the only way I found to create a static variable and return it. I
had to add the QConstStringDataPtr container because I had to return a
pointer to the data -- it's impossible to return a reference through
this extension.

I could have returned a naked pointer directly too.

This isn't complete. GCC 4.6 is placing the string in the .data
section, not .rodata as we wanted. Investigating further.

Change-Id: I170030dca3eddbd69f6c879e952f652f7fe5d958
Reviewed-on: http://codereview.qt.nokia.com/1350
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-08 11:22:30 +02:00
Thiago Macieira f3d6589068 Bugfix the QConstString implementation.
Change-Id: Ic9ea9d91c1a976962a3881ecdf7ad178de768b08
Reviewed-on: http://codereview.qt.nokia.com/1349
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-08 09:45:19 +02:00
Lars Knoll 7297cf8542 Don't cast a string from ascii
Change-Id: Ia902e5be3ff61057b2e895a491bb68f1b7c6dd64
Reviewed-on: http://codereview.qt.nokia.com/1221
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-07 17:37:29 +02:00
Harald Fernengel 27b953efae Don't keep a static instance of QDBusConnection
Prevents weird crashes at app exit and makes backtraces from potential
crashes saner because they won't start in __cxa_init.

Change-Id: I62821faad03b06ec92da05d96027b668d1f1ca0f
Reviewed-on: http://codereview.qt.nokia.com/1324
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Robert Griebl <robert.griebl@nokia.com>
2011-07-07 17:37:29 +02:00
Harald Fernengel f96a19d1b4 Fix a crash when D-Bus library can't be loaded
In certain sandboxes, we have libQtDBus, but not D-Bus. QtDBus shouldn't
crash in that case, but return non-working QDBusConnection instances
instead.

Change-Id: Ia4ac78d1197bae50cde0cf07e6fc66fc25b85011
Reviewed-on: http://codereview.qt.nokia.com/1319
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Robert Griebl <robert.griebl@nokia.com>
2011-07-07 16:10:50 +02:00
Olli Werwolff f9f04ea63d Use PlatformNativeInterface to obtain handles
Change-Id: I8cdf3d5477e72e89bcde46ccb6670320bf4dd797
Reviewed-on: http://codereview.qt.nokia.com/1270
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-07 14:20:07 +02:00
Lars Knoll f4c07fe721 Unify QLatin1String and QLatin1Literal
Unify the two classes and get rid of one
TODO item for Qt 5.

Using strlen in the constructor of QLatin1String works,
as the compiler can do the calculation at compile time.

Change-Id: I59d98c71a34b86d4211fa0d8cfd40b7d612c5a78
Reviewed-on: http://codereview.qt.nokia.com/1219
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-07 12:30:00 +02:00
Lars Knoll ee85e9cc10 Support for compile time generated QStrings
use with QString string(QStringLiteral("foo")) or
QString string(qs("foo")).

qs(...) can in almost all places replace QLatin1String.
the Macro qs requires c++0x support or a compiler
where sizeof(wchar_t) == 2. In case these conditions
are not met, qs simply falls back to QLatin1String.

The commit also cleans up the QStringData structure
significantly, now using only 16 bytes for the header
on 32 bit systems.

The bitflags to store unicode directionality of the string and whether the string would require complex text processing to render are removed. They don't really belong here and the result can be calculated very fast in any case.

Added an internal QRefCount class the encapsulates the
reference counting semantics required where a negative refcount
is never changed. This is required to be able to put the string
data into a constant POD object.

Change-Id: I5b1395213deca48b2d582a036a0e8a8358d26d14
Reviewed-on: http://codereview.qt.nokia.com/1218
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-07 12:30:00 +02:00
Lars Knoll fcca106e59 Add an internal QRefCount class to QtCore
The class will be used by QString and possibly other
container classes to allow for the Data objects to be
created at compile time in read-only memory.

Change-Id: I9c7538bc97df637cc920e6e5ef23d67a93abac0d
Reviewed-on: http://codereview.qt.nokia.com/1216
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-07 12:30:00 +02:00
Jyri Tahtela 2d802625a3 Update licenseheader text in source files for qtbase Qt module
Replace old license header with correct one.

Change-Id: Ie8bf7d8d07ff01d05654bafe13ebbc1892f59cc4
Reviewed-on: http://codereview.qt.nokia.com/1178
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jyri Tahtela <jyri.tahtela@nokia.com>
2011-07-07 12:30:00 +02:00
Olli Werwolff 11e27a210a Fix minimal plugin for windows
Change-Id: Ica017cdad4c8205706b42767035d834498b63037
Reviewed-on: http://codereview.qt.nokia.com/1268
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-07-07 10:25:16 +02:00
Jiang Jiang 1174b69ee1 Fix regressions in previous QFontDatabase patch
1. QtFontStyle::Key comparison should either use styleName or
   style, etc., but not both.
2. When initializing a QFont from QFontDatabase::font(), style
   and weight parameters should always be set even when we found
   a match styleName, in case these parameters will be used for
   comparison later.
3. Move styleName out of QtFontStyle::Key so that the code can be
   clearer and more explicit.

Change-Id: Icdee8e97568a0f31f57d2cdb8d414f47331fde75
Reviewed-by: Eskil
Reviewed-on: http://codereview.qt.nokia.com/1263
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-07-07 08:38:52 +02:00
Olivier Goffart c0c6dd2b02 Use Q_DECL_CONSTEXPR in QFlags
Change-Id: I851e0b1c3f80a7b33a38cb1ab2665dc0f3c73adc
Reviewed-on: http://codereview.qt.nokia.com/1248
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
2011-07-06 17:09:47 +02:00
Olivier Goffart 28f927f8e0 Add Q_DECL_CONSTEXPR
Defined to the c++0x constexpr when compiler supports it

Change-Id: I82687fe46848eedf3cffc39982106749b3dde8aa
Reviewed-on: http://codereview.qt.nokia.com/1247
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
2011-07-06 17:09:47 +02:00
Lars Knoll bb34372ad5 Merge branch 'refactor' of scm.dev.nokia.troll.no:qt/qtbase-staging into refactor 2011-07-06 14:08:13 +02:00
Lars Knoll 314fdbce8c Merge remote branch 'gerrit/master' into refactor
Conflicts:
	config.tests/unix/opengldesktop/opengldesktop.cpp
	examples/itemviews/interview/interview.pro
	examples/mainwindows/mainwindow/mainwindow.pro
	examples/openvg/README
	examples/richtext/textedit/textedit.pro
	examples/tools/undo/undo.pro
	src/corelib/global/qglobal.h
	src/corelib/kernel/qcoreapplication.h
	src/corelib/kernel/qcoreevent.h
	src/corelib/kernel/qmetatype.h
	src/gui/kernel/qevent.cpp
	src/gui/kernel/qevent.h
	src/gui/painting/qpaintengine_raster.cpp
	src/gui/painting/qpaintengine_raster_p.h
	src/gui/text/qfontdatabase.cpp
	src/opengl/qgl.h
	src/openvg/qpaintengine_vg.cpp
	src/plugins/platforms/wayland/qwaylandwindow.cpp
	tests/auto/qmainwindow/qmainwindow.pro

Change-Id: I6bfb586740a68379bb99f4612ec993393a5f3234
2011-07-06 14:08:02 +02:00
Eskil Abrahamsen Blomfeldt febb4b8df3 Fix bidi reordering when part of text is rendered by fallback font
If the fallback font is used for part of a RTL text, we need to
position the different text items accordingly, subtracting the advance
instead of adding it.

Task-number: QTBUG-17117
Done-with: Lars
(cherry picked from commit e5e1ff0d6f4e6a8457da61b5b215730de6f960bd)

Change-Id: I73b501d36e5c9e12112cc1997c1d360f3a4a6083
Reviewed-on: http://codereview.qt.nokia.com/1228
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-06 13:29:44 +02:00
Lars Knoll 3422bc3b18 Unicode strings are supported from gcc 4.4 onwards
Change-Id: Icf3dfdb34b0a9867c69e91e5eb8400aa934f56bc
Reviewed-on: http://codereview.qt.nokia.com/1217
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-06 13:29:44 +02:00
Casper van Donderen a97d4dcb24 Remove references to QT_INSTALL_DEMOS & DemosPath.
The distinction between 'examples' and 'demos' is completely blurred at
this point. We've decided, with the SDK people, to scrap the existing
terminology in favor of the word 'example' only -- distinguishing
between code snippets, walkthroughs, "demonstrations" can be done
via keywords or some other method.

Removing QT_INSTALL_DEMOS from all .pro files in Qt is still in
progress.

Change-Id: I86fc0e40d54baa54c5641fc6acbd8b67e4ad2789
Reviewed-on: http://codereview.qt.nokia.com/1034
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2011-07-06 13:29:44 +02:00
Lars Knoll 26a6d3f11b Fix compilation with c++0x mode
Change-Id: Ie4f157f25c31e46d4cc7cb628b8605b99561a4e8
Reviewed-on: http://codereview.qt.nokia.com/1220
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-07-06 13:29:44 +02:00
Samuel Rødal 1b95298d9d Fixed gl_integration.pri on non-mac platforms. 2011-07-06 12:51:50 +02:00
Gabriel de Dietrich f306d18fe6 Remove QT3_SUPPORT from qsql, qxml
Change-Id: Iab36ef60de2f0201efa4eb86d8ed5e514d6244fb
Reviewed-on: http://codereview.qt.nokia.com/1188
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-07-06 12:03:30 +02:00
Jørgen Lind 5d9818e7b6 We need to let the currentContext be in the same state after
setting the new eglsurface
(cherry picked from commit af3efefeefe686e5c35ed502de077c0bcb6f6fc0)

Change-Id: Ic1d62b21a1482d1bc7f1d99478e175e4b767e157
Reviewed-on: http://codereview.qt.nokia.com/1209
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-07-06 12:03:30 +02:00
Lars Knoll 8d7647e286 added a QLineControl class to QtGui
The class does not have support for completion,
but is otherwise mostly on par with the
control in QtWidgets.

Change-Id: I2c89f8ea910cfacba67d4e5e56d8d650d27760b9
2011-07-06 11:24:46 +02:00
Lars Knoll eaedcefbf8 add QTextControl class to QtGui
This is a reduced version of the old text control
class, that doesn't support a few QWidget specific
additions.

Change-Id: Ib4542845a30473bb2462b2fe14daba178b571368
2011-07-06 11:24:46 +02:00
Jørgen Lind 1b1337601e Fix the wayland windowsurface so that we have stencil and depth buffer
(cherry picked from commit 322c96eb9564f930a63be820c22b053630663880)

Change-Id: I89c10cea1a302d9549024940e49c7d5960abb953
Reviewed-on: http://codereview.qt.nokia.com/1210
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-07-06 10:26:28 +02:00
Morten Sorvig 4ed17a6508 Start porting the Mac menu system to QPA.
Global changes: 
qglobal.h: remove code that sets Q_WS_MAC and
Q_MAC_USE_COCOA - this is dead code now. Add 
qt_widget_helpers_mac_p.h/mm which will contain
helper functions needed for widgets on Qt 5. 

Menu-related changes:
Set AA_DontUseNativeMenuBar before creating the 
platform plugin. Change Q_WS_MAC to Q_OS_MAC in the
menu code. Remove Q_MAC_USE_COCOA defines and Carbon
code paths. Move some qt_mac helper functions only
used by the menu system to qmenu_mac.mm. #ifdef out 
some code paths that require further porting.

Native menus are now disabled by default but can 
be enabled by the QPA plugins that want them by
clearing AA_DontUseNativeMenuBar. Since we at compile
time don't know which plugin will be loaded the Mac
menu code is always included when building on OS X.
(The above is currently only relevant for the Cocoa
plugin.)
2011-07-06 09:59:36 +02:00
Martin Petersson 83736a8d06 QAbstractSocket: Always clear old QHostAddress list on a new connect.
Change-Id: Iee1416e7803836e5f1a37508739bcbcb2cdb421c
Reviewed-on: http://codereview.qt.nokia.com/1174
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
2011-07-06 08:26:50 +02:00
Casper van Donderen 1631be8176 Update the documentation after moving examples.
Change-Id: I7aa52785979df9eddd7b91e62abd0ef10adc74b7
Reviewed-on: http://codereview.qt.nokia.com/1031
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-07-05 21:19:08 +02:00
Casper van Donderen 1734cb55c5 Move some other examples around in the docs.
Change-Id: Ib50600ff9fd3d807b82a152abd7d587196d5b5e3
Reviewed-on: http://codereview.qt.nokia.com/932
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-07-05 21:19:08 +02:00
Olivier Goffart 60cb6d7f3b Make use of deleted members in Q_DISABLE_COPY
Might help the compiler to produce better error message.

Change-Id: I1df3c32084b9ecda0b2a140776ad5f57adfb2e6e
Reviewed-by: Thiago
Reviewed-on: http://codereview.qt.nokia.com/1177
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2011-07-05 18:24:36 +02:00
Martin Petersson 21c4f1806e QHostAddress: fix compile on Windows
AF_INET6 needs to be defined on Windows. This got undefined when
QT_NO_IPV6 was removed in 85869920bb

Change-Id: I1b4904f9561286b884324882f0f11dc29ba01416
Reviewed-on: http://codereview.qt.nokia.com/1169
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-05 17:03:32 +02:00
Olivier Goffart d789e40c58 Fix QScopedPointerarray default constructor
Since the compiler cannod find the template argument if there is no
argument passed to the constructor, this effectively means there is
no default constructor.

Add a default constructor

Task-number: QTBUG-20256
Change-Id: I310d5e1f3f94a8fe69fd3a5c46f2f51bca60facd
Reviewed-on: http://codereview.qt.nokia.com/1165
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
2011-07-05 17:03:32 +02:00
Markus Goetz 808acc07f2 QNAM HTTP: Fix canReadLine() for zerocopy
Change-Id: I16cf25c72b3fa16649c3e4e0f4d4b08ad7ce360d
Reviewed-on: http://codereview.qt.nokia.com/1161
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2011-07-05 17:03:32 +02:00
Shane Kearns f45ad0eeb3 Remove QT3_SUPPORT from network
Change-Id: I962bece24c958c053a3edc0e49a594b61a3725ae
Reviewed-on: http://codereview.qt.nokia.com/1093
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-05 15:32:39 +02:00
Sergio Ahumada 1da4753bd9 Doc: Fixing typo
(cherry picked from commit 0a9652c93170ab9520869e9e231eba1834b47abc)

Conflicts:

	tests/auto/mediaobject/tst_mediaobject.cpp
	tests/auto/q3accel/tst_q3accel.cpp
	tests/auto/q3checklistitem/tst_q3checklistitem.cpp
	tests/auto/q3dns/tst_q3dns.cpp
	tests/auto/q3popupmenu/tst_q3popupmenu.cpp
	tools/linguist/tests/tst_lupdate.cpp

Change-Id: I118829afb27ab082f9656139102f74f9ab5f7ac4
Reviewed-on: http://codereview.qt.nokia.com/1035
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: David Boddie
2011-07-05 15:32:39 +02:00
Shane Kearns 8f222e2ad8 Finish removal of QT3_SUPPORT from corelib/codecs
Change 369696dc23 removed a function
from the header but not its implementation, causing a compile error.

Change-Id: I5da45d8401f5779b1660e5baf4557f078e202bf5
Reviewed-on: http://codereview.qt.nokia.com/1092
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-05 14:10:16 +02:00
Eskil Abrahamsen Blomfeldt d010d0893a Don't issue GL calls when the geometry is empty
This works as a band-aid and optimization for QT-5104, because in the
text in the example, which contains latin text and has a latin default
font set, will think of all spaces between the cyrillic characters as
latin characters, hence it will make separate text items for them and
issue separate glDrawElements() calls. By cutting off if there are no
glyphs to draw, we can avoid hitting the actual bug for this and several
other use cases, making it less likely to happen.

Task-number: QT-5104
Reviewed-by: Samuel
(cherry picked from commit f51b5fe09c63e4b3c2ab5a4d06e162c43d38207d)

Change-Id: Id80f55ce403a7aa112c3abb314d080aa43c0078b
Reviewed-on: http://codereview.qt.nokia.com/1158
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-05 12:38:50 +02:00
Morten Sorvig 14757fedb2 Remove Carbon Mac defines 2011-07-05 11:05:51 +02:00
Rohan McGovern 8226443b16 Fixed compile of QtOpenGL on Mac & QPA.
Replace a Q_WS_MAC test (which is not true for Mac & QPA) with Q_OS_MAC
(which is always true on Mac).

Change-Id: Ie3d12bae233d44b3607f4c57a0c65059d0d6ccb9
Reviewed-on: http://codereview.qt.nokia.com/1129
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
2011-07-05 05:17:36 +02:00
Matthew Cattell 8f94aac68e fixed typo in .pro file
Change-Id: I78a23177deb55a9be15fe19fc841dbf2223332ec
Reviewed-on: http://codereview.qt.nokia.com/1088
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-07-04 17:42:44 +02:00
Martin Petersson a85edb3781 QNam remove compile warnings for QNetworkReplyHttpImpl
Change-Id: I677a72a1cdcb295dd87d2559163e6f56e97c40c8
Reviewed-on: http://codereview.qt.nokia.com/1083
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-07-04 16:06:04 +02:00
Oswald Buddenhagen 3ca4b74618 make argument quoting code on windows less arcane
Change-Id: I6eca1d336ff770d3e5548e58137ca0053d4f63db
Reviewed-on: http://codereview.qt.nokia.com/963
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2011-07-04 16:06:04 +02:00
Oswald Buddenhagen b929ce465f fix argument quoting on windows
quotes prefixed with multiple backslashes would not be escaped
correctly.

Change-Id: I56ec72e31bb4ed2b9119ec1996448f803f89ce35
Reviewed-on: http://codereview.qt.nokia.com/962
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2011-07-04 16:06:04 +02:00
Lasse Holmstedt a77ce3301c Add QScreenOrientationChangeEvent and rotation support to wayland client
Qt Compositor propagates screen orientation changes to wayland, which
are then picked up by the wayland client. The wayland client then sends
a QScreenOrientationChangeEvent to QApplication, which can handle the
orientation change.

Change-Id: Ieb2225e52b7e3c318648f2cb21dab7937f301505
Reviewed-on: http://codereview.qt.nokia.com/1063
Reviewed-by: Matthias Ettrich
2011-07-04 14:32:41 +02:00
Markus Goetz 85869920bb Always assume IPv6 support
It's 2011 baby! And until Qt5 is released probably 2012 :-)

Change-Id: I397aabf25e93c8afb5f562636710985cf0c7acfa
Reviewed-on: http://codereview.qt.nokia.com/1008
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Reviewed-by: Markus Goetz
2011-07-04 14:32:41 +02:00
Martin Petersson 3d5d8b6c4f Add Happy-Eyeballs style IPv6 connection establishing.
In the cases where a DNS lookup will give you both an IPv4 and IPv6
address, this will start two connection channels at the same time.
One trying to connect using IPv4 and one on IPv6. This is done so
that we can use the fastest one for the connection. To do this we
have to do the hostlookup in the connection. The result is then
in the cache for the individual socket so it will not need to do
another lookup.

Task-number: QTBUG-16458
Change-Id: I806c20168d9c5edc2831b80f82a2bd570b36d5fa
Reviewed-on: http://codereview.qt.nokia.com/1003
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2011-07-04 13:04:57 +02:00
Casper van Donderen 640c5d8a99 Move the composition example in the docs.
Change-Id: I63e906e78de75466b9c9bf99d553691c8335f9b2
Reviewed-on: http://codereview.qt.nokia.com/903
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kevin Wright <kevin.wright@nokia.com>
2011-07-01 15:03:33 +02:00
Morten Sorvig 9252742ba8 Cocoa: Window type and flags handling.
Bring over code from Qt4's qwidget_mac.mm.
2011-07-01 14:22:41 +02:00
David Boddie df515ded60 Doc: Fixed qdoc warnings.
Change-Id: I7b4e9ef513b82a82d2365c9256d09520a44ad10d
Reviewed-on: http://codereview.qt.nokia.com/324
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-01 13:06:20 +02:00
Martin Zielinski 9057cad32f Implemented on-screen visibility handling via wayland
The compositor informs the client about it's window not being visible at all.
This is handled here by dispatching a ApplicationActivated/ApplicationDeactivated event.
The application than is free to handle this event and stop rendering and other not
needed processing.

Change-Id: I1dcc3f2a4a8e63ad5cc4f89cbf82cc63f779edbf
Reviewed-on: http://codereview.qt.nokia.com/763
Reviewed-by: Lasse Holmstedt
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-07-01 10:17:54 +02:00
Morten Sorvig 016ac937b9 Cocoa: Fix raise/lower. 2011-07-01 10:02:56 +02:00
Morten Sorvig 455d58e2cd Clean up wayland-cgl-readback.
Read directly into the window buffer - looks like we
don't need to do any byte swapping. Disable the frame
sync, since this causes a deadlock with the compositor.
2011-07-01 09:39:52 +02:00
Eskil Abrahamsen Blomfeldt 25beb403ff Fix resource leak in QFontEngineDirectWrite
Bug introduced by f54c5d9133d7aa7636988db36fa6cc51d26434b6. The release
statement has to come before the return statement :)

Reviewed-by: Jiang Jiang
(cherry picked from commit d58eec3c932d1cdbcf3b42534e8fe870ec109487)

Change-Id: Ib0b550ead3f971736142d88f4ca19bb8edc1b654
Reviewed-on: http://codereview.qt.nokia.com/949
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-01 07:17:35 +02:00
Eskil Abrahamsen Blomfeldt 0fc1e852ae Fix transformations on DirectWrite rasterized text
There were a few bugs in the DirectWrite font engine that caused
transformed text to break.

First of all, alphaMapForGlyph() ignored the transform, so no gray
antialiased text would be transformed.

Second of all, the imageForGlyph() function would use the wrong
bounding box for the rasterized glyph, causing its positioning to
become a little bit off when rotating. The fix is to get the bounding
box from the system and add a margin to this instead of trying to predict
how it will appear after the vertical hinting etc. has been applied.

So that the positioning metrics are in sync with the actual metrics used
by the alphaMap* functions, we also need to implement the
alphaMapBoundingBox() function.

Task-number: QTBUG-19829
Reviewed-by: Jiang Jiang
(cherry picked from commit f54c5d9133d7aa7636988db36fa6cc51d26434b6)

Change-Id: I3c3840b41e19fcacf926dbf454bdc2cba4bd5a99
Reviewed-on: http://codereview.qt.nokia.com/948
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-07-01 07:17:15 +02:00
Friedemann Kleint ee6f25f1fe QEventDispatcherWin32: Remove hook to dispatch GUI events.
In favour of doing it from within the windows procedure
to maintain the ordering of messages.
2011-06-30 15:40:43 +02:00
Laszlo Agocs 7a9c5eea81 Add a touchscreen generic qpa plugin.
Change-Id: Iaf79df05eb4f60d254d95f5d0f280a8f8f8a8de8
Reviewed-on: http://codereview.qt.nokia.com/941
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-06-30 15:03:28 +02:00
Eskil Abrahamsen Blomfeldt 46c128bbf5 Fix text color in some cases of QML and QStaticText
This reverts 518c2a58ed6fdfd7449cb4476aa8ea0d32ad16e3 which caused a
regression.

When writing systems are mixed and an underline is set on the font,
QPainter will set a pen with the current color and a new width on
itself before drawing the decoration. This would cause the recorder
in QStaticText to mark the pen as dirty, saving the current pen
color in all subsequent text items. The effect was e.g. that in QML
the cached color would override the current one, making it impossible
to change the color on the text without forcing a relayout somehow.

The right fix is to only mark the pen as dirty when its color actually
changes.

Task-number: QTBUG-20159
Change-Id: Ia819b67cccc9eaedd23fde655eab58cd892646f8
Reviewed-by: Jiang Jiang
Reviewed-on: http://codereview.qt.nokia.com/870
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-30 15:03:28 +02:00
Frederik Gladhorn 3debd70c08 Add HB_LineBreakType to qharfbuzz_copy_p.h.
The QTextLayout relies on this enum to be defined.

Change-Id: Ibcc8a0073bd56e29431c52c4ea54a909ff42f07b
Reviewed-on: http://codereview.qt.nokia.com/537
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2011-06-30 15:03:28 +02:00
Jiang Jiang 399208c54b Move glyph run merging logic to QTextLayout level
So that we can merge glyph runs from different QTextLines.

Change-Id: Id8e0cc1aa21a482a995773fd55599c0011245e82
Reviewed-on: http://codereview.qt.nokia.com/950
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-30 13:16:41 +02:00
Lars Knoll 13b83d896d make QHoverEvent inherit from QInputEvent
QHoverEvent is an input event and as such should
also contain the current keyboard modifiers.

Change-Id: Ic403a8511eb991a9c6b5132908af1d5900869361
Reviewed-on: http://codereview.qt.nokia.com/937
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-06-30 11:33:27 +02:00
Laszlo Agocs 06d85c51fe Add touch event support to wayland plugin.
Change-Id: If4be4965ae4e9898f5afb756632aa0349bd9b149
Reviewed-on: http://codereview.qt.nokia.com/935
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-06-30 10:18:28 +02:00
Lars Knoll 03deed59ba Remove the remaining QT3_SUPPORT code in corelib
Change-Id: I6641c62d75d2034a46ea7cc869ae65285ae8b8f4
Reviewed-on: http://codereview.qt.nokia.com/866
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Lars Knoll 6fa1bbdce0 remove QT3_SUPPORT in corelib/io
Change-Id: Ia9ad0bebacc538a7392afb0fdcca40e8a2bb687b
Reviewed-on: http://codereview.qt.nokia.com/865
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Lars Knoll 369696dc23 Remove QT3_SUPPORT from corelib/codecs
Change-Id: Ie674be85b64c5816ee0ad4bccc077943b7046136
Reviewed-on: http://codereview.qt.nokia.com/864
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Lars Knoll 7b46ec1601 remove QT3_SUPPORT from corelib/tools
Change-Id: Ie224cf992be675c7d405d4be05e4acd4157e590e
Reviewed-on: http://codereview.qt.nokia.com/863
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Lars Knoll 28cf5c5356 Remove QT3_SUPPORT in src/corelib/global
Change-Id: I3bda38801659125b49ef74537b22281a530b8e0a
Reviewed-on: http://codereview.qt.nokia.com/862
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Lars Knoll 118b3d3f84 Remove Qt3 support functionality from parts of QtCore
Change-Id: I90f391e9bfc412087bd0401e28d2497571f81aa1
Reviewed-on: http://codereview.qt.nokia.com/825
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-06-29 15:10:14 +02:00
Friedemann Kleint ce01064f83 Fix crash if IBus is not configured.
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-29 12:01:41 +02:00
Friedemann Kleint 3ffe4283b6 Adapt font engines for Windows/QPA.
Export QFontEngineMulti and glyph_metrics_t.
Implement alphaMapForGlyph() for the multifont-engines
which is called in the QPA code paths (similar to
boundingBox()).

Acked-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-29 11:19:17 +02:00
Pierre Rossi 406db04c3f Push the data together with the error in the synchronous case.
As it turns out some test cases in QtWebKit rely on this.

Task-number: QTBUG-19556
Change-Id: I84c8abca5e9a018a4057c827fca973b8ebb39df6
Reviewed-on: http://codereview.qt.nokia.com/795
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-06-29 10:42:23 +02:00
Morten Sorvig 57e0c157df Cocoa: Fix RGB/BGR color inversion. 2011-06-29 10:05:16 +02:00
Gunnar Sletta 01b72952c3 Remove QPainter::UniteClip
Change-Id: I5413cb5e2cbb53998bb40f27b9bbc16342caafe6
Reviewed-on: http://codereview.qt.nokia.com/837
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-28 16:52:44 +02:00
Gunnar Sletta 73df041f6c Remove code with no consquence
Change-Id: Ic048be26cd4ffe1094e4badd34a0df233aa9b5d5
Reviewed-on: http://codereview.qt.nokia.com/832
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-06-28 15:32:29 +02:00
Gunnar Sletta a40d74e554 compile on Mac OS X
Change-Id: Ibe74e51aab6e6b8d7a0e71cd88dcc97f72fcd1f9
Reviewed-on: http://codereview.qt.nokia.com/833
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-28 15:32:29 +02:00
Casper van Donderen a964e56228 Change references to affine example.
Because of the merge of demos and examples all references to all demos
have to be updated. This is the update for the affine example.

Change-Id: I83f24010162a73e11786587365c6f10b51d4bf4b
Reviewed-on: http://codereview.qt.nokia.com/774
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: David Boddie
2011-06-28 14:20:17 +02:00
Morten Sorvig 6190290ff1 Compile on Mac.
Mac is a Unix but we probably don't want to use ibus.
2011-06-28 12:22:59 +02:00
Morten Sorvig b5b405ae72 Set mac wayland config. 2011-06-28 12:14:13 +02:00
Morten Sorvig bebda38eaf Add wayland mac readback implementation. 2011-06-28 12:14:13 +02:00
Morten Sorvig 0058f00b64 Factor out CGL code for reuse in wayland. 2011-06-28 12:14:12 +02:00
Morten Sorvig 8e8ad987a2 Remove load(eventdispatchers). 2011-06-28 12:14:12 +02:00
Olivier Goffart 2dd90a27a8 Fix invalid read in QUrl::removeAllEncodedQueryItems
The remove will detach the string making the query pointer invalid.

Note: the "test3" case is commented out because it does not remove
the & at the end, and i do not want to enforce this behaviour in the
test

Task-number: QTBUG-20065
Change-Id: I195c5c3b468f46c797c7c4f8075303f2b1f4724c
Reviewed-on: http://codereview.qt.nokia.com/822
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-28 12:10:30 +02:00
Bernhard Rosenkraenzer 563ec6c690 Make it compile with openssl 1.0.0d, gcc 4.6
SSL_ctrl's prototype has changed slightly in openssl 1.0.0x - the 4th
argument is now a void* as opposed to a const void*.
gcc 4.6 doesn't allow this as an implicit cast.

Merge-request: 1239
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 007f01a7e801d5409708e4b8de8b3ead1481cf7d)

Change-Id: I4f41af981cf0762383b3fc867ec5d726e2b1e5c6
Reviewed-on: http://codereview.qt.nokia.com/821
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-28 10:09:00 +02:00
Richard Moore 2cf935b43e Certificates can have each issuer and subject field many times
THIS COMMIT BREAKS SOURCE COMPATIBILITY BETWEEN Qt 4 AND Qt 5

Qt4 assumed that there was only one entry of each type in the subject
and issuer of a certificate. This is incorrect (eg. you can have many
common names). In addition, some of the fields required by RFC3280
were not suppport. This change modifiers the API to return a list of
entries of each type and adds support for the missing fields. It also
updates the commonname matching code for SSL connections to handle
multiple entries.

Change-Id: I9457266a205def0a07c13de47094ff56ead42845
Merge-request: 5
Reviewed-on: http://codereview.qt.nokia.com/796
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2011-06-27 20:44:36 +02:00
Jiang Jiang 06c20891c1 Add missing APIs to QRawFont and some additional notes to fromFont
Change-Id: I8487a2e32f5b71a1eb51dcb8540cb5de2def09f6
Reviewed-on: http://codereview.qt.nokia.com/769
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-27 16:52:31 +02:00
Lars Knoll e3172080a2 Use floating point coordinates in events
Use FP coordinates in Mouse, Wheel and Hover
events.

Change-Id: I8b43ca257620b4653ae5d6b6122c516384db1e48
Reviewed-on: http://codereview.qt.nokia.com/766
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-06-27 15:26:42 +02:00
Lars Knoll 80eb461360 ibus IM support for the xcb backend
Test code to check input methods using the ibus backend
used on e.g. ubuntu. The IM code is not very sophisticated,
but enough to test that things are working.

Reviewed-by: Jørgen Lind
2011-06-27 14:31:15 +02:00
Olivier Goffart 53a16752c2 QStringBuilder: do not crash with null char*
This is supported by the others operator+

Change-Id: I9a1d1a0afb63acf32935948111d43ca6da370363
Reviewed-on: http://codereview.qt.nokia.com/764
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: hjk <qthjk@ovi.com>
2011-06-27 13:47:53 +02:00
Jørgen Lind 18a3f6169b Merge remote-tracking branch 'base/master' into refactor
Conflicts:
	demos/demos.pro
	demos/embedded/digiflip/digiflip.pro
	examples/examples.pro
	examples/graphicsview/embeddeddialogs/embeddeddialogs.pro
	src/gui/kernel/qplatformglcontext_qpa.cpp
	src/plugins/platforms/wayland/gl_integration/xcomposite_egl/qwaylandxcompositeeglcontext.cpp
	src/plugins/platforms/wayland/gl_integration/xcomposite_glx/qwaylandxcompositeglxcontext.cpp
	src/plugins/platforms/wayland/qwaylanddisplay.cpp
	src/plugins/platforms/wayland/qwaylandwindow.cpp

Change-Id: I2a4ec9e2ca9c9aa9d57b55f98985e810b77bb745
2011-06-27 12:27:54 +02:00
Martin Zielinski 8fb4beb2a1 Removed damaging of waylandsurface after creation
The damaging of the surface at this time causes graphical corruption
in the compositor, as the surface does not contain any rendered output yet.

Change-Id: I51392a68a7531db9901137b9861cb0291e16ff12
Reviewed-on: http://codereview.qt.nokia.com/743
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Matthias Ettrich
Reviewed-by: Lasse Holmstedt
2011-06-27 12:22:24 +02:00
Jiang Jiang bb6be57b38 Only compare styleNames if they are not empty
Task-number: QTBUG-19366
(cherry picked from commit 15e6ac8f4d9e7a419cd0c10405954bde78559fac)

Change-Id: I5f06bb5133f23dbc8ad6d745d44ca0a85ef49686
Reviewed-on: http://codereview.qt.nokia.com/760
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-27 12:22:24 +02:00
aavit f1c49cd12d Fix problem with cosmetic stroking of cubic beziers
The new algorithm would fail if the start and end point were identical.
(cherry picked from commit 43ce5bab32e0d28366317be99df5e6df70787826)

Change-Id: I44c42b190db95b831fd04492e4afe3555fb3db50
Reviewed-on: http://codereview.qt.nokia.com/610
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-27 10:59:28 +02:00
aavit bc7f43cd02 Still use midpoint rendering of aliased ellipses
37c329a removed this, but it is required to get correct fills,
particularly for small radii

Reviewed-by: gunnar
(cherry picked from commit 9d0104d3da01e262d2178c864b4ba94f620eaa3b)

Change-Id: I41a5093f3cf725aee3abffde4d871566f0f8151e
Reviewed-on: http://codereview.qt.nokia.com/608
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-27 10:59:28 +02:00
Lars Knoll ad0ecae41c Fix smaller bugs in the stroker
Calculating the continuation point for
closed contours was not taking transformations
and the half pixel offset into account.
(cherry picked from commit 31e9c098f3c9321eebf1ac3e4c44a2d18d3816b8)

Change-Id: I735d8e58fc3cf64668f546d5f42892d420d58e84
Reviewed-on: http://codereview.qt.nokia.com/607
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-27 10:59:28 +02:00
aavit 048d840ca2 Compilation fix of f8e8583
(cherry picked from commit 7cfd06ee22a875d7658ce6668b418e6f8c6f6480)

Change-Id: Iaaed01590874fbcc439f06c17a63f0343d49a9bb
Reviewed-on: http://codereview.qt.nokia.com/605
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-27 10:59:28 +02:00
aavit d690b14106 Revert "Fix how subpixel positions are intepreted in an aliased grid."
This reverts commit 69fc9e594e6d5da87bff42707973683f84b67c93.

Conflicts:

	src/gui/painting/qpaintengine_raster.cpp
	src/gui/painting/qrasterizer.cpp
(cherry picked from commit f8e85838c5531b56c2175cbdb9c24db426f7fd89)

Change-Id: I4f936404000e6fa88887d0fbe3fbde92c8edd259
Reviewed-on: http://codereview.qt.nokia.com/603
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-27 10:59:28 +02:00
Olivier Goffart 7eeabcf70d Fix event delevery order
Some functions (such as QObject::moveToThread) did not keep
the event ordered by priority.
And because qUpperBound is used to add events, that mean new
events would not be inserted in order.

Task-number: QTBUG19637
Change-Id: I38eb9addb1cdd45b8566e000361ac6e5f1f2c2b8
Reviewed-on: http://codereview.qt.nokia.com/733
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-06-27 10:59:28 +02:00
Jiang Jiang 1fda23c0c6 Store styleName in font database
So that queries like QFontDatabase::styles() can return exactly
the same styles as the system does. Then application can use
QFont::setStyleName() to select those styles later. With a lot
of fonts not providing correct numeric weight/width values and
even if they did, values are usually not directly mapped to
QFont enums, styleName is probably the only reliable way to
select any possible font in the system.

Reviewed-by: QTBUG-13518
Change-Id: Id8a9469b804f1b5bb81d8c7378e7e8778f9a4fff
Reviewed-on: http://codereview.qt.nokia.com/739
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-27 10:59:28 +02:00
Lars Knoll 371d398f70 Renamed QLine/TextControl to QWidgetLine/TextControl
Renamed them to free up the QTextControl and QLineControl
class names for a new API in QtGui.

Reviewed-by: Jørgen Lind
2011-06-27 10:16:09 +02:00
Jiang Jiang a06c8405d0 Add styleName to QFontDef comparison
To make sure we cache different font engines with different style
names.

Task-number: QTBUG-19366
Change-Id: Iefaebd5418f212ff759e03c1745f839a7f23d013
Reviewed-on: http://codereview.qt.nokia.com/738
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-27 09:41:24 +02:00
Friedemann Kleint 48b1322df3 Compile fix: MinGW. 2011-06-24 14:38:04 +02:00
Laszlo Agocs 73746a5a89 Have the selection offer global handled always without delay.
In a previous attempt to solve the problem of selection offer
globals arriving too early, the handling was delayed. This
solved the issue of crashing but introduced a timing issue,
because the offers (the mime types) will arrive immediately
after the global and therefore will simply be ignored in
case the delayed processing of the selection offer had not
yet been done. The visibility of the problem depended on the
implementation of the compositor, with recent changes to
qt-compositor the issue is very visible.

The patch solves the issue properly: The wayland clipboard
instance is created right away, as early when needed, and the
integration will simply pick up the already created instance.

Change-Id: I75aaba4b0590c05cc0091bed7bb3593186c1188f
Reviewed-on: http://codereview.qt.nokia.com/687
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-06-24 12:09:44 +02:00
Thiago Macieira ea933359b7 Add a function that returns the D-Bus local machine ID
Cherry-picked from 4.8 59bd3bcd961fb3198dc9ba24996f7f9af67aeda3

Change-Id: Id3c8f9edbcbe9bbea83d4d54a6eb25500ab80b68
Reviewed-on: http://codereview.qt.nokia.com/655
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-23 18:26:28 +02:00
Jørgen Lind 1b9c679eb5 Make sure to call damage on the buffer when we damage it
Change-Id: Id325a1dee322c2b37215e6577870068260f5f7cc
Reviewed-on: http://codereview.qt.nokia.com/683
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2011-06-23 17:04:21 +02:00
Jørgen Lind e9d3699123 Update the wayland plugin
to sha1 bfea3d6befdb688d5354e6f15a9400ea637febf9

Change-Id: Ie855cfbc6b786f1e738e205d403478614774ad34
Reviewed-on: http://codereview.qt.nokia.com/682
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-06-23 17:03:51 +02:00
Samuel Rødal 8ab2f3d9bd Get declarative and wayland EGL backend working for Qt compositor. 2011-06-23 15:40:42 +02:00
Friedemann Kleint 90ac74c771 Pass process event flags to QEventDispatcherWin32.
to enable it to use QWindowSystemInterface::sendWindowsEvents.
2011-06-23 14:48:44 +02:00
Jørgen Lind ce4d3435d7 Make sure to call damage on the buffer when we damage it 2011-06-23 14:30:22 +02:00
Jørgen Lind bbcc62efaa Update the wayland plugin
to sha1 bfea3d6befdb688d5354e6f15a9400ea637febf9
2011-06-23 13:59:44 +02:00
Morten Johan Sorvig 2f476d8465 Compile. 2011-06-23 11:15:13 +02:00
Morten Sorvig 454a4ebb67 Remove QEventDispatcherQPA inheritance support.
QEventDispatcherQPA is now a small "leaf" class,
there is no need to inherit from it or make it
inherit another event dispatcher.
2011-06-23 11:04:21 +02:00
Morten Sorvig 9988b12cc5 Add QWindowSystemInterface::windowSystemEventsQueued()
This removes the last use of QWindowSystemInterfacePrivate
from outside QtGui, so we can make that class non-exported
again.
2011-06-23 11:04:21 +02:00
Morten Sorvig 58d10c0bd7 Refactor window system event dispatching.
Add QWindowSystemInterface::sendWindowSystemEvents,
which contains the canonical "empty and send queued
window system events" implementation.

Make the Cocoa, QPA, and GLIB dispatchers use the
new implementation. Cocoa now no longer inherits
from QPA.
2011-06-23 11:04:21 +02:00
Morten Sorvig c359cf0017 Remove stray file. 2011-06-23 11:04:20 +02:00
Friedemann Kleint 4890211f03 Remove leftover file.
Code went into Windows plugin.
2011-06-23 10:27:26 +02:00
Samuel Rødal 6d6ac714ca Prevent endless loop when calling QWaylandShmWindow::format(). 2011-06-22 16:28:45 +02:00
Samuel Rødal f3440ddf52 Get wayland plugin working again. 2011-06-22 16:26:02 +02:00
Morten Sorvig 9512c440b5 Compile. 2011-06-22 14:58:41 +02:00
Friedemann Kleint a009fec107 Remove Windows code from platform lib.
Rubber-stamped-by: Jørgen <jorgen.lind@nokia.com>
2011-06-22 14:20:16 +02:00
Morten Sorvig ca494ce782 Send expose on (initial) show 2011-06-22 14:14:15 +02:00
Morten Sorvig d6dc5ed1d6 Compile 2011-06-22 14:13:52 +02:00
Morten Sorvig def5901955 Reintroduce QWindow::SurfaceType
On Cocoa it makes sense to distinguish between the
two window types.

Reviewed-by: Samuel
2011-06-22 14:10:26 +02:00
Richard Moe Gustavsen 0e4844aa24 Cocoa: clean up pro file for platform plugin 2011-06-22 14:01:02 +02:00
Richard Moe Gustavsen 041b809a62 Cocoa: implement support for wheel events 2011-06-22 13:59:35 +02:00
Friedemann Kleint 111068f383 Add QGuiEventDispatcherWin32.
Dispatches Gui events after
DispatchMessage().

Reviewed-by: Samuel Rødal <sroedal@trolltech.com>
Reviewed-by: Morten Sørvig <morten.sorvig@nokia.com>
2011-06-22 13:43:47 +02:00
Friedemann Kleint 8c42defe67 Compile. 2011-06-22 12:11:55 +02:00
Morten Sorvig be4221d8fa Q_GUI_EXPORT is a mac-only workaround. 2011-06-22 12:04:03 +02:00
Lars Knoll 61d22c932d fix autotest regressions introduced by 37c329a3
Add proper license headers and properly clip
pixel drawing to the devices bounding rect.
(cherry picked from commit 67d275542464c794ec4b650f10cca9a17e10c977)

Change-Id: I52a166919e87e07168fa5f597b22398a1abefe14
Reviewed-on: http://codereview.qt.nokia.com/590
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-22 11:45:29 +02:00
Morten Johan Sorvig f1975cfc53 Make xcb work again after event dispatcher changes.
The platform plugin/event dispatcher creation order
has now been reversed and the event dispatcher
cannot be accessed during plugin construciton.
2011-06-22 11:37:42 +02:00
Oswald Buddenhagen e6b744fb4b simplify relative path generation
instead of hand-crafting the logic, simply use QDir::relativeFilePath()

Change-Id: I5a495ad6bdfa8ec126741180770934e7ebee0495
Reviewed-on: http://codereview.qt.nokia.com/512
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-06-22 11:17:02 +02:00
Shane Kearns 85136496bc IPv4 + IPv6 dual stack sockets
Adds support for binding "dual stack" sockets (via QUdpSocket or
QTcpServer). A dual stack socket will accept incoming connections on
either IPv4 or IPv6 interfaces.

QHostAddress::Any     - use this to bind a dual stack socket
QHostAddress::AnyIPv6 - use this to bind a socket for IPv6 only
QHostAddress::AnyIPv4 - use this to bind a socket for IPv4 only

Binding to a specific address rather than one of the "any" addresses
is restricting you to a protocol anyway so no behaviour change there.
IPv6 sockets were previously dual stack on some OS and v6 only on others
Any previously meant IPv4 only

This commit implemented & tested on Windows 7, Linux (Ubuntu 10.04)
and Mac OS 10.6.7.

Windows XP and server 2003 do not support dual stack sockets, even though
they can support IPv6. On those versions, QHostAddress::Any will still
bind to IPv4 0.0.0.0 (which is also the behaviour anywhere QT_NO_IPV6 is
defined)

Autotests run:
qudpsocket (includes a new test case)
qtcpserver (includes a new test case)
qtcpsocket
qnetworkreply
qhostaddress

Task-number: QTBUG-17080
Change-Id: Id486677c4f832e18dc0ff1a86c5f5fc422c9eb4f
Reviewed-on: http://codereview.qt.nokia.com/421
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
Reviewed-by: Markus Goetz
2011-06-22 11:01:00 +02:00
Lars Knoll 407a6fe798 add QInputMethodQueryEvent
QInputMethodQueryEvent will replace the old
inputMethodHints() and inputMethodQuery() APIs
in QWidget. It has the advantage that it works
nicely with any kind of QObject.
2011-06-22 10:46:12 +02:00
Lars Knoll 4363d836f6 remove the plugin support for QInputContext
This will be handled through the lighthouse plugin
instead.
2011-06-22 10:46:12 +02:00
Lars Knoll e1293b49e3 add a platform interface for input method support
add QPlatformInputContext to help supporting
complex text input. Communication with the
focus objects/widgets will happen slightly
different then before, through events instead of
methods one can query on QWidget.
2011-06-22 10:46:11 +02:00
Morten Johan Sorvig c23580de7b Add libxcb-xfixes0-dev to xcb deps 2011-06-22 10:07:17 +02:00
Samuel Rødal 0235b9d0a6 Compile fix (region is an accessor now, not a public member variable). 2011-06-22 09:50:47 +02:00
Morten Sorvig 4efaf305f5 Add lighthouse event dispatcher API.
Platform plugin creation is now moved forward in
order to have a platform plugin instance at event
dispatcher creation time.

Plugins are now responsible for implementing
PlatformIntegration::createEventDispatcher and returning
an QAbstractEventDispatcher subclass.
2011-06-22 09:47:49 +02:00
Samuel Rødal 18c1d67137 Made QExposeEvent public and added exposeEvent() in QWindow.
This is needed for applications that use QBackingStore directly.
2011-06-22 09:41:10 +02:00
Samuel Rødal 176f30b137 OpenGL API refactor.
Rename QGuiGLFormat to QSurfaceFormat, and make QWindow sub-class of
QSurface and QPlatformWindow sub-class of QPlatformSurface, instead of
having QPlatformGLSurface accessor in QWindow.
2011-06-21 14:02:22 +02:00
Richard Moe Gustavsen 272daebaa0 Cocoa: fix compiler warning 2011-06-21 13:53:21 +02:00
Richard Moe Gustavsen c477fa3e2c Cocoa: add missing return statement
Rev-By: sroedal
2011-06-21 11:49:22 +02:00
Laszlo Agocs 14a1d6d3c7 Make readback-glx working again in wayland. 2011-06-21 10:23:28 +02:00
Laszlo Agocs 31b2311818 Compile fix for readbackglx after surface->backingstore renaming. 2011-06-21 10:10:22 +02:00
Morten Sorvig ee60794a68 Compile. 2011-06-21 09:56:46 +02:00
Morten Sorvig 2e94bef1e4 Compile fix for platformsupport on Mac.
Switch platformsupport over to be a shared library,
which is well supported by the build system.

This requires exporting classes we use. I've done
this on OS_MAC only for now.

Reverts 4581a9999e
2011-06-21 09:52:29 +02:00
Samuel Rødal cf1a53cf3c Port Cocoa plugin to new backing store interface. 2011-06-21 09:04:01 +02:00
Samuel Rødal 6ce6b8a378 Rename QWindowSurface -> QBackingStore and split into platform / public.
Also get rid of GL window surface and related classes.
2011-06-21 09:04:01 +02:00
Samuel Rødal 891a86f0f3 Compile fixes. 2011-06-21 09:04:01 +02:00
Richard Moe Gustavsen 4581a9999e Mac: buildfix for cocoa lighthouse plugin
Rev-By: msorvig
2011-06-20 14:18:26 +02:00
Richard Moe Gustavsen 1ed22cdfd3 Mac: buildfix for QtPlatformsupport 2011-06-20 14:18:26 +02:00
Lars Knoll 1c86896f53 Don't crash if Clipboard and Selection hold the same mimedate
Cliboard and Selection can hold the same QMimeData object.
Don't delete the mimedata in this case before when clearing
only one of them.

Reviewed-by: Samuel
2011-06-20 13:32:20 +02:00
Lars Knoll 7a64f12cfe use selection changed events from XFixes
properly initialize the XFixes extension and then
use the selection changed events to notify
Qt apps.

Reviewed-by: Samuel
2011-06-20 13:31:52 +02:00
Gunnar Sletta 665d8a0454 Make QPoint have the same layout on all platforms
Change-Id: I8330295761a4440afd81c121039237fb651d9a9c
Reviewed-on: http://codereview.qt.nokia.com/487
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-06-20 13:08:50 +02:00
Peter Hartmann 0da3d7d5d3 SSL certificate printing: increase max certificate size
apparently there are really big certificates around, so 4k might not
always be enough.

Change-Id: I84df82d117469a14b4c6db81e0ceecc1a8ba47b3
Reviewed-on: http://codereview.qt.nokia.com/554
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-06-22 11:01:00 +02:00
Jiang Jiang 6ebb60158d Fix fontconfig usage in X11 font database
We should do FcConfigSubstitute(0, pattern, FcMatchFont) on a
FcPattern for query because the family list in it will contain
almost all the families after FcConfigSubstitute(0, pattern,
FcMatchPattern), then the test in <match target="font"> will
almost always succeed. In general, FcMatchFont substitute
should only be done on the FcPattern that we got after
FcFontMatch() or FcFontRenderPrepare().

Based on the suggestion of fontconfig author Behdad Esfahbod,
this patch reorganized the tryPatternLoad logic so that it only
does the QFontEngine creation part, FcPattern *match is retrieved
outside of that function. In this way, the match pattern we got
can be either from FcFontMatch() or after FcFontRenderPrepare()
on one of the fonts we got from qt_fontSetForPattern(). Then we
don't need to duplicate the pattern and add all criterias back
with qt_addPatternProps(). It not only simplified the code a lot
but also fix the way we apply FcMatchFont substitution. This
substitution will either be done by FcFontMatch() or
FcFontRenderPrepare, both implicitly.

Task-number: QTBUG-2148, QTBUG-19947
Change-Id: I2e4dbbe7f448e81850176732b4a65028f2b912fa
Reviewed-by: Eskil
Reviewed-on: http://codereview.qt.nokia.com/579
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-22 11:01:00 +02:00
Peter Hartmann 366f757e84 SSL certificate printing: lookup Symbian ordinal
Change-Id: I5358726f0457f00098c248326ed66fb54af1d177
Reviewed-on: http://codereview.qt.nokia.com/553
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
2011-06-21 19:09:31 +02:00
Richard Moore ae4b4696a5 Add the ability to convert a certificate to text
Adds a function that will convert a certificate to human readable text
format using the openssl print function. This is useful for debugging
and for displaying the full details of a certificate (including those
parts not supported by the Qt API).

Change-Id: I27238d05df37f8b15ad09f8e761b06344631a9ce
Merge-request: 2
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/551
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-06-21 16:12:55 +02:00
Liang Qi fa2bb6ab64 Clean-up the macros about Qt Mobility in bearer
Remove the usages of QT_MOBILITY_BEARER, QTM_BEGIN_NAMESPACE and etc.

Change-Id: I68e335c5caa65aa0aebe1a0db82d9633f1724556
Reviewed-on: http://codereview.qt.nokia.com/513
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2011-06-20 19:24:47 +02:00
Liang Qi 26877d990b Support -qtnamespace and -qtlibinfix again
This fix is for qtbase libraries with -qtnamespace and -qtlibinfix
options in configure.

Task-number: QTBUG-19964
Change-Id: I2f2ff1748f2c1c2b20d5f73b6be36f68a7a26cef
Reviewed-on: http://codereview.qt.nokia.com/505
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-06-20 15:27:18 +02:00
Eskil Abrahamsen Blomfeldt 46ffabde50 Fix empty lines in Qt HTML when displayed in external browsers (again)
This redoes f541c78e1bc5b293466b40e6f10496199a4a5d73 in a way which
should be more compliant with different browsers. In particular,
Outlook didn't support the CSS trick in the last fix, so we need the
somewhat larger patch which adds an extra line break node to the tree
and then ignores it when re-importing the document.

Task-number: QTBUG-3669
Reviewed-by: Simon Hausmann
(cherry picked from commit cb760eaef631abd49836ae5c8dc12a61ef5eff0d)

Change-Id: Ia55bf39d52461aa9445a9a5d0bfb5b4c5bf1e9bd
Reviewed-on: http://codereview.qt.nokia.com/492
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-06-20 15:27:17 +02:00
Martin Petersson 1d450c6941 QAuthenticator::setUser() parse user name in form user@domain
Task-number: QTBUG-19894
Change-Id: I063dbc66e5f47a83cc1c0aee8913062b4b5e42bc
Reviewed-on: http://codereview.qt.nokia.com/507
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-20 15:27:16 +02:00
Christian Strømme 883b120d2f Fix QProcess emitting two started signals on X11
On X11 QProcess would emit two started signals when calling
QProcess::waitForStarted(). We should expect that the private
implementation of waitForStarted() should emit the started signal
and return true or false appropriately.

Task-number: QTBUG-7039
Change-Id: I3d381399ab7a39bf57db03a110fa6747a4fc6a24
Reviewed-by: pending
Reviewed-on: http://codereview.qt.nokia.com/331
Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
2011-06-20 14:13:17 +02:00
Eskil Abrahamsen Blomfeldt 18eb310d5b Fix bug which caused repeated characters in a QML Text
We would include too much in the characters displayed, since
itemEnd is actually the start of the next item and not the
end of the current one. Adding a minus one removes the duplicated
characters at the end of text lines.

Change-Id: I1e13470548fafaa692ae58e019e9e2469a947f5e
Reviewed-on: http://codereview.qt.nokia.com/495
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-06-20 13:08:48 +02:00
Lars Knoll 8ffbdae179 remove postscript related files
We don't support postscript in Qt 5 anymore

Reviewed-by: Gunnar
2011-06-20 12:50:16 +02:00
Lars Knoll 813139f4f5 Enhance Xcb clipboard code
Some cleanup on the data structures.
Properly implement support for timestamps on each
selection.
Transfer selections to the clipboard manager on
exit if it exists.
Properly clear our selection when X11 asks us to
do so.
2011-06-20 12:50:16 +02:00
Lars Knoll fc266713cc Add a platform API for QClipboard::ownsMode()
Simply forward ownsMode() to the QPlatformClipboard.
2011-06-20 12:50:16 +02:00
Laszlo Agocs 672fe5d43c Restoring QT_WAYLAND_GL_SUPPORT ifdefs. 2011-06-20 12:21:29 +02:00
Eskil Abrahamsen Blomfeldt f562b90518 Make it possible to set color of QStaticText with pixel size >= 64
Adding the fallback to QPainterPath for large QStaticTexts created a
regression where all text would be painted in black regardless of the
color you set on it. The color in QStaticTextItem is sometimes invalid,
in which case the current painter color should be used. In either case,
the color is already set on the current pen when entering
drawStaticTextItem() so we can just use that.

Task-number: QTBUG-19950
Reviewed-by: Jiang Jiang
(cherry picked from commit ee77ee5c25f58271e6f2863225d08573da86c3ee)

Change-Id: I955aa6526e5b14589430f8dccd006a9de9ae08c9
Reviewed-on: http://codereview.qt.nokia.com/491
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-20 12:01:22 +02:00
Richard Moe Gustavsen 83130d791d Mac: build fix. Make sure Platformsupport builds as a static lib.
...and not as an .app, as It did.

Rev-By: Jørgen Lind
2011-06-20 11:58:32 +02:00
Laszlo Agocs c84346ddff Make glx wayland backends working. 2011-06-20 10:30:30 +02:00
Laszlo Agocs 34d19a5571 Remove leftover xkb member variable in QXcbKeyboard. 2011-06-17 14:39:00 +02:00
Friedemann Kleint 08489ef837 Compile. 2011-06-14 09:52:10 +02:00
Gunnar Sletta b9fcfa18f5 Initialize member variable.
Change-Id: Ica42c77614fa4fa9ae7692e00d3fc796219aacdc
Reviewed-on: http://codereview.qt.nokia.com/466
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-06-14 09:35:53 +02:00
Eckhart Koppen a37f8e08ec Include cycle_p.h only conditionally
cycle_p.h is only needed when HAVE_TICK_COUNTER is defined, and should
not be included otherwise. It is also a 3rd party header which is not
exported as a private header so far, which makes compilation of
dependenty modules fail.

Change-Id: I5c2546eae7d65fc68b8411c20634aca541c327d6
Reviewed-on: http://codereview.qt.nokia.com/465
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2011-06-13 15:45:18 +02:00
Jørgen Lind 297407bdc6 Autodetect the xcb backend 2011-06-10 16:09:08 +02:00
Samuel Rødal 1ee96f093a Use XCB_GRAVITY_STATIC in XCB plugin for frame independent geometry. 2011-06-10 16:05:04 +02:00
Laszlo Agocs bdda694e86 Handle really global selection offers in wayland clipboard.
Handle selection offer globals properly even if they arrive during the
initial blocking read. If such a global arrives so early, the platform
integration is not yet available from QApplicationPrivate (as it is
just being constructed). Therefore the handling of the selection
offer has to be delayed. At the moment selection offers are typically
posted as globals and not added to the global list, but that is likely
to change in the future.

Change-Id: Ib4ae804ad7f19e05978ee08828b88e028a3bf7b2
Reviewed-on: http://codereview.qt.nokia.com/446
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-06-10 14:27:32 +02:00
Jørgen Lind 11dc006328 Merge branch 'refactor' of scm.dev.nokia.troll.no:qt/qtbase-staging into refactor 2011-06-10 13:35:10 +02:00
Jørgen Lind 85a992a3f8 Compile fix, and remove warnings 2011-06-10 13:26:36 +02:00
Ritt Konstantin fc74b4e564 fix an incorrect OpenMode flags handling in QBuffer::open()
which leads to absurd statement (QBuffer::open() == !QBuffer::isOpen()) to be true.
also treat Truncate as (Truncate | WriteOnly) to satisfy lazy ones

Reviewed-by: Joao
Merge-request: 2612
(cherry picked from commit 6b91affb9a355e668bc9d06dee580d95230ac63a)

Change-Id: I657d4d0a33f7993313fe2a1a8ba408371991717f
Reviewed-on: http://codereview.qt.nokia.com/447
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-10 13:14:04 +02:00
Andy Shaw c1ed7951ac Fix a case of SP_MediaSkipForward returning the wrong pixmap.
This fixes QTBUG-18311.

Merge-request: 2621
Reviewed-by: Joao
(cherry picked from commit a9364af090fd3209b92ed5e07a1374488d22b1c4)

Change-Id: I0a0fc99060c64a9aab395a183f2faf9223e9a925
Reviewed-on: http://codereview.qt.nokia.com/449
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-10 13:14:03 +02:00
Jørgen Lind c70efdec0f Merge remote-tracking branch 'base/master' into refactor
Conflicts:
	examples/animation/animatedtiles/animatedtiles.pro
	examples/animation/appchooser/appchooser.pro
	examples/animation/moveblocks/moveblocks.pro
	examples/animation/states/states.pro
	examples/animation/stickman/stickman.pro
	examples/dialogs/configdialog/configdialog.pro
	examples/dialogs/sipdialog/sipdialog.pro
	examples/dialogs/standarddialogs/standarddialogs.pro
	examples/dialogs/tabdialog/tabdialog.pro
	examples/draganddrop/draggableicons/draggableicons.pro
	examples/draganddrop/draggabletext/draggabletext.pro
	examples/draganddrop/fridgemagnets/fridgemagnets.pro
	examples/draganddrop/puzzle/puzzle.pro
	examples/gestures/imagegestures/imagegestures.pro
	examples/graphicsview/basicgraphicslayouts/basicgraphicslayouts.pro
	examples/graphicsview/collidingmice/collidingmice.pro
	examples/graphicsview/elasticnodes/elasticnodes.pro
	examples/graphicsview/weatheranchorlayout/weatheranchorlayout.pro
	examples/itemviews/addressbook/addressbook.pro
	examples/itemviews/chart/chart.pro
	examples/itemviews/fetchmore/fetchmore.pro
	examples/itemviews/puzzle/puzzle.pro
	examples/mainwindows/menus/menus.pro
	examples/painting/basicdrawing/basicdrawing.pro
	examples/painting/concentriccircles/concentriccircles.pro
	examples/painting/imagecomposition/imagecomposition.pro
	examples/painting/painterpaths/painterpaths.pro
	examples/painting/transformations/transformations.pro
	examples/qtconcurrent/imagescaling/imagescaling.pro
	examples/qtestlib/tutorial1/tutorial1.pro
	examples/qtestlib/tutorial2/tutorial2.pro
	examples/qtestlib/tutorial3/tutorial3.pro
	examples/qtestlib/tutorial4/tutorial4.pro
	examples/qtestlib/tutorial5/tutorial5.pro
	examples/qws/dbscreen/dbscreen.pro
	examples/qws/svgalib/svgalib.pro
	examples/richtext/syntaxhighlighter/syntaxhighlighter.pro
	examples/statemachine/rogue/rogue.pro
	examples/tools/plugandpaintplugins/extrafilters/extrafilters.pro
	examples/tools/styleplugin/plugin/plugin.pro
	examples/uitools/multipleinheritance/multipleinheritance.pro
	examples/widgets/analogclock/analogclock.pro
	examples/widgets/calculator/calculator.pro
	examples/widgets/calendarwidget/calendarwidget.pro
	examples/widgets/codeeditor/codeeditor.pro
	examples/widgets/icons/icons.pro
	examples/widgets/imageviewer/imageviewer.pro
	examples/widgets/lineedits/lineedits.pro
	examples/widgets/movie/movie.pro
	examples/widgets/shapedclock/shapedclock.pro
	examples/widgets/softkeys/softkeys.pro
	examples/widgets/tetrix/tetrix.pro
	src/gui/painting/qpaintengine_raster.cpp
	src/gui/painting/qpaintengine_raster_p.h
	src/openvg/openvg.pro
	src/openvg/qpaintengine_vg_p.h
	src/plugins/graphicssystems/meego/meego.pro
	src/plugins/platforms/fontdatabases/basicunix/basicunix.pri
2011-06-10 13:09:57 +02:00
Samuel Rødal 6b0cd62e5e Added frameMargins() API and support in XCB plugin. 2011-06-10 12:40:56 +02:00
Eskil Abrahamsen Blomfeldt 11bbfb5882 Fix missing empty lines in Qt HTML when displayed in compliant browsers
When QTextDocument exports HTML, it makes an effort to be compatible
with its own importer, hence it has to be compatible with the dialect
of HTML which Qt has developed over the years. One incorrect
interpretation in Qt is that an empty paragraph is interpreted as an
empty line. So if you use a QTextDocument to produce HTML for text where
an empty line has been added, this empty line will not be visible when
the document is viewed in a compliant browser. The fix is to set the
height of the empty paragraph to 1em, so that it will match the current
pixel size of the font, thus look the same as a <p><br /></p> but
without altering the structure of the document.

Reviewed-by: Gunnar
(cherry picked from commit f541c78e1bc5b293466b40e6f10496199a4a5d73)

Change-Id: Ic0eae2c81609b8872eb2eb9344a3ec416cd09149
Reviewed-on: http://codereview.qt.nokia.com/445
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-10 12:04:16 +02:00
Friedemann Kleint f56a905ced Compile Windows. 2011-06-10 10:41:20 +02:00
Jørgen Lind f30b8b96b8 Fix QtPlatformSupport when compiling with glx and xcb 2011-06-10 10:16:18 +02:00
Jørgen Lind dfd07cb247 Fix versionheader name for QtPlatformSupport 2011-06-10 10:11:41 +02:00
Friedemann Kleint 288bf48388 idc: Do not link against QtGui.
(which throws off the build order).
2011-06-10 10:04:22 +02:00
Jørgen Lind 2aeefdddc1 Remove the platforms/install_rules directory 2011-06-10 09:54:12 +02:00
Jørgen Lind f00f7a895b Update dependency list in xcb README 2011-06-10 09:46:56 +02:00
Jørgen Lind 6ee65dc478 QtPlatformSupport: A helper library for platform plugins
QtPlatformSupport is a static library. Platform plugins are meant to
link against this library to pull in dependencies such as fontengines
and convenience functions for finding the right GL configs. The linker
will only pull in the symbols used, so the size of the library doesn't
really matter
2011-06-10 09:46:56 +02:00
Tapani Mikola db37aa1004 Fontengine buildfix for xcb platform plugin.
Change-Id: Ic909e1ac08163e62634643c68862e802a016b911
Reviewed-on: http://codereview.qt.nokia.com/442
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-06-10 09:40:55 +02:00
Morten Sorvig 17763a7b31 Actually add QEventDispatcherMac. 2011-06-10 09:26:16 +02:00
Samuel Rødal 4a189c188c QWindowContext / QWindowFormat refactor.
To enable having a single GL context used for multiple drawables we need
to de-couple the context class a bit more from the window class in the
plugin API. Now contexts are created stand-alone based on a GL format
and a share context, and when calling makeCurrent() a desired surface
is specified. This maps well to GLX, EGL, Cocoa, AGL, and WGL, which all
support this use case.

QWindowContext is renamed to QGuiGLContext, and QWindowFormat is renamed
to QGuiGLFormat. We have the ability to introduce a pbuffer or similar
other offscreen GL drawable abstraction in the future.
2011-06-10 09:24:56 +02:00
Laszlo Agocs 4d10e64f2a Use XLookupString for translating key events.
There seems to be no easy equivalent in the XCB world and the
fallback we currently have is really incomplete. Hence we will
call XLookupString with a fake XKeyEvent if XCB_USE_XLIB is
enabled.

Reviewed-by: Samuel Rødal
2011-06-09 16:49:03 +02:00
Jiang Jiang 97391be5eb Allow selecting fonts with irregular style names
Fonts like "Helvetica Neue UltraLight" or "Skia Regular Black
Condensed" can't be selected in Qt because either they don't
report correct numeric values for weight/stretch/etc. or these
values are not mapped from QFont enums in a linear way. Thus
we provide a shortcut to select these fonts with PostScript
name or full name without resorting to family name matching in
QFontDatabase (these fonts are not registered in font database
anyway). After this, we can simply use:

    QFont font("Helvetica Neue");
    font.setStyleName("UltraLight");

to select these fonts. QCoreTextFontEngineMulti matched like
this can be created directly from the CTFontRef instance
instead of creating from the font name, making this process
faster.

The commit also cleaned up the font loading process in Mac
font database a bit, moving the code for family matching into
a separate function.

Add QFontInfo::styleName() and QRawFont::styleName() to access
the resolved style name for a font.

Task-number: QTBUG-19366
Change-Id: Iad07768c02ed06cc8d6b7395dec554384f410506
Reviewed-on: http://codereview.qt.nokia.com/333
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-09 15:07:13 +02:00
Gunnar Sletta b97215b04c Duplicate some harfbuzz symbols inside Qt.
This is done to remove a compile-time dependency on the harfbuzz
source files inside qtbase/src/3rdparty. These are not accessible
now that QT_SOURCE_TREE is not accessible as a qmake variable
anymore.

With the refactor branch we might solve this differently, but for
now this is how we get svg and declarative to compile.

Change-Id: I5dad23f2ea1f650e2621c1c1fcf39632a3a22ae8
Reviewed-on: http://codereview.qt.nokia.com/378
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-09 13:01:16 +02:00
Eckhart Koppen dc25fb7278 Use homePath instead of homeDirPath
homeDirPath requires Qt 3 support, which is not enabled in all
configurations.

Change-Id: I7d51b880574021ef4569a4a2b16f06a7786dbb7d
Reviewed-on: http://codereview.qt.nokia.com/415
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
2011-06-09 11:43:30 +02:00
Morten Sorvig e3410908a2 Add QEventDispatcherMac.
Create it directly in QGuiApplication for now, 
later on we'll move it to the cocoa plugin.
2011-06-09 11:19:12 +02:00
Morten Sorvig 0a4c2eae4b Remove QPlatformEventLoopIntegration.
Instead we'll let the platform plugins construct
an QEventDispatcherQPA subclass. This API will be
added later on.

This temporarily breaks cocoa, uikit and opencode.
2011-06-09 11:19:12 +02:00
Laszlo Agocs d88a773218 Bail out from cursor creation when malloc fails. 2011-06-09 11:08:05 +02:00
Laszlo Agocs 06c56cb464 Get modifier mapping using standard X, no need for libxkbcommon here.
Reviewed-by: Samuel Rødal
2011-06-09 11:01:35 +02:00
Laszlo Agocs bd781231b2 Create custom cursors via XRender.
Reviewed-by: Samuel Rødal
2011-06-09 11:00:02 +02:00
Pierre Rossi 94c173de05 Add tilde (both ~ and ~<user>) expansion to QFileDialog on UNIX.
Task-number: QTBUG-3265

Change-Id: Id8062afe69e798e1f9cf3f4e967ae0d30c362b72
Reviewed-on: http://codereview.qt.nokia.com/411
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
2011-06-08 22:37:52 +02:00
Marius Storm-Olsen 15d6f1f031 Fix modules to load(qt_module) first
Change-Id: Iabdfffff09088243863a8661add73298ed8baaf3
Reviewed-on: http://codereview.qt.nokia.com/413
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-06-08 21:04:48 +02:00
Laszlo Agocs 4469de4ce7 Cursor support in xcb plug-in.
Custom cursor pixmaps with depth greater than 1 are not yet supported
and will be converted to monochrome always.

Reviewed-by: Samuel Rødal
2011-06-08 14:47:22 +02:00
Lars Knoll 88f3b059a9 Avoid out of bounds write
Reviewed-by: Samuel
2011-06-08 14:46:50 +02:00
Olli Werwolff 2d09fe38ac Undefine DrawText in qlineedit.cpp
There is a #define DrawText DrawTextW in winuser.h which is included
in windows.h so that the enum value in line 1981 is seen as DrawTextW
and thus is not a valid enum value on Windows.

Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:30 +02:00
Olli Werwolff 4b566e5db9 Most checks for windows in widgets have to be ws specific
Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:29 +02:00
Olli Werwolff affaefe049 use correct includes in qaccessible_win.cpp/qwizard_win_p.h
Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:28 +02:00
Olli Werwolff aecd41c070 Do not compile _win files when -qpa is used
Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:27 +02:00
Olli Werwolff a844e23607 QTextDocumentLayout has to be exported as it is used in widgets
Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:26 +02:00
Olli Werwolff 9a3e1dba27 Fixed compilation with QT_NO_PRINTER
Reviewed-by: Samuel
Reviewed-by: Lars Knoll
2011-06-08 13:57:25 +02:00
Lars Knoll f2ff9036ae cosmetic changes 2011-06-08 13:46:09 +02:00
Jiang Jiang 3fb67767fc Reorder member varibles in QGlyphRunPrivate to eliminate warning
Reviewed-by: Eskil
(cherry picked from commit 74a1135341783449970d579b273d00c837ac14b0)

Change-Id: I8e1c6bdc7f0957d8f389531f5f5682c536cdc286
Reviewed-on: http://codereview.qt.nokia.com/374
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-08 12:25:23 +02:00
Jiang Jiang c2dddd8322 Fix warning in qtextengine compilation
enableHarfbuzz() should only be defined on Mac.

Reviewed-by: Eskil
(cherry picked from commit 5ce3fbb67b79c3732fd47b296ef9421398ca520c)

Change-Id: I9ecb5db49478c3f5beb5d41cf99320f0faedce2e
Reviewed-on: http://codereview.qt.nokia.com/375
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-08 12:25:22 +02:00
Jiang Jiang d9e3d1a540 Fix compile when configure with no fontconfig support
Task-number: QTBUG-19716
Reviewed-by: Eskil
(cherry picked from commit 5a598afa3f1928e9ad18257e2fa48fe3d5739917)

Change-Id: I05107970e3273fce48303c9956e1c9aa928832b9
Reviewed-on: http://codereview.qt.nokia.com/376
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-08 12:25:21 +02:00
Lars Knoll b6b244efda Fix behaviour after WM_TAKE_FOCUS
We should not call requestActivateWindow() in
reaction to WM_TAKE_FOCUS. Looks like it should
only be done if the focus should in fact go
to a modal child of the widget.
2011-06-08 11:44:41 +02:00
Olli Werwolff 819f9ca965 Use Q_WIDGETS_EXPORT for widgets library
Reviewed-by: Lars Knoll
2011-06-08 10:43:55 +02:00
Lars Knoll 6a243e5559 revert accidental commit 2011-06-07 16:45:28 +02:00
Lars Knoll 1729785d1e remove unused code 2011-06-07 16:44:23 +02:00
Lars Knoll 52e5fd336b cleanups code
Make QXcbClipboard and QXcbDrag a QXcbObject to simplify
the code.
Use the predefined atoms in xproto.h instead of our own
defines.
2011-06-07 16:29:35 +02:00
Lars Knoll 4386425ce3 Implement QDropEvent::source() again
QDropEvent::source() now returns a QObject
instead of a widget, matching the implementation
in QDrag.

Reviewed-by: Samuel
2011-06-07 15:50:54 +02:00
Lars Knoll 71304aefd0 reset certain global variables on deletion
qt_button_down needs to be reset to 0 if it
points to the widget being deleted.

Reviewed-by: Samuel
2011-06-07 15:50:54 +02:00
Lars Knoll 779e1aaa35 Protect against deleted windows
Check that the window is still there before
trying to deliver an event to it.

Reviewed-by: Samuel
2011-06-07 15:50:54 +02:00
Lars Knoll 689ac3631d Initialize variable
Reviewed-by: Samuel
2011-06-07 15:50:54 +02:00
Lars Knoll 1928e633a5 Fix some remaining issues with DnD
Do not set the event mask of the window
we drop onto to NO_EVENT. Always use the
clipboards requestor window to convert
selections.

Reviewed-by: Samuel
2011-06-07 15:50:54 +02:00
Lars Knoll ff53b1dcec add WM support class
Add a QXcbWMSupport class to better integrate with
NET_WM compliant window managers.

Suppport NET_WM_USER_TIME on windows.

Reviewed-by: Samuel
2011-06-07 15:50:53 +02:00
Lars Knoll c3f9de6296 Implement XDnD in the xcb plugin
Ported most of the code to support dragging
from qdnd_x11.cpp to xcb. Some features are still
not working 100% correct, but it's becoming
usable.

Reviewed-by: Samuel
2011-06-07 15:50:53 +02:00
Lars Knoll 30b7c6512c X11 DnD implementation
Initial code for DnD on X11. Only Xdnd based,
Motif DnD is being ignored.

The code is currently limited to dropping
stuff onto the application. Starting drags
is not yet implemented.

Reviewed-by: Samuel
2011-06-07 15:50:53 +02:00
Lars Knoll 92edbd2060 Add a startDrag to QPlatformDrag
This can be used to initialize data
when a drag starts. The Xdnd implementation
at least has a need for it.

Reviewed-by: Samuel
2011-06-07 15:50:53 +02:00
Thiago Macieira dddfcd66f8 Fix regression that caused waitForXXX(-1) to fail.
Regression was introduced by 8d4cd52b6981a4e6deea7fdb77f56e40c4f3e6ba
when it failed to check when msecs == -1. This manifested visibly in KDE
failing to connect to any SSL site -- kioslaves are synchronous and use
waitForXXX(-1) (in this particular case, waitForEncrypted, which calls
waitForReadyRead).

Also, take the opportunity to convert these tests in QTcpSocket to use
port 80 (a defined service in the test server) instead of port 22.

Reviewed-by: Martin Petersson
(cherry picked from commit cb5b6799333794496269aa7e6515f96c2ac96d37)

Change-Id: I256a1e138e43fd45844976fe84cd2bc938552e47
Reviewed-on: http://codereview.qt.nokia.com/359
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-06-07 15:14:56 +02:00
Morten Sorvig 28391442e7 Cocoa: Implement raise() and lower(). 2011-06-07 12:06:26 +02:00
Morten Sorvig 67f18cafcc Cocoa: Implement setWindowTitle. 2011-06-07 11:12:38 +02:00
Morten Sorvig 29b29d1b70 Fix Cocoa mouse position handling.
I'm not sure what "local" and "global" means for 
QWindowSystemInterface::handleMouseEvent. Sending
the mouse position in window coordinates for both
works.
2011-06-07 10:53:37 +02:00
Eskil Abrahamsen Blomfeldt ae3b5b3ab4 Add function QGlyphRun::setRawData()
To provide an optimized way of constructing QGlyphRun objects with no
copying or allocation, we add function setRawData() (naming inspired by
QByteArray::setRawData()). Data retrieved from QRawFont can be passed
directly into this. The logic is now that the data pointers in
QGlyphRunPrivate should always point to the current valid data and is
what will be used in comparisons and drawing calls. The vectors are
optimizations to avoid unnecessary copying if the user wants to use
the QVector based API (which makes it easier to manage the memory.)
This reflected in the functions that return QVectors, which will
return the stored vector if and only if it is identical to the
current pointer. Otherwise we will have to copy the memory.

The internal addition operators in QGlyphRun have been removed since
they really provide no real optimization and have an unclear definition
if the two glyph runs are based on different fonts.

Reviewed-by: Jiang Jiang
(cherry picked from commit 86d88c5b719fd3d50336d9d8e7127b8045ee82ae)

Change-Id: Id5bb55ee3d93afb32ffca850f53382e856df7b3e
Reviewed-on: http://codereview.qt.nokia.com/342
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-07 10:30:57 +02:00
Richard Moe Gustavsen bc6f4d14f7 Buildfix for Mac OS
Since 'widgets' now is a separate library outside GUI, some
previously hidden symbols now needs to be exported. This patch
will make 'widgets' build.
2011-06-07 09:53:09 +02:00
Eckhart Koppen eabaf61256 Added private header dependencies to MeeGo graphics system plugin
Depends on core, gui and opengl private headers

Change-Id: If3266c3b7233bf40b5ad80a8a99fd5f2c7eafcec
Reviewed-on: http://codereview.qt.nokia.com/336
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eckhart Koppen <eckhart.koppen@nokia.com>
2011-06-06 19:11:25 +02:00
Samuel Rødal 078e4ef6c7 Made tst_QWidget::updateWhileMinimized() pass.
This requires adding a couple of window system interface events, namely
Map, Unmap, and Expose. When a widget is minimized on X11 it is
unmapped, and thus update requests should not be delivered. Instead the
event will delivered when the widget is mapped, which causes an Expose
event to be sent. The Unmap and Expose event thus need to be handled in
QWidgetWindow, and Map is also added for the purpose of API symmetry
(and for future needs).
2011-06-06 16:03:38 +02:00
Samuel Rødal 481067453f Fixed warning about missing return in qmessagebox.cpp 2011-06-06 16:03:38 +02:00
Gunnar Sletta 42b47a404b Use Raster pixmaps for the EglFS plugin
Change-Id: Id94df7b5ebe298104d05bee3ae58e06201c596f7
Reviewed-on: http://codereview.qt.nokia.com/334
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-06-06 15:33:16 +02:00
Morten Sorvig 0bb276863f Set visibility state. 2011-06-06 14:49:13 +02:00
Jørgen Lind fc9a648dc0 Make building of platform plugins indifferent if its out of source
This requires some source files to be shipped with the Qt install
They are now copied into QT_INSTALL_DATA/platform
2011-06-06 14:35:36 +02:00
axis ec5cdf9c5d Added module CONFIG to uitools.
This seems to be necessary for installing, and has no side effects
that I can tell.

Change-Id: Ic778b8a3937621ddd401ddd83d05831460db8f39
Task: QTBUG-19585
Reviewed-on: http://codereview.qt.nokia.com/236
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2011-06-06 13:29:40 +02:00
Samuel Rødal 0273bc5d22 Made tst_QWidget::repaintWhenChildDeleted() pass.
Implement some missing functionality in QWidget::destroy().
2011-06-06 12:38:41 +02:00
Laszlo Agocs 78264f333e Avoid setting the active window to null when there is a FocusIn queued. 2011-06-06 10:15:14 +02:00
Samuel Rødal 4f1a6ac732 Implemented QXcbScreen::topLevelAt(const QPoint &p).
This makes the tst_QWidget::widgetAt() auto-test pass.
2011-06-06 09:08:25 +02:00
Samuel Rødal 36b2c31ba8 Make XCB plugin work better in combination with auto-tests.
When an auto-test calls processEvents() indirectly via QTest::qWait(),
QAbstractEventDispatcher::aboutToBlock() doesn't get emitted since
the processEvents() implementation gets called without
the QEventLoop::WaitForMoreEvents flag set. Since the auto-tests depend
on all events getting delivered, we need to process the XCB events on
awake() as well.
2011-06-06 09:00:13 +02:00
axis 1835afe621 Moved common module profiles to be feature profiles.
This enables external modules to also make use of them without having
access to the complete QtBase source code.

Change-Id: I056e45cba6c6798b76670b8d238dadb2d9f9c092
Task: QTBUG-19585
Reviewed-on: http://codereview.qt.nokia.com/234
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2011-06-05 14:47:14 +02:00
Jiang Jiang c25495dba7 Correct antialias disabling logic for Core Text
We should always turn antialias off when QFont::NoAntialias being
passed in styleStrategy. That corrects some QStaticText tests.

Change-Id: Iaffc5f3bb7f501dcb648cab41a8b6ffcf93f90ae
Reviewed-on: http://codereview.qt.nokia.com/328
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-04 12:20:01 +02:00
axis 55f2a05a20 Install some headers that were previously missing from install.
Change-Id: I58a5f58e6e03e3e266de23beee47de0c823f3240
Task: QTBUG-19585
Reviewed-on: http://codereview.qt.nokia.com/233
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2011-06-03 22:20:39 +02:00
Samuel Rødal 7e4116cc8a Basic QDesktopWidget support.
Makes it possible to use grabWindow on the desktop widget with the xcb
plugin, which gives us a few more passing tests in tst_QWidget.
2011-06-03 14:35:09 +02:00
Laszlo Agocs 5f4faba583 Remove out-of-date TODOs. 2011-06-03 14:02:13 +02:00
Samuel Rødal daa707ebf7 Prevent crash in QXcbIntegration::grabWindow().
Copy the image explicitly before calling QPixmap::fromImage().
2011-06-03 13:54:08 +02:00
Samuel Rødal e99ab7de9b Implemented QXcbIntegration::grabWindow(). 2011-06-03 13:39:44 +02:00
Jiang Jiang 39d6b7b287 Fix Windows build
Change-Id: Ieafe2cefe0dcb00a3b22133506fb854428abff5e
Reviewed-on: http://codereview.qt.nokia.com/320
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-06-03 13:14:18 +02:00
Laszlo Agocs 1f456b4cbb Add support for mouse and keyboard grab.
Reviewed-by: Samuel Rødal
2011-06-03 11:59:15 +02:00
Jiang Jiang 43c0e08ba2 Refactor glyph pretransform check
Move paintEngineSupportsTransformations logic from QPainter to paint
engine subclasses. Simplify and consolidate checks for cached drawing
(pretransformed) and path drawing (untransformed) in raster paint
engine. Fix unnecessary transform when paint engines actually take
the path drawing track. Fix scaling and rotation transform in raster
engine for Mac.

Task-number: QTBUG-19086
Change-Id: I1c0c1800a5173d3db765b9fccfd0e7a3628e3815
Reviewed-on: http://codereview.qt.nokia.com/298
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2011-06-03 10:57:42 +02:00
Samuel Rødal 7d9fcaccb1 Prevent crash in tst_QWidget::persistentWinId().
Only call createWinId() if we have a parent widget set.
2011-06-03 10:07:01 +02:00
Samuel Rødal 504ab89c6a Get rid of superfluous debug output in the xcb plugin. 2011-06-03 10:00:25 +02:00
Samuel Rødal ac4276531c Made tst_QWidget::winIdChangeEvent() pass with Lighthouse.
We need to call setWinId() at appropriate times, and enable creation of
native handles for child widgets when createWinId() is called.
2011-06-03 10:00:25 +02:00
Andy Nichols 1fb4d6737c Allow SHM buffers to be displayed in Wayland plugin when using DRM
When running an application with the wayland backend, SHM window
surfaces were not being displayed on the wayland-demo compositor as
wl_surface_damage was being called, but not wl_buffer_damage as well.

Change-Id: I2ffea3bbb20cb3729cd029bd21855819cd7fcf55
Reviewed-on: http://codereview.qt.nokia.com/305
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-06-01 17:09:04 +02:00
Jørgen Lind 17613b7add Merge branch 'refactor' of scm.dev.nokia.troll.no:qt/qtbase-staging into refactor 2011-06-01 16:00:16 +02:00
Jørgen Lind 00ef07fe96 Merge remote-tracking branch 'base/master' into refactor
Conflicts:
	src/gui/embedded/qmousepc_qws.cpp
	src/gui/embedded/qwslock.cpp
	src/plugins/decorations/default/default.pro
	src/plugins/decorations/styled/styled.pro
	src/plugins/decorations/windows/windows.pro
	src/plugins/gfxdrivers/ahi/ahi.pro
	src/plugins/gfxdrivers/directfb/directfb.pro
	src/plugins/gfxdrivers/eglnullws/eglnullws.pro
	src/plugins/gfxdrivers/linuxfb/linuxfb.pro
	src/plugins/gfxdrivers/qvfb/qvfb.pro
	src/plugins/gfxdrivers/transformed/transformed.pro
	src/plugins/gfxdrivers/vnc/vnc.pro
	src/plugins/graphicssystems/meego/meego.pro
	src/plugins/graphicssystems/opengl/opengl.pro
	src/plugins/graphicssystems/openvg/openvg.pro
	src/plugins/graphicssystems/shivavg/shivavg.pro
	src/plugins/graphicssystems/trace/trace.pro
	src/plugins/kbddrivers/linuxinput/linuxinput.pro
	src/plugins/mousedrivers/linuxtp/linuxtp.pro
	src/plugins/mousedrivers/pc/pc.pro
	src/plugins/mousedrivers/tslib/tslib.pro
	src/plugins/platforms/minimal/minimal.pro
	tests/auto/qerrormessage/qerrormessage.pro
2011-06-01 15:34:58 +02:00
Laszlo Agocs 7c3e1e0ccd Have tooltips shown properly with xcb. 2011-06-01 15:32:58 +02:00
Samuel Rødal e917c1d5aa Make tst_QWidget::ensureCreated() pass with -platform xcb.
We need the parent-creation logic to be enabled on QPA as well.
2011-06-01 14:28:49 +02:00
Shane Kearns 7b6c3707de sockets: limit buffer size of the internal sockets in proxy engines
The application can normally control the amount of buffering of a
socket or QNetworkReply by using the setReadBufferSize API.
This allows the application to flow control the TCP connection, and
avoids out of memory errors when the data being downloaded is received
faster than the application can process it.

However when using a proxy, the proxy socket engine has an internal
socket which is used to communicate with the proxy server. It is not
visible to the user, and does not have awareness of the buffer size of
the external socket.

To solve this, we limit the internal sockets' buffer size to 64k bytes.
Under normal operation, the data is swiftly copied to the external
socket where the buffer can grow (or not) based on the application's
set value for read buffer size.

Task-number: QT-4966
Reviewed-by: Markus Goetz
(cherry picked from commit c4727a85eed57a4db698326a1bed4aa75b6e5284)

Change-Id: I29e6628e38b79b41c4464ba8cb772a0f03717043
Reviewed-on: http://codereview.qt.nokia.com/153
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Markus Goetz
2011-06-01 13:38:06 +02:00
Samuel Rødal f05236a40d Prevent XSetInputFocus BadMatch errors.
The BadMatch errors are generated if XSetInputFocus is called before the
window has been mapped, so we need to set a flag when we get the map
notify event.
2011-06-01 13:37:44 +02:00
Laszlo Agocs ead7c1c33c Start using libxkbcommon in the xcb plug-in. 2011-06-01 11:01:32 +02:00
Laszlo Agocs 646fcc1bd3 Do not choke on zero-sized windows.
Configure requests with zero width or height will always
fail with BadValue and have to be avoided. Same goes for
shm segments of size 0.
2011-06-01 11:01:32 +02:00
Lars Knoll 38745b341c add a platform interface for DnD
Use the simple in process DnD implementation
for xcb.
2011-06-01 09:55:39 +02:00
Lars Knoll 07f8aecb52 Clean up DnD code
Some cleanups of the DnD code to prepare for
creating a platform API.
2011-06-01 09:55:39 +02:00
Andrew den Exter 50b77ef0b0 Make TextEdit word selection more natural.
QTextControl will only extend the selection to a word if the cursor is
directly over it which prevents the selection being extended if the
mouse is dragged up or down a to a shorter line of text making it
difficult to select multiple lines of text.  Just disable that
limitation when the TextEdit word selection is enabled.

Change-Id: I3b9d1575c0141db8441197d740de94a90eacc077
Task-number: QTBUG-19230
Reviewed-by: Martin Jones
Reviewed-on: http://codereview.qt.nokia.com/292
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-06-01 09:36:15 +02:00
Andrew den Exter 16bd22b1bc Ensure the TextEdit cursor delegate is repositioned on mouse events.
Update the micro focus when a mouse press changes the cursor position
of a read only TextEdit.

Change-Id: I11855037f7938b2cd23ac6ad165722b5289b4f46
Task-number: QTBUG-19109
Reviewed-by: Martin Jones
Reviewed-on: http://codereview.qt.nokia.com/291
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-06-01 08:04:58 +02:00
Andrew den Exter 3c7793acc0 Don't crash on an invalid replacementStart from an input method.
Ensure the cursor position does not exceed the bounds of the
current text.

Change-Id: If38f7729372562324d11eadd1a976c0c6da91863
Task-number: QTBUG-19054
Reviewed-by: Martin Jones
(cherry picked from commit 6fbfb1ab3f26ad672eb24f9b4a0ce1a8eea08298)
Reviewed-on: http://codereview.qt.nokia.com/290
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2011-06-01 06:55:27 +02:00
Bernhard Rosenkraenzer 15871d606a Fix build in C++0x mode
This fixes compiler errors (gcc 4.6 -std=gnu++0x on x86_64 Linux):

embedded/qwslock.cpp: In function `bool forceLock(int, int, int)':
embedded/qwslock.cpp:121:39: error: narrowing conversion of `semNum'
        from `int' to `short unsigned int' inside { } [-fpermissive]

(and equivalent errors in other lines/files)

See
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf
Section 8.5.4/6

Change-Id: I2cbac5482b87f33287a416af5a5c9bde621720bc
Reviewed-By: Olivier Goffart
Merge-Request: 1240
Reviewed-on: http://codereview.qt.nokia.com/275
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-05-31 17:46:40 +02:00
Jørgen Lind d0beb0d95b Fix the egl path for xcb and wayland plugins
Reviewed-by: Samuel Rødal
2011-05-31 15:57:03 +02:00
Laszlo Agocs 9bd270f64d Have a sensible default double click interval.
Having 0 as default would disable double clicks completely which
is not really good.

Reviewed-by: Samuel Rødal
2011-05-31 14:18:47 +02:00
Laszlo Agocs bc75a8963e Fix for excess creation of QWindow instances.
topData() is called from various functions for any kind of widgets,
not just for top-levels. Therefore createTLSysExtra cannot assume
that the widget is top-level. Previously QWindows were created
for desktop widget, toolbars, mdi subwindows, etc. which is
wrong. The patch will avoid this, and will also fix drawing
isses when dragging mdi windows.

Reviewed-by: Samuel Rødal
2011-05-31 13:50:30 +02:00
axis a8814fcb69 Made qpluginbase.pri into a feature profile.
This enables other modules to use it without having access to the
QtBase sources.

Change-Id: I0a588b2e14ca88fa068c7c2bcc69ff669444f6c6
Task: QTBUG-19585
Reviewed-on: http://codereview.qt.nokia.com/237
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-05-31 12:51:29 +02:00
Laszlo Agocs 7db1f8fc04 Fix QWidget::windowHandle().
The window member in extra should remain null for widgets
that do not have a native window. The change introduced
in an earlier commit is clearly wrong.
2011-05-31 12:36:46 +02:00
Friedemann Kleint 66febd27cb Windows: Bring back the HDC to the raster engine, Q_OS_WIN. 2011-05-31 10:48:36 +02:00
Laszlo Agocs 589a562c01 Fix isTopLevel() in QWindow.
This also makes modal hints set properly for dialogs so the
additional checks during active window change are not needed
anymore.

Reviewed-by: Samuel Rødal
2011-05-31 10:45:24 +02:00
Laszlo Agocs be24744c75 Set xcb size hints properly avoid strange behaviour.
Strange behaviour means incorrect dialog sizes, inability to resize,
X crashes, etc. These were caused by not properly filling the size
hint structure, leaving possibly random garbage in it.

Reviewed-by: Samuel Rødal
2011-05-31 09:59:55 +02:00
Gunnar Sletta 8ff3028e23 Export the qt_gl_read_framebuffer function for use in declarative
Change-Id: Ia1dd186ca954774e1faaa4b2e606acac9333d9b0
Reviewed-on: http://codereview.qt.nokia.com/224
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2011-05-30 18:32:55 +02:00
Laszlo Agocs 0909a0bbfb Made QXcbConnection::atomName() more fail safe.
Reviewed-by: Samuel Rødal
2011-05-30 16:16:36 +02:00
Jiang Jiang 9f837af945 Support placing cursor in ligature with mouse or touch
We need to find out the closest element in the ligature to
the point we clicked (or tapped), currently we do this by
dividing the width of that ligature glyph evenly by the number
of characters it covered. We only support Common and Greek script
at this point, ligatures in other scripts are still handled as a
whole.

Task-number: QTBUG-19260
Reviewed-by: Eskil
(cherry picked from commit 5338d78aa9d80ddd2bcb21e6b22cd2cf1522a7d3)

Change-Id: Ic747e9458d561aca0848dcd1e8b94e0a23fd8189
Reviewed-on: http://codereview.qt.nokia.com/196
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-05-30 15:16:34 +02:00
Laszlo Agocs 80d69dc984 Do not scroll in QXcbWindowSurface when m_image is not yet created.
Reviewed-by: Samuel Rødal
2011-05-30 15:01:34 +02:00
Lars Knoll 3a1f80ac92 compile with QT_NO_CUPS 2011-05-30 14:44:13 +02:00
Lars Knoll f190d39197 Cleanup code for copy/paste of text
Remove support for COMPOUND_TEXT. All apps should
these days support UTF8_STRING. If not they'll have to live
with STRING or TEXT.

ICCCM states that TEXT is in the encoding of choice. Make this
latin1 instead of local8bit. XA_STRING is defined to be latin1,
so don't use local8bit here neither.
2011-05-30 14:44:13 +02:00
Lars Knoll ab74e89f5f correctly decode pasted text 2011-05-30 14:44:13 +02:00
Lars Knoll ec23bf0457 partially working paste
We now paste something from the clipboard,
but the format conversion seems to be
still off at times.
2011-05-30 14:44:12 +02:00
Lars Knoll bbb2da4a1b add an xcb based clipboard implementation
Copying from the app to somewhere else works
fine, but pasting into the app is still broken.
2011-05-30 14:44:12 +02:00
Lars Knoll b03ed7b151 Don't leak xcb events
Correctly free the xcb events delivered to
the xcb plugin.
2011-05-30 14:44:12 +02:00
Lars Knoll 28ab03741e Correctly define standard XA_FOO atoms 2011-05-30 14:44:12 +02:00
Lars Knoll 1b1142b305 Add xcb based mime type handling
Reworked the code from the xlib lighthouse
plugin to remove most of the Xlib dependencies.

The code originally comdes from qdnd_x11.cpp
2011-05-30 14:44:12 +02:00
Laszlo Agocs 1d3864488c Have proper warnings shown when xcb window surface creation fails.
Reviewed-by: Samuel Rødal
2011-05-30 14:41:14 +02:00
Laszlo Agocs ddae8b445b Avoid dialog and other widgets with non-adjusted window flags.
Reviewed-by: Samuel Rødal
2011-05-30 14:41:14 +02:00
Laszlo Agocs e277d14425 Add focus and modal dialog support.
Reviewed-by: Samuel Rødal
2011-05-30 14:41:14 +02:00
Laszlo Agocs ef8e5af1d2 The proper fix for subwindow parenting issues.
The previous patch tried to work around the fact that Qt::SubWindow
accidentally pulled in Qt::Window. This patch corrects the root
cause of the problem.
2011-05-30 14:41:13 +02:00
Morten Sorvig b48abb631f Compile on Mac.
Use the unix QPrinterInfo implementation.
2011-05-30 14:41:13 +02:00
Friedemann Kleint af13869fef Add QPlatformPrinterSupport.
Add QPlatformPrinterSupport which provides functionality for
obtaining QPrinterInfo and creating native printer engines.

Rubber-stamped-by: Lars Knoll <lars.knoll@nokia.com>
2011-05-30 14:21:09 +02:00
Jiang Jiang 37f20ea8e6 Fix ligature offset in multi-line text
Reviewed-by: Eskil
(cherry picked from commit 278cf1f37945050c4a46d5acab0659f3a7546a43)

Change-Id: Ice20aa38a49ea16cf56bd3705c7d400ee165a9c2
Reviewed-on: http://codereview.qt.nokia.com/195
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-05-27 17:17:08 +02:00
Laszlo Agocs 09796553a5 Revert "Have subwindows parented properly."
This reverts commit bb2986f165.
2011-05-27 15:49:20 +02:00
Jiang Jiang 93339428c0 Fix compile for systems with old fontconfig
Change-Id: Ia26796bdbab7988d14163d3c1290111c0cb22bf7
Reviewed-on: http://codereview.qt.nokia.com/182
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-05-27 15:41:25 +02:00
Laszlo Agocs bb2986f165 Have subwindows parented properly.
Reviewed-by: Samuel Rødal
2011-05-27 14:27:41 +02:00
Liang Qi 623c753a7b Add QUuid::toRfc4122() and fromRfc4122()
Following the RFC4122, provide the interfaces between QUuid
and QByteArray, they are simpler then toByteArray() and
relevant.

Thanks for the suggestion and brief code from Robin Burchell.

Task-number: QTBUG-19420
Reviewed-by: joao
(cherry picked from commit 06873e467d98ad60d827afae29500bf2ff783c03)

Change-Id: I4623ae3363f1d5affa45de73fac616bb67a9eaa1
Reviewed-on: http://codereview.qt.nokia.com/168
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 13:59:53 +02:00
Liang Qi 8f4c007f85 Add QUuid::toByteArray() and relevant
Add QUuid::toByteArray() and QUuid(const QByteArray &). Same
behavior with QUuid::toString() and QUuid(const QString &).

Task-number: QTBUG-19419
Reviewed-by: joao
(cherry picked from commit 71f923f29e2c60444a85fc765fc582e06cb7eca4)

Change-Id: I41dad65e269f739ba9ec1c27e9da96af6401356c
Reviewed-on: http://codereview.qt.nokia.com/167
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 13:21:42 +02:00
Liang Qi c8888b518b QDataStream: speedup steaming of QUuid.
By reading and writing as a whole block, because the size of QUuid
is fixed.

Reviewed-by: joao
(cherry picked from commit d56d7f107f9d18810d742ac4d3a2e36077722cb8)

Change-Id: I90554d68da7394c99c48acd0bc5a0eee3b3f7776
Reviewed-on: http://codereview.qt.nokia.com/169
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 13:21:41 +02:00
Liang Qi ae0eb22591 Optimize QUuid::QUuid(const char *)
Reviewed-by: joao
(cherry picked from commit 96d10abbb40c52ac6274f1144766f3fb27dfd726)

Change-Id: I050b602b6cac669b4d88046b0a707048ce0a8cda
Reviewed-on: http://codereview.qt.nokia.com/170
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 13:21:40 +02:00
Liang Qi fb214079bd Fix the build for QUuid
Add a quint8 specialization for qbswap.

Reviewed-by: Bradley T. Hughes
(cherry picked from commit 32a583b575da1b387955734ccf36b0a93de37670)

Change-Id: I7dae5e47565ed30de960983649e5c214e0303fe3
Reviewed-on: http://codereview.qt.nokia.com/171
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 13:21:39 +02:00
Friedemann Kleint 4ace7475e7 uic: #include <QLayout> for QToolBox on non-laid-out forms.
for the fake tab-spacing property, which accesses the internal
layout and sets its spacing.

Task-number: QTBUG-19339
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
Change-Id: I89f5c035bd3798a0998c3046de643bda0fa8da6b
(cherry picked from commit 89f5c035bd3798a0998c3046de643bda0fa8da6b)
Reviewed-on: http://codereview.qt.nokia.com/173
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-05-27 12:12:20 +02:00
Friedemann Kleint bf234e3288 uic: Use QString::fromUtf8 for QUrl properties.
As otherwise the compilation of ui_-files fails when
using QT_NO_CAST_FROM_ASCII. Bug reported on mailing list.

Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
Change-Id: I00bf2e2605b97ff77efdcb68b7968375b3e9d195
(cherry picked from commit 00bf2e2605b97ff77efdcb68b7968375b3e9d195)
Reviewed-on: http://codereview.qt.nokia.com/174
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-05-27 12:12:17 +02:00
Liang Qi 40425ea53e Fix a regression in QList::mid()
It doesn't need to copy anything when pos is after size().

Task-number: QTBUG-19164
Reviewed-by: Oswald Buddenhagen
(cherry picked from commit 8befc4982a32752e48c82cacbed045e7336a3569)

Change-Id: Iccac75842616f0d41e457e844a15d1a3ccfeb642
Reviewed-on: http://codereview.qt.nokia.com/164
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 11:06:52 +02:00
Liang Qi 750f995fb2 Optimize QUuid::toString() and relevant
QUuid::toString() and QUuid(const QString &) are too slow now.

Task-number: QTBUG-19418
Reviewed-by: joao
Reviewed-by: Denis Dzyubenko
Reviewed-by: Ritt Konstantin
Reviewed-by: Robin Burchell
Reviewed-by: Richard J. Moore
(cherry picked from commit 7ce566ed82666ac08f137f4d8590ce589d42c82a)

Change-Id: I7e5bb4072f0941c20a7278a2d9766d4ef47be811
Reviewed-on: http://codereview.qt.nokia.com/166
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-05-27 11:06:49 +02:00
Gabriel de Dietrich d49973f834 Fix infinite recursion when changing geometry on Mac
Some complex widgets might get a negatively sized rectangle when
calling QWidgetPrivate:setGeometry_sys_helper(), triggering a infinite
recursion. Normalizing the rectangle size before checking for size
change is enough to break this infinite recursion.

Task-number: QTBUG-17333
Change-Id: I4682c3088ea53fb9f28f746c8264f573b5284825
Reviewed-on: http://codereview.qt.nokia.com/156
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-05-26 20:39:30 +02:00
Olivier Goffart bbbea1fa96 Fix typo in comment
(cherry picked from commit c8a3c427e96ee11907592f5c7f72046795c027ed)
Change-Id: I837f18f043b18410c1d93b9f1156acf729dad510
Reviewed-on: http://codereview.qt.nokia.com/145
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-by: axis
2011-05-26 19:22:41 +02:00
Friedemann Kleint 0064dc7bc8 XCB: Fix moveToScreen to use QWindow instead of QWidget. 2011-05-26 17:25:27 +02:00
Olivier Goffart cc6faee69e MSVC do not really support initilizer_list
std::initializer_list exists, but it is not possible to do bracket
initialisation

Reviewed-by: Joao
(cherry picked from commit a09f5c425079405e72078813bdb7b103c29a5221)
Change-Id: I837f18f043b18410c1d93b9f1156acf729dad510
Reviewed-on: http://codereview.qt.nokia.com/143
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-05-26 14:16:22 +02:00
Olivier Goffart d3e5fc0220 Support of lambdas in QtConcurrent::run
Reviewed-by: Joao
(cherry picked from commit 917f2ff617209bcc283eb3590b422bcf239c0537)
Change-Id: I837f18f043b18410c1d93b9f1156acf729dad510
Reviewed-on: http://codereview.qt.nokia.com/142
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-05-26 14:16:21 +02:00
Olivier Goffart 83291e6a07 Add QtPrivate::QEnableIf
Needed for QtConcurrent.

Like the new std::enable_if (in c++0x)

Reviewed-by: Joao
(cherry picked from commit 837f18f043b18410c1d93b9f1156acf729dad510)
Change-Id: I837f18f043b18410c1d93b9f1156acf729dad510
Reviewed-on: http://codereview.qt.nokia.com/141
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
2011-05-26 14:16:20 +02:00
Shane Kearns 785905a1f4 Fix thread safety regression of QNetworkConfigurationManager
Changes in 4.8 led to a timer being created in the wrong thread.
I have restored the invokeMethod used to call startPolling() to solve
this problem.

Reviewed-By: mread
(cherry picked from commit e9e95f75e7c1e8325c2acce0087ff8677d773779)

Change-Id: I8b89fa89766679beb2d469f9bbd1f5e2233f061b
Reviewed-on: http://codereview.qt.nokia.com/138
Reviewed-by: Markus Goetz
2011-05-26 14:16:18 +02:00
shiroki a78e184811 fix "Host" header of ipv6 URLs in QNAM
Change-Id: I6bf3320e5ab285e3d1f4d72bd1ef0a0e42813e5b
Reviewed-on: http://codereview.qt.nokia.com/115
Reviewed-by: Markus Goetz
2011-05-26 14:16:16 +02:00
Jason Barron 8c9deffcb3 Add private header support to the EGLFS platform plugin.
Several of the QPA headers include private headers in the Core, Gui and
OpenGL modules and with the new modularized Qt, we need to opt-in for
these.

Change-Id: Ib7a81f7843ef89e3c5c5218f790287bb6c00e4cb
Reviewed-on: http://codereview.qt.nokia.com/133
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-05-26 12:51:11 +02:00
Friedemann Kleint 2d26fda6e1 Remove OpenVG from qtbase.
Acked-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-05-26 10:55:57 +02:00
Jason McDonald 0ed16a1c55 Remove the redundant QTEST_ACCESSIBILITY define.
QTEST_ACCESSIBILITY was always defined and only used in one autotest.
Code that uses accessibility features should be excluded if Qt was built
without accessibility rather than based on a define in the test
framework.

Change-Id: I3a517a579a51f536a0983b43bd99e86292026552
Reviewed-by: pending
Reviewed-on: http://codereview.qt.nokia.com/129
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-05-26 09:30:03 +02:00
Friedemann Kleint 54f9a04fd8 Compile fix Linux. 2011-05-26 09:19:18 +02:00
Olli Werwolff ed529bbf49 Compile fix for QtGui when configure with -qpa on Windows
Reviewed-by: Friedemann Kleint
2011-05-26 08:50:23 +02:00
Olli Werwolff 07818c429c Declaration of QEventDispatcherWin32Private in private header file
As the class will be used as a base class for QEventDispatcherQPA
its declaration has to be accessible from there.

Reviewed-by: Friedemann Kleint
2011-05-26 08:49:18 +02:00
Jiang Jiang 635af8d700 Fix QGLWidget::renderPixmap for raster engine on Mac
The QPixmap buffer is backed by QRasterPixmapData instead of
QMacPixmapData for the raster engine, thus we have to update
qt_mac_pixmap_get_base() and qt_mac_pixmap_get_bytes_per_line(),
so that QGLWidget can locate the offscreen buffer from a QPixmap.

Reviewed-by: Fabien Freling
(cherry picked from commit c5846314dfd80e7f7f32ba737f1884dcccbbd80d)

Change-Id: I2414222f8a59e02c778177d52ad9a6e0ff68668d
Reviewed-on: http://codereview.qt.nokia.com/123
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-05-25 17:57:35 +02:00
Jiang Jiang ffc1950591 Workaround a bug in Core Text to select Light fonts
Currently in Core Text there is not proper way to select fonts with
Light weight, for example:
QFont font("Helvetica"); font.setWeight(QFont::Light);
will give you Helvetica-Light, as with:
QFont font("Helvetica"); font.setWeight(QFont::Normal);
because of a bug in Core Text, applying 0 symbolic traits with
CTFontCreateCopyWithSymbolicTraits will always return the Light
variant of that font family. Thus, we should only do this unless
symbolicTraits is not 0 or font.weight is not Normal (Light is not
a symbolic trait, but CT doesn't support selecting Light weight
numerically).

Reviewed-by: Eskil
(cherry picked from commit 4d5b8f66d82e9087d9d58a4e76e6b46ce7bb53cc)

Change-Id: I37a970aba5019a13b9f3bc43b7fb594b74a1aa37
Reviewed-on: http://codereview.qt.nokia.com/124
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2011-05-25 17:57:34 +02:00
Lasse Holmstedt 1909e03882 Add authentication token support for wayland windows
For compositors that support it, the wayland clients can associate themselves
with an auth token, specified by WL_AUTHENTICATION_TOKEN env var, or by
directly specifying it in the wayland client plugin.

Change-Id: I74a50a27c7c61c2b2cf1e09868618f36edc94cb1
Reviewed-by: Samuel Rødal
Reviewed-on: http://codereview.qt.nokia.com/116
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-05-25 17:05:49 +02:00
Jiang Jiang 6fe12b0e80 Fix QFontEngineX11FT compilation
xglyph_format is only available when XRender is present.

Reviewed-by: Fabien Freling
(cherry picked from commit a6642e4659b3d45ffa94f9a3c6413124d49f2b91)

Change-Id: Ibd767c5055c8fb4a7d28ace141f6713f4367d1ba
Reviewed-on: http://codereview.qt.nokia.com/113
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-05-25 16:08:03 +02:00
Sergio Ahumada ef91383324 Doc: Fixing typo
Change-Id: Icd73646a9562af5fd6ae56e36ca268719d32471c
Reviewed-on: http://codereview.qt.nokia.com/112
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2011-05-25 15:11:35 +02:00
Qt Continuous Integration System 1a74e8246a Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Compile.
2011-05-25 17:12:22 +10:00
Morten Sorvig 1be4b50bac Compile.
Change 0748751c brought in an extra copy of this
function.
2011-05-25 09:08:09 +02:00
Qt Continuous Integration System 6bd691dc54 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging: (21 commits)
  Fixed line endings.
  Update licenseheader text in source files for qtbase Qt module
  New configure.exe binary
  Add -qpa option on Windows
  Use qglobal.h's VERSION number instead of hardcoded current version
  More examples adjusted to Symbian and Maemo5. (cherry picked from commit a97b9620a584c9b1a2e006873183526b3d7e001e)
  Doc: Added some details to the accessibility events API documentation.
  Doc: Fixed qdoc warnings.
  Doc: Fixed qdoc warnings.
  Doc: Made an additional change for clarity.
  Doc: Noted that the example will not work as expected with a mouse.
  Doc: Fixed qdoc warnings.
  Doc: Applying a pending change from previous merges.
  Doc: Fixed qdoc warning.
  Doc: Fixed qdoc warnings.
  Doc: Applied pending fixes to API documentation.
  Doc: Various fixes to documentation, some based on changes in master.
  Doc: Added missing project and desktop files.
  Doc: Documented the value returned when no field can be found.
  Squashed commit of changes from the 4.8-temp branch.
  ...
2011-05-25 01:11:52 +10:00
Paul Olav Tvete 43b9a99983 Merge remote branch 'staging/master' into refactor
Conflicts:
	examples/animation/animatedtiles/animatedtiles.pro
	examples/animation/appchooser/appchooser.pro
	examples/animation/easing/easing.pro
	examples/animation/easing/window.h
	examples/animation/moveblocks/moveblocks.pro
	examples/animation/states/states.pro
	examples/animation/stickman/stickman.pro
	examples/dbus/dbus-chat/dbus-chat.pro
	examples/dbus/dbus.pro
	examples/dbus/remotecontrolledcar/car/car.pro
	examples/dbus/remotecontrolledcar/controller/controller.pro
	examples/dbus/remotecontrolledcar/remotecontrolledcar.pro
	examples/desktop/desktop.pro
	examples/desktop/screenshot/screenshot.pro
	examples/dialogs/classwizard/classwizard.pro
	examples/dialogs/configdialog/configdialog.pro
	examples/dialogs/dialogs.pro
	examples/dialogs/extension/extension.pro
	examples/dialogs/findfiles/findfiles.pro
	examples/dialogs/licensewizard/licensewizard.pro
	examples/dialogs/sipdialog/sipdialog.pro
	examples/dialogs/standarddialogs/standarddialogs.pro
	examples/dialogs/tabdialog/tabdialog.pro
	examples/dialogs/trivialwizard/trivialwizard.pro
	examples/draganddrop/draggableicons/draggableicons.pro
	examples/draganddrop/draggabletext/draggabletext.pro
	examples/draganddrop/dropsite/dropsite.pro
	examples/draganddrop/fridgemagnets/fridgemagnets.pro
	examples/draganddrop/puzzle/puzzle.pro
	examples/effects/blurpicker/blurpicker.pro
	examples/effects/fademessage/fademessage.pro
	examples/effects/lighting/lighting.pro
	examples/examples.pro
	examples/gestures/imagegestures/imagegestures.pro
	examples/graphicsview/anchorlayout/anchorlayout.pro
	examples/graphicsview/basicgraphicslayouts/basicgraphicslayouts.pro
	examples/graphicsview/collidingmice/collidingmice.pro
	examples/graphicsview/diagramscene/diagramscene.pro
	examples/graphicsview/dragdroprobot/dragdroprobot.pro
	examples/graphicsview/elasticnodes/elasticnodes.pro
	examples/graphicsview/flowlayout/flowlayout.pro
	examples/graphicsview/graphicsview.pro
	examples/graphicsview/simpleanchorlayout/simpleanchorlayout.pro
	examples/graphicsview/weatheranchorlayout/weatheranchorlayout.pro
	examples/ipc/ipc.pro
	examples/ipc/sharedmemory/sharedmemory.pro
	examples/itemviews/addressbook/addressbook.pro
	examples/itemviews/basicsortfiltermodel/basicsortfiltermodel.pro
	examples/itemviews/chart/chart.pro
	examples/itemviews/coloreditorfactory/coloreditorfactory.pro
	examples/itemviews/combowidgetmapper/combowidgetmapper.pro
	examples/itemviews/customsortfiltermodel/customsortfiltermodel.pro
	examples/itemviews/dirview/dirview.pro
	examples/itemviews/editabletreemodel/editabletreemodel.pro
	examples/itemviews/fetchmore/fetchmore.pro
	examples/itemviews/frozencolumn/frozencolumn.pro
	examples/itemviews/itemviews.pro
	examples/itemviews/pixelator/pixelator.pro
	examples/itemviews/puzzle/puzzle.pro
	examples/itemviews/simpletreemodel/simpletreemodel.pro
	examples/itemviews/simplewidgetmapper/simplewidgetmapper.pro
	examples/itemviews/spinboxdelegate/spinboxdelegate.pro
	examples/itemviews/stardelegate/stardelegate.pro
	examples/ja_JP/linguist/hellotr/hellotr.pro
	examples/layouts/basiclayouts/basiclayouts.pro
	examples/layouts/borderlayout/borderlayout.pro
	examples/layouts/dynamiclayouts/dynamiclayouts.pro
	examples/layouts/flowlayout/flowlayout.pro
	examples/layouts/layouts.pro
	examples/linguist/arrowpad/arrowpad.pro
	examples/linguist/hellotr/hellotr.pro
	examples/linguist/linguist.pro
	examples/linguist/trollprint/trollprint.pro
	examples/mainwindows/application/application.pro
	examples/mainwindows/dockwidgets/dockwidgets.pro
	examples/mainwindows/mainwindows.pro
	examples/mainwindows/mdi/mdi.pro
	examples/mainwindows/menus/menus.pro
	examples/mainwindows/recentfiles/recentfiles.pro
	examples/mainwindows/sdi/sdi.pro
	examples/network/network.pro
	examples/opengl/opengl.pro
	examples/openvg/openvg.pro
	examples/painting/basicdrawing/basicdrawing.pro
	examples/painting/concentriccircles/concentriccircles.pro
	examples/painting/fontsampler/fontsampler.pro
	examples/painting/imagecomposition/imagecomposition.pro
	examples/painting/painterpaths/painterpaths.pro
	examples/painting/painting.pro
	examples/painting/transformations/transformations.pro
	examples/qtconcurrent/imagescaling/imagescaling.pro
	examples/qtconcurrent/map/map.pro
	examples/qtconcurrent/progressdialog/progressdialog.pro
	examples/qtconcurrent/qtconcurrent.pro
	examples/qtconcurrent/runfunction/runfunction.pro
	examples/qtconcurrent/wordcount/wordcount.pro
	examples/qtestlib/qtestlib.pro
	examples/qtestlib/tutorial1/tutorial1.pro
	examples/qtestlib/tutorial2/tutorial2.pro
	examples/qtestlib/tutorial3/tutorial3.pro
	examples/qtestlib/tutorial4/tutorial4.pro
	examples/qtestlib/tutorial5/tutorial5.pro
	examples/qws/dbscreen/dbscreen.pro
	examples/qws/framebuffer/framebuffer.pro
	examples/qws/mousecalibration/mousecalibration.pro
	examples/qws/simpledecoration/simpledecoration.pro
	examples/qws/svgalib/svgalib.pro
	examples/richtext/calendar/calendar.pro
	examples/richtext/orderform/orderform.pro
	examples/richtext/richtext.pro
	examples/richtext/syntaxhighlighter/syntaxhighlighter.pro
	examples/sql/sql.pro
	examples/statemachine/eventtransitions/eventtransitions.pro
	examples/statemachine/rogue/rogue.pro
	examples/statemachine/trafficlight/trafficlight.pro
	examples/statemachine/twowaybutton/twowaybutton.pro
	examples/threads/mandelbrot/mandelbrot.pro
	examples/threads/queuedcustomtype/queuedcustomtype.pro
	examples/threads/threads.pro
	examples/tools/codecs/codecs.pro
	examples/tools/completer/completer.pro
	examples/tools/contiguouscache/contiguouscache.pro
	examples/tools/customcompleter/customcompleter.pro
	examples/tools/customtype/customtype.pro
	examples/tools/customtypesending/customtypesending.pro
	examples/tools/echoplugin/echoplugin.pro
	examples/tools/echoplugin/echowindow/echowindow.pro
	examples/tools/echoplugin/plugin/plugin.pro
	examples/tools/i18n/i18n.pro
	examples/tools/inputpanel/inputpanel.pro
	examples/tools/plugandpaint/plugandpaint.pro
	examples/tools/plugandpaintplugins/basictools/basictools.pro
	examples/tools/plugandpaintplugins/extrafilters/extrafilters.pro
	examples/tools/plugandpaintplugins/plugandpaintplugins.pro
	examples/tools/regexp/regexp.pro
	examples/tools/settingseditor/settingseditor.pro
	examples/tools/styleplugin/plugin/plugin.pro
	examples/tools/styleplugin/styleplugin.pro
	examples/tools/styleplugin/stylewindow/stylewindow.pro
	examples/tools/tools.pro
	examples/tools/treemodelcompleter/treemodelcompleter.pro
	examples/tools/undoframework/undoframework.pro
	examples/touch/dials/dials.pro
	examples/touch/fingerpaint/fingerpaint.pro
	examples/touch/knobs/knobs.pro
	examples/touch/pinchzoom/pinchzoom.pro
	examples/tutorials/addressbook-fr/addressbook-fr.pro
	examples/tutorials/addressbook-fr/part1/part1.pro
	examples/tutorials/addressbook-fr/part2/part2.pro
	examples/tutorials/addressbook-fr/part3/part3.pro
	examples/tutorials/addressbook-fr/part4/part4.pro
	examples/tutorials/addressbook-fr/part5/part5.pro
	examples/tutorials/addressbook-fr/part6/part6.pro
	examples/tutorials/addressbook-fr/part7/part7.pro
	examples/tutorials/addressbook/addressbook.pro
	examples/tutorials/addressbook/part1/part1.pro
	examples/tutorials/addressbook/part2/part2.pro
	examples/tutorials/addressbook/part3/part3.pro
	examples/tutorials/addressbook/part4/part4.pro
	examples/tutorials/addressbook/part5/part5.pro
	examples/tutorials/addressbook/part6/part6.pro
	examples/tutorials/addressbook/part7/part7.pro
	examples/tutorials/modelview/1_readonly/1_readonly.pro
	examples/tutorials/modelview/2_formatting/2_formatting.pro
	examples/tutorials/modelview/3_changingmodel/3_changingmodel.pro
	examples/tutorials/modelview/4_headers/4_headers.pro
	examples/tutorials/modelview/5_edit/5_edit.pro
	examples/tutorials/modelview/6_treeview/6_treeview.pro
	examples/tutorials/modelview/7_selections/7_selections.pro
	examples/tutorials/modelview/modelview.pro
	examples/tutorials/widgets/childwidget/childwidget.pro
	examples/tutorials/widgets/nestedlayouts/nestedlayouts.pro
	examples/tutorials/widgets/toplevel/toplevel.pro
	examples/tutorials/widgets/windowlayout/windowlayout.pro
	examples/uitools/multipleinheritance/multipleinheritance.pro
	examples/uitools/textfinder/textfinder.pro
	examples/uitools/uitools.pro
	examples/widgets/analogclock/analogclock.pro
	examples/widgets/calculator/calculator.pro
	examples/widgets/calendarwidget/calendarwidget.pro
	examples/widgets/charactermap/charactermap.pro
	examples/widgets/codeeditor/codeeditor.pro
	examples/widgets/digitalclock/digitalclock.pro
	examples/widgets/groupbox/groupbox.pro
	examples/widgets/icons/icons.pro
	examples/widgets/imageviewer/imageviewer.pro
	examples/widgets/lineedits/lineedits.pro
	examples/widgets/movie/movie.pro
	examples/widgets/scribble/scribble.pro
	examples/widgets/shapedclock/shapedclock.pro
	examples/widgets/sliders/sliders.pro
	examples/widgets/softkeys/softkeys.pro
	examples/widgets/spinboxes/spinboxes.pro
	examples/widgets/styles/styles.pro
	examples/widgets/stylesheet/stylesheet.pro
	examples/widgets/tablet/tablet.pro
	examples/widgets/tetrix/tetrix.pro
	examples/widgets/tooltips/tooltips.pro
	examples/widgets/validators/validators.pro
	examples/widgets/widgets.pro
	examples/widgets/windowflags/windowflags.pro
	examples/xml/xml.pro
	mkspecs/qws/freebsd-generic-g++/qplatformdefs.h
	mkspecs/qws/linux-arm-g++/qplatformdefs.h
	mkspecs/qws/linux-arm-gnueabi-g++/qplatformdefs.h
	mkspecs/qws/linux-armv6-g++/qplatformdefs.h
	mkspecs/qws/linux-avr32-g++/qplatformdefs.h
	mkspecs/qws/linux-cellon-g++/qplatformdefs.h
	mkspecs/qws/linux-dm7000-g++/qplatformdefs.h
	mkspecs/qws/linux-dm800-g++/qplatformdefs.h
	mkspecs/qws/linux-generic-g++-32/qplatformdefs.h
	mkspecs/qws/linux-generic-g++/qplatformdefs.h
	mkspecs/qws/linux-ipaq-g++/qplatformdefs.h
	mkspecs/qws/linux-lsb-g++/qplatformdefs.h
	mkspecs/qws/linux-mips-g++/qplatformdefs.h
	mkspecs/qws/linux-nacl-g++/qplatformdefs.h
	mkspecs/qws/linux-powerpc-g++/qplatformdefs.h
	mkspecs/qws/linux-sh-g++/qplatformdefs.h
	mkspecs/qws/linux-sh4al-g++/qplatformdefs.h
	mkspecs/qws/linux-sharp-g++/qplatformdefs.h
	mkspecs/qws/linux-x86-g++/qplatformdefs.h
	mkspecs/qws/linux-x86_64-g++/qplatformdefs.h
	mkspecs/qws/linux-zylonite-g++/qplatformdefs.h
	mkspecs/qws/macx-generic-g++/qplatformdefs.h
	mkspecs/qws/macx-iphonedevice-g++/qplatformdefs.h
	mkspecs/qws/macx-iphonesimulator-g++/qplatformdefs.h
	mkspecs/qws/macx-nacl-g++/qplatformdefs.h
	mkspecs/qws/solaris-generic-g++/qplatformdefs.h
	src/gui/dialogs/qprintdialog_qws.cpp
	src/gui/egl/qegl_qws.cpp
	src/gui/embedded/qcopchannel_qws.cpp
	src/gui/embedded/qcopchannel_qws.h
	src/gui/embedded/qdecoration_qws.cpp
	src/gui/embedded/qdecoration_qws.h
	src/gui/embedded/qdecorationdefault_qws.cpp
	src/gui/embedded/qdecorationdefault_qws.h
	src/gui/embedded/qdecorationfactory_qws.cpp
	src/gui/embedded/qdecorationfactory_qws.h
	src/gui/embedded/qdecorationplugin_qws.cpp
	src/gui/embedded/qdecorationplugin_qws.h
	src/gui/embedded/qdecorationstyled_qws.cpp
	src/gui/embedded/qdecorationstyled_qws.h
	src/gui/embedded/qdecorationwindows_qws.cpp
	src/gui/embedded/qdecorationwindows_qws.h
	src/gui/embedded/qdirectpainter_qws.cpp
	src/gui/embedded/qdirectpainter_qws.h
	src/gui/embedded/qkbd_defaultmap_qws_p.h
	src/gui/embedded/qkbd_qws.cpp
	src/gui/embedded/qkbd_qws.h
	src/gui/embedded/qkbd_qws_p.h
	src/gui/embedded/qkbddriverfactory_qws.cpp
	src/gui/embedded/qkbddriverfactory_qws.h
	src/gui/embedded/qkbddriverplugin_qws.cpp
	src/gui/embedded/qkbddriverplugin_qws.h
	src/gui/embedded/qkbdintegrity_qws.cpp
	src/gui/embedded/qkbdintegrity_qws.h
	src/gui/embedded/qkbdlinuxinput_qws.cpp
	src/gui/embedded/qkbdlinuxinput_qws.h
	src/gui/embedded/qkbdqnx_qws.cpp
	src/gui/embedded/qkbdqnx_qws.h
	src/gui/embedded/qkbdtty_qws.cpp
	src/gui/embedded/qkbdtty_qws.h
	src/gui/embedded/qkbdum_qws.cpp
	src/gui/embedded/qkbdum_qws.h
	src/gui/embedded/qkbdvfb_qws.cpp
	src/gui/embedded/qkbdvfb_qws.h
	src/gui/embedded/qlock.cpp
	src/gui/embedded/qlock_p.h
	src/gui/embedded/qmouse_qws.cpp
	src/gui/embedded/qmouse_qws.h
	src/gui/embedded/qmousedriverfactory_qws.cpp
	src/gui/embedded/qmousedriverfactory_qws.h
	src/gui/embedded/qmousedriverplugin_qws.cpp
	src/gui/embedded/qmousedriverplugin_qws.h
	src/gui/embedded/qmouseintegrity_qws.cpp
	src/gui/embedded/qmouseintegrity_qws.h
	src/gui/embedded/qmouselinuxinput_qws.cpp
	src/gui/embedded/qmouselinuxinput_qws.h
	src/gui/embedded/qmouselinuxtp_qws.cpp
	src/gui/embedded/qmouselinuxtp_qws.h
	src/gui/embedded/qmousepc_qws.cpp
	src/gui/embedded/qmousepc_qws.h
	src/gui/embedded/qmouseqnx_qws.cpp
	src/gui/embedded/qmouseqnx_qws.h
	src/gui/embedded/qmousetslib_qws.cpp
	src/gui/embedded/qmousetslib_qws.h
	src/gui/embedded/qmousevfb_qws.cpp
	src/gui/embedded/qmousevfb_qws.h
	src/gui/embedded/qscreen_qws.cpp
	src/gui/embedded/qscreen_qws.h
	src/gui/embedded/qscreendriverfactory_qws.cpp
	src/gui/embedded/qscreendriverfactory_qws.h
	src/gui/embedded/qscreendriverplugin_qws.cpp
	src/gui/embedded/qscreendriverplugin_qws.h
	src/gui/embedded/qscreenintegrityfb_qws.cpp
	src/gui/embedded/qscreenintegrityfb_qws.h
	src/gui/embedded/qscreenlinuxfb_qws.cpp
	src/gui/embedded/qscreenlinuxfb_qws.h
	src/gui/embedded/qscreenmulti_qws.cpp
	src/gui/embedded/qscreenmulti_qws_p.h
	src/gui/embedded/qscreenproxy_qws.cpp
	src/gui/embedded/qscreenproxy_qws.h
	src/gui/embedded/qscreenqnx_qws.cpp
	src/gui/embedded/qscreenqnx_qws.h
	src/gui/embedded/qscreentransformed_qws.cpp
	src/gui/embedded/qscreentransformed_qws.h
	src/gui/embedded/qscreenvfb_qws.cpp
	src/gui/embedded/qscreenvfb_qws.h
	src/gui/embedded/qsoundqss_qws.cpp
	src/gui/embedded/qsoundqss_qws.h
	src/gui/embedded/qtransportauth_qws.cpp
	src/gui/embedded/qtransportauth_qws.h
	src/gui/embedded/qtransportauth_qws_p.h
	src/gui/embedded/qtransportauthdefs_qws.h
	src/gui/embedded/qunixsocket.cpp
	src/gui/embedded/qunixsocket_p.h
	src/gui/embedded/qunixsocketserver.cpp
	src/gui/embedded/qunixsocketserver_p.h
	src/gui/embedded/qvfbhdr.h
	src/gui/embedded/qwindowsystem_p.h
	src/gui/embedded/qwindowsystem_qws.cpp
	src/gui/embedded/qwindowsystem_qws.h
	src/gui/embedded/qwscommand_qws.cpp
	src/gui/embedded/qwscommand_qws_p.h
	src/gui/embedded/qwscursor_qws.cpp
	src/gui/embedded/qwsdisplay_qws.h
	src/gui/embedded/qwsdisplay_qws_p.h
	src/gui/embedded/qwsembedwidget.cpp
	src/gui/embedded/qwsevent_qws.cpp
	src/gui/embedded/qwsevent_qws.h
	src/gui/embedded/qwslock.cpp
	src/gui/embedded/qwslock_p.h
	src/gui/embedded/qwsmanager_p.h
	src/gui/embedded/qwsmanager_qws.cpp
	src/gui/embedded/qwsmanager_qws.h
	src/gui/embedded/qwsproperty_qws.cpp
	src/gui/embedded/qwsproperty_qws.h
	src/gui/embedded/qwsprotocolitem_qws.h
	src/gui/embedded/qwssharedmemory.cpp
	src/gui/embedded/qwssharedmemory_p.h
	src/gui/embedded/qwssignalhandler.cpp
	src/gui/embedded/qwssignalhandler_p.h
	src/gui/embedded/qwssocket_qws.cpp
	src/gui/embedded/qwssocket_qws.h
	src/gui/embedded/qwsutils_qws.h
	src/gui/image/qpixmap_qws.cpp
	src/gui/inputmethod/qwsinputcontext_p.h
	src/gui/inputmethod/qwsinputcontext_qws.cpp
	src/gui/kernel/qapplication_qpa.cpp
	src/gui/kernel/qapplication_qws.cpp
	src/gui/kernel/qclipboard_qws.cpp
	src/gui/kernel/qcursor_qws.cpp
	src/gui/kernel/qdesktopwidget_qws.cpp
	src/gui/kernel/qeventdispatcher_glib_qws.cpp
	src/gui/kernel/qeventdispatcher_glib_qws_p.h
	src/gui/kernel/qeventdispatcher_qws.cpp
	src/gui/kernel/qeventdispatcher_qws_p.h
	src/gui/kernel/qplatformintegration_qpa.cpp
	src/gui/kernel/qplatformwindowformat_qpa.cpp
	src/gui/kernel/qplatformwindowformat_qpa.h
	src/gui/kernel/qsessionmanager_qws.cpp
	src/gui/kernel/qsound_qws.cpp
	src/gui/kernel/qwidget_qws.cpp
	src/gui/painting/qcolormap_qws.cpp
	src/gui/painting/qgraphicssystem.cpp
	src/gui/painting/qgraphicssystem_mac.cpp
	src/gui/painting/qgraphicssystem_mac_p.h
	src/gui/painting/qgraphicssystem_p.h
	src/gui/painting/qgraphicssystem_qws.cpp
	src/gui/painting/qgraphicssystem_qws_p.h
	src/gui/painting/qgraphicssystem_raster.cpp
	src/gui/painting/qgraphicssystem_raster_p.h
	src/gui/painting/qgraphicssystem_runtime.cpp
	src/gui/painting/qgraphicssystem_runtime_p.h
	src/gui/painting/qgraphicssystemfactory.cpp
	src/gui/painting/qgraphicssystemfactory_p.h
	src/gui/painting/qgraphicssystemplugin.cpp
	src/gui/painting/qgraphicssystemplugin_p.h
	src/gui/painting/qpaintdevice_x11.cpp
	src/gui/painting/qprintengine_ps.cpp
	src/gui/painting/qprintengine_ps_p.h
	src/gui/painting/qprintengine_qws.cpp
	src/gui/painting/qprintengine_qws_p.h
	src/gui/painting/qregion_qws.cpp
	src/gui/painting/qunifiedtoolbarsurface_mac.cpp
	src/gui/painting/qunifiedtoolbarsurface_mac_p.h
	src/gui/painting/qwindowsurface_mac.cpp
	src/gui/painting/qwindowsurface_qws.cpp
	src/gui/painting/qwindowsurface_qws_p.h
	src/gui/painting/qwindowsurface_raster.cpp
	src/gui/painting/qwindowsurface_raster_p.h
	src/gui/painting/qwindowsurface_s60.cpp
	src/gui/painting/qwindowsurface_s60_p.h
	src/gui/painting/qwindowsurface_x11.cpp
	src/gui/painting/qwindowsurface_x11_p.h
	src/gui/painting/qwmatrix.h
	src/gui/text/qabstractfontengine_qws.cpp
	src/gui/text/qabstractfontengine_qws.h
	src/gui/text/qfont_qws.cpp
	src/gui/text/qfontdatabase_qws.cpp
	src/gui/text/qfontengine_qws.cpp
	src/opengl/qgl_qpa.cpp
	src/opengl/qgl_qws.cpp
	src/opengl/qglscreen_qws.cpp
	src/opengl/qglscreen_qws.h
	src/opengl/qglwindowsurface_qws.cpp
	src/opengl/qgraphicssystem_gl.cpp
	src/opengl/qgraphicssystem_gl_p.h
	src/openvg/qpaintengine_vg.cpp
	src/openvg/qpaintengine_vg_p.h
	src/openvg/qpixmapdata_vg.cpp
	src/openvg/qpixmapdata_vg_p.h
	src/openvg/qpixmapfilter_vg.cpp
	src/openvg/qpixmapfilter_vg_p.h
	src/openvg/qvg.h
	src/openvg/qvg_p.h
	src/openvg/qvg_symbian.cpp
	src/openvg/qvgcompositionhelper_p.h
	src/openvg/qvgfontglyphcache_p.h
	src/openvg/qvgimagepool.cpp
	src/openvg/qvgimagepool_p.h
	src/openvg/qwindowsurface_vg.cpp
	src/openvg/qwindowsurface_vg_p.h
	src/openvg/qwindowsurface_vgegl.cpp
	src/openvg/qwindowsurface_vgegl_p.h
	src/plugins/decorations/default/main.cpp
	src/plugins/decorations/styled/main.cpp
	src/plugins/decorations/windows/main.cpp
	src/plugins/gfxdrivers/ahi/qscreenahi_qws.cpp
	src/plugins/gfxdrivers/ahi/qscreenahi_qws.h
	src/plugins/gfxdrivers/ahi/qscreenahiplugin.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbkeyboard.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbkeyboard.h
	src/plugins/gfxdrivers/directfb/qdirectfbmouse.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbmouse.h
	src/plugins/gfxdrivers/directfb/qdirectfbpaintdevice.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbpaintdevice.h
	src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.h
	src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbpixmap.h
	src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbscreen.h
	src/plugins/gfxdrivers/directfb/qdirectfbscreenplugin.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
	src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.h
	src/plugins/gfxdrivers/eglnullws/eglnullwsscreen.cpp
	src/plugins/gfxdrivers/eglnullws/eglnullwsscreen.h
	src/plugins/gfxdrivers/eglnullws/eglnullwsscreenplugin.cpp
	src/plugins/gfxdrivers/eglnullws/eglnullwsscreenplugin.h
	src/plugins/gfxdrivers/eglnullws/eglnullwswindowsurface.cpp
	src/plugins/gfxdrivers/eglnullws/eglnullwswindowsurface.h
	src/plugins/gfxdrivers/linuxfb/main.cpp
	src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwsdrawable.c
	src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwsdrawable.h
	src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwsdrawable_p.h
	src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c
	src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.cpp
	src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreen.h
	src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglscreenplugin.cpp
	src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglwindowsurface.cpp
	src/plugins/gfxdrivers/powervr/pvreglscreen/pvreglwindowsurface.h
	src/plugins/gfxdrivers/qvfb/main.cpp
	src/plugins/gfxdrivers/transformed/main.cpp
	src/plugins/gfxdrivers/vnc/main.cpp
	src/plugins/gfxdrivers/vnc/qscreenvnc_p.h
	src/plugins/gfxdrivers/vnc/qscreenvnc_qws.cpp
	src/plugins/gfxdrivers/vnc/qscreenvnc_qws.h
	src/plugins/graphicssystems/meego/dithering.cpp
	src/plugins/graphicssystems/meego/qmeegoextensions.cpp
	src/plugins/graphicssystems/meego/qmeegoextensions.h
	src/plugins/graphicssystems/meego/qmeegographicssystem.cpp
	src/plugins/graphicssystems/meego/qmeegographicssystem.h
	src/plugins/graphicssystems/meego/qmeegographicssystemplugin.cpp
	src/plugins/graphicssystems/meego/qmeegographicssystemplugin.h
	src/plugins/graphicssystems/meego/qmeegolivepixmapdata.cpp
	src/plugins/graphicssystems/meego/qmeegolivepixmapdata.h
	src/plugins/graphicssystems/meego/qmeegopixmapdata.cpp
	src/plugins/graphicssystems/meego/qmeegopixmapdata.h
	src/plugins/graphicssystems/meego/qmeegorasterpixmapdata.cpp
	src/plugins/graphicssystems/opengl/main.cpp
	src/plugins/graphicssystems/openvg/qgraphicssystem_vg.cpp
	src/plugins/graphicssystems/openvg/qgraphicssystem_vg_p.h
	src/plugins/graphicssystems/shivavg/main.cpp
	src/plugins/graphicssystems/shivavg/shivavggraphicssystem.cpp
	src/plugins/graphicssystems/shivavg/shivavggraphicssystem.h
	src/plugins/graphicssystems/shivavg/shivavgwindowsurface.cpp
	src/plugins/graphicssystems/shivavg/shivavgwindowsurface.h
	src/plugins/graphicssystems/trace/main.cpp
	src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp
	src/plugins/graphicssystems/trace/qgraphicssystem_trace_p.h
	src/plugins/kbddrivers/linuxinput/main.cpp
	src/plugins/mousedrivers/linuxtp/main.cpp
	src/plugins/mousedrivers/pc/main.cpp
	src/plugins/mousedrivers/tslib/main.cpp
	src/widgets/kernel/qwidget_qpa.cpp
2011-05-24 15:22:06 +02:00
Qt Continuous Integration System e60f05201f Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  QUrl auto test: include core-private headers
  QUrl TLD: fix documentation file for "Add QUrl::topLevelDomain() ..."
  Add QUrl::topLevelDomain() and move TLD table from QtNetwork to QtCore
2011-05-24 21:43:46 +10:00
Peter Hartmann e63026dcbd QUrl TLD: fix documentation file for "Add QUrl::topLevelDomain() ..."
see previous commit

Task-number: QTBUG-13601
(cherry picked from commit 9face4b88de2db6f552149d2f96257620e971a59)
2011-05-24 12:12:13 +02:00
Robert Hogan 093a92fb03 Add QUrl::topLevelDomain() and move TLD table from QtNetwork to QtCore
Move Qt's copy of the Mozilla public suffix list from QtNetwork
to QtCore and use it to expose a new API function QUrl::topLevelDomain().
This function returns the section of the url that is a registrar-controlled
top level domain.

QtCore now exports a couple of functions to the other Qt modules: qTopLevelDomain,
a helper function for QUrl::topLevelDomain(); and qIsEffectiveTLD(), a helper
function for QNetworkCookeieJar.

The motivation for this new API is to allow QtWebKit implement a Third-Party
Cookie blocking policy. For this QtWebKit needs to know the element of the url
that is the registry-controlled TLD. Without this knowledge it would end up
blocking third-party cookies per host rather than per registry-controlled domain.

See also https://bugs.webkit.org/show_bug.cgi?id=45455

Merge-request: 1205
Task-number: QTBUG-13601
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 154402f56dcf8303a6ce601a52215226af8d31ba)
2011-05-24 12:12:04 +02:00
Qt Continuous Integration System fe0ae9fd2a Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  fix Symbian ordinals for merge request re. utf8 characters in SSL certs
2011-05-24 20:01:46 +10:00
Jyri Tahtela f9f395c28b Update licenseheader text in source files for qtbase Qt module
Updated version of LGPL and FDL licenseheaders.
Apply release phase licenseheaders for all source files.

Reviewed-by: Trust Me
2011-05-24 12:34:08 +03:00
Friedemann Kleint 82895982ec Fix build from scratch on Windows.
idc needs corelib (should be moved to ActiveQt later).
2011-05-24 11:01:33 +02:00
Peter Hartmann 6c72eb8456 fix Symbian ordinals for merge request re. utf8 characters in SSL certs
Task-number: QTBUG-7912
(cherry picked from commit 83c37059df7f23be482d4ecb2c54603a3665a33d)
2011-05-24 10:33:21 +02:00
Friedemann Kleint 52c987cc30 Build from scratch, use correct version number in Widgets.
Order in src.pro needs to be correct since qtbase.pro forces
ordered.

Acked-by: Samuel Rødal <sroedal@trolltech.com>
2011-05-24 09:27:50 +02:00
Olli Werwolff f86334a015 Make QtCore compile with on Windows when -qpa is used
Core functionality almost never is window system dependent.

Reviewed-by: Friedemann Kleint
2011-05-24 09:20:50 +02:00
Qt Continuous Integration System da88412334 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  add auto test for SSL certificates containing utf8 characters
  fix coding style for merge request re. utf8 characters in SSL certs
  Use OpenSSL X509_NAME_ENTRY API to parse UTF8 subjectName/issuerName
2011-05-24 01:59:03 +10:00
Pierre Rossi fe54165149 fix coding style for merge request re. utf8 characters in SSL certs
fixes minor coding issues for
"Use OpenSSL X509_NAME_ENTRY API to parse UTF8 subjectName/issuerName"

Task-number: QTBUG-7912
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit 2e8d206fd9f656cd88b797c059ef83ed3df32881)
2011-05-23 17:41:57 +02:00
Raul Metsma 92f6bd3a15 Use OpenSSL X509_NAME_ENTRY API to parse UTF8 subjectName/issuerName
... to be able to display non-ASCII names from subject and issuerInfo.

Task-number: QTBUG-7912
Merge-request: 922
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
(cherry picked from commit e5d94256be2525c24a8b61edd771662b7f2b8be3)
2011-05-23 17:41:47 +02:00
Friedemann Kleint 37d76a6798 QTestlib: Compile. 2011-05-23 16:48:29 +02:00
Friedemann Kleint 446384e602 src.pro: Add dependencies of widget module 2011-05-23 16:47:16 +02:00
David Boddie 122d206087 Doc: Added some details to the accessibility events API documentation.
Reviewed-by: Frederik Gladhorn
2011-05-23 14:24:10 +02:00
David Boddie be2b27824a Doc: Fixed qdoc warnings. 2011-05-23 14:24:09 +02:00
David Boddie b5a989dc11 Doc: Fixed qdoc warnings. 2011-05-23 14:24:09 +02:00
David Boddie 9c3a1d290a Doc: Fixed qdoc warnings. 2011-05-23 14:24:09 +02:00
David Boddie 7ff15bc4f5 Doc: Applying a pending change from previous merges. 2011-05-23 14:24:09 +02:00
David Boddie a31fae0835 Doc: Fixed qdoc warning. 2011-05-23 14:24:08 +02:00
David Boddie 234b36698e Doc: Fixed qdoc warnings. 2011-05-23 14:24:08 +02:00
David Boddie 4d7d6d70e5 Doc: Applied pending fixes to API documentation. 2011-05-23 14:24:08 +02:00
David Boddie 9235701d72 Doc: Documented the value returned when no field can be found.
Task-number: QTBUG-19115
2011-05-23 14:24:07 +02:00
David Boddie 0748751c9f Squashed commit of the changes from the mobile-examples repository
(4.7-generated-declarative branch).
2011-05-23 14:24:07 +02:00
Friedemann Kleint dcffd9c25f Compile fix for -qpa/Linux.
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-05-23 13:53:18 +02:00
Samuel Rødal 1894da8186 Added QWindow::setTransientParent().
Make the transient parent relationship explicit instead of having it
encoded through the window flags.
2011-05-23 13:46:18 +02:00
Eskil Abrahamsen Blomfeldt 5feefb0c03 Enablers for TextInput
In order to use the scene graph text node in TextInput, we
need enablers. Most of this is to enable selections,
which in turn means we need to be able to extract a certain
set of glyphs from a QTextLine.
2011-05-23 13:38:22 +02:00
Paul Olav Tvete 6e99936502 Track Wayland changes
The wl_display_get_xxxx_visual() functions have been removed, and
are replaced by a compositor event.

Reviewed-by: Samuel
2011-05-23 12:59:29 +02:00
Samuel Rødal c5d1f23942 Remove superfluous setter / getter for QWindowFormat in QWindow. 2011-05-23 09:52:14 +02:00
Lars Knoll 2fb3c22f37 clean up unused code
Remove some now unused platform dependent
code. This needs to move into the different
lighthouse plugins.
2011-05-22 14:01:55 +02:00
Lars Knoll 610769ca8a implement dragging between top levels
Correctly make use of the topLevelAt()
functionality to determine which
QWindow should get the drag events.
2011-05-22 14:01:33 +02:00
Lars Knoll fd7bfc6184 Add QGuiApp::topLevelAt and fix visibility flag
Add and remove windows to the list of top level windows.
Correctly set the visibility flag for windows and implement
a QGuiApplication::topLevelAt() method that uses the
QPlatformScreen.
2011-05-22 13:52:17 +02:00
Lars Knoll 121cc4d955 re-add in-process DnD implementation
Get in-process DnD working again. QDragManager
only cares about QWindow's now, and QWidgetWindow
maps this to DnD events inside the widget hierachy.
2011-05-22 13:51:00 +02:00
Samuel Rødal d671acd5b2 Merge remote branch 'staging/master' into refactor
Conflicts:
	src/opengl/qgl_qpa.cpp
	src/plugins/platforms/glxconvenience/qglxconvenience.cpp
	src/plugins/platforms/platforms.pro
	src/plugins/platforms/wayland/qwaylandwindow.cpp
	src/plugins/platforms/xcb/qxcbwindow.cpp
	src/plugins/platforms/xcb/qxcbwindow.h
	src/plugins/platforms/xcb/qxcbwindowsurface.cpp
	src/widgets/kernel/qwidget_qpa.cpp
	tests/auto/qvariant/tst_qvariant.cpp
2011-05-20 19:46:19 +02:00
Samuel Rødal 42f5786104 Get the QWidget auto-test compiling and running. 2011-05-20 13:56:11 +02:00
Simon Hausmann 4f2138ecfb Fix inconsistency between Qt and ICU in Shift-JIS codec with regards to ASCII range
Qt's Shift-JIS codec maps the characters 0x5c and 0x7e to unicode yen (0x5a)
and unicode overline (0x203e). ICU and (as it turns out) Symbian's native
Shift-JIS codec preserve 0x5c and 0x7e when converting to Unicode.

Qt's behaviour creates a problem when loading japanese web sites that are
encoded in Shift-JIS. When they reference external JavaScript files, those tend
to inherit the current page encoding (unless the character set is explicitly
specified). Consequently JavaScript tends to contain regular expressions (as a
built-in feature of the language), which in turn uses backslashes for escape
sequences. Therefore it is crucial that the encodings used to decode the script
preserve the ASCII range, i.e. do not convert 0x5c (ascii backslash) to
something else.

This patch corrects the behaviour of Qt's Shift-JIS codec to leave all
characters < 0x80 unaltered in the process of conversion to and from
Unicode.

Task: QTBUG-19335

Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
(cherry picked from commit 8e321cd869da7ff1cf0168da41aa0246b44867cc)
2011-05-20 13:55:12 +02:00
Samuel Rødal af4e5576f4 Added QGuiApplication::activeWindow(). 2011-05-20 13:45:55 +02:00
Lars Knoll d8d6bfb81e remove an unused class
QDrgResponseEvent wasn't used anywhere in Qt anymore.
Get rid of it.
2011-05-20 12:21:17 +02:00
Lars Knoll 82bba7e4ef move drag handling back to Gui
Move the DnD related classes back into
QtGui. Parts of the implementation is currently
commented out and needs to be moved to
QWidgetWindow.

SC incompatible change:
APIs taking QWidget * now take QObject *
2011-05-20 12:21:02 +02:00
Qt Continuous Integration System 4bd181fb5a Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  tst_qhostinfo: Fix IPv6 lookup detection on Windows.
  Fix incorrect hardware address on systems without getifaddrs()
  Make QHostAddress.toString() follow RFC-5952 for IPv6 address format.
2011-05-20 19:18:56 +10:00
Morten Sorvig e0b5bfdda9 Build the cocoa plugin on Mac. 2011-05-20 10:59:05 +02:00
Morten Sorvig e285501267 Add QCocoaNativeInterface.
Supports getting the NSOpenGLContext for now.
2011-05-20 10:58:37 +02:00
Craig Scott 0ebe0414d2 Fix incorrect hardware address on systems without getifaddrs()
On unix systems for which QT_NO_GETIFADDRS is defined, the way that the
hardware address field is extracted from the result of a call to
qt_safe_ioctl() is incorrect. The address of the ifreq.ifr_addr struct
is taken rather than the appropriate member within that struct, sa_data,
resulting in a memory offset and subsequently the hardware address has
garbage in the first two of six fields. This commit modifies the code
to pass the sa_data member instead of the address of the struct as a
whole.

Task-number: QTBUG-19165
Merge-request: 2614
Reviewed-by: Martin Petersson
(cherry picked from commit 004ad12669ef696eeba70fd57d1eb0c67c806d1d)
2011-05-20 10:46:47 +02:00
Martin Petersson 5a19d52ae7 Make QHostAddress.toString() follow RFC-5952 for IPv6 address format.
Task-number: QTBUG-18426
Reviewed-by: Peter Hartmann
(cherry picked from commit ebc134db484eee31491836b619aad1ee86e3070e)
2011-05-20 10:44:12 +02:00
Qt Continuous Integration System 3a88b3c9e6 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Full translucent background support in xcb and xlib backend.
  Lighthouse xcb and xlib: Add support for transparency of GLX windows.
  Lighthouse minimal: Add support for transparency
  Compile fixes for Xlib plugin.
2011-05-20 03:08:34 +10:00
Samuel Rødal 3d34c9b78e Full translucent background support in xcb and xlib backend.
Make sure to pick an alpha visual also for non-GL surface types, and to
ask for alpha in the window format if the WA_TranslucentBackground
attribute is set.

Reviewed-by: Janusz Lewandowski
(cherry picked from commit 6241e39cff9311c943430ff2f31236b13618f2ac)
2011-05-19 19:03:23 +02:00
Janusz Lewandowski dd43611b97 Lighthouse xcb and xlib: Add support for transparency of GLX windows.
Merge-request: 1231
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
(cherry picked from commit a3b627e1c5ce03a2500ab35c64729b1995639dcc)
2011-05-19 19:03:22 +02:00
Janusz Lewandowski 463e31fd58 Lighthouse minimal: Add support for transparency
Merge-request: 1231
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
(cherry picked from commit c15b41056e60abdbb4d835e27a360f01be618a4f)
2011-05-19 19:03:22 +02:00
Samuel Rødal 852e9766ed Compile fixes for Xlib plugin.
(cherry picked from commit 4af11f2c6666c55657569f946c33816f33711225)
2011-05-19 19:03:17 +02:00
Qt Continuous Integration System f60b3e90e6 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Don't crash if windowmanager is not initialized
  Compile fix for 64bit Linux.
2011-05-20 00:58:20 +10:00
Lasse Holmstedt 611837baec Don't crash if windowmanager is not initialized
This can happen if there is e.g. no wayland server.

Reviewed-by: sroedal
(cherry picked from commit aea5e35f57d061b133d2fa613d10f5e0118f5706)
2011-05-19 16:54:12 +02:00
Qt Continuous Integration System a813d7c24a Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Wayland: send surface id + process id pairs to compositor
2011-05-19 22:53:06 +10:00
Lasse Holmstedt a98ebc599a Wayland: send surface id + process id pairs to compositor
This enables doing window/process management since we can now
actually map the process we've launched to a window.

Reviewed-by: Samuel Rødal
(cherry picked from commit 457c33d9fd308542c9290fd60bf86960f9251255)
2011-05-19 14:44:00 +02:00
Qt Continuous Integration System c1031d334f Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Remove warning from QColor::setNamedColor().
2011-05-19 21:55:04 +10:00
Qt Continuous Integration System fe0a4972b8 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fixed compile of qdrawhelper_neon.cpp.
2011-05-19 21:21:09 +10:00
Samuel Rødal 0377b7f96d Remove warning from QColor::setNamedColor().
This warning is pointless as the user can anyway check if the color is
valid after making the call by calling isValid(). Using isValidColor()
could be used but it has a big performance overhead as validation then
needs to be done twice.

Task-number: QTBUG-19098
Reviewed-by: Erik Verbruggen
(cherry picked from commit a423ff5474b89028eeca95b254f5184311c8223b)
2011-05-19 13:17:53 +02:00
Samuel Rødal 4ec4d78711 Fixed compile of qdrawhelper_neon.cpp.
We need to use the quad-word intrinsic and reinterpret the cast to
a signed int vector.

Reviewed-by: Kim Motoyoshi Kalland <kim.kalland@nokia.com>
(cherry picked from commit d2d7aef223a3bad368c6b7c7f7f4617f4acf323c)
2011-05-19 13:16:50 +02:00
Qt Continuous Integration System 77cd5455b2 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Compile IPC tests.
  Always call XInitThreads.
  Remove redundant #ifdef's from benchmarks
  Improve coding style of qdatastream test
  Don't use Qt3Support in arthur test suite.
  Remove Qt3Support code from QMenuBar autotest
  Remove Qt3Support code from QSplitter autotest
  Remove Qt3Support code from QSharedPointer autotest
  Remove Qt3Support code from QComboBox autotest
  Remove Qt3Support test code from accessibility autotest
  tests: allow unstable tests to be marked with CONFIG+=insignificant_test
2011-05-19 20:04:29 +10:00
Samuel Rødal ea7277690d Better setWindowFlags() support in XCB window.
We need to re-create the native window in setParent, as used to be done
in QWidgetPrivate::setParent_sys in qwidget_x11.cpp.
2011-05-19 10:53:30 +02:00
Morten Sorvig e0e696dd05 Remove QMAKE_MACOS_DEPLOYMENT_TARGET.
Not needed any more, 10.5 and up supports setting
the deployment target/minimum version on the
compiler command line.
2011-05-19 09:18:46 +02:00
Gunnar Sletta 105513a888 Always call XInitThreads.
Any Qt application that embeds a QSGView needs to call this
because of the threaded renderer. Today applications that
use threaded GL silently fail. In a few weeks time, the
refactor branch will be merged, which will obsolete this
change, so it is a temporary measure to get tests and
examples running.
2011-05-19 08:34:52 +02:00
Qt Continuous Integration System 4299467335 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  tests: fixed compilation of tst_qtextstream
  QUiLoader, QAbstractFormBuilder: Introduce errorString().
  Enable configuration for Xcb
  Fall back to using paths for large fonts in drawStaticText()
  Add ability to work around non-standard GLES implementations
  Fix broken drawing with large fonts using QStaticText and FreeType
  Remove Q_ASSERT's from qdbustype autotest
  Remove autotest code for Qt3Support library.
2011-05-19 10:07:06 +10:00
Friedemann Kleint 449b8a9317 QUiLoader, QAbstractFormBuilder: Introduce errorString().
Introduce errorString() to be able to obtain load errors
in Qt Designer. Remove automatic Qt 3 form conversion
from Qt Designer (since uic3 no longer exists) and move
all form load error checking logic including language
check into QAbstractFormBuilder.
Make language accessible in FormBuilderExtra in case
Jambi is revived.

Reviewed-by: hjk
2011-05-18 16:55:47 +02:00
Eckhart Koppen b9ee8487e9 Enable configuration for Xcb
The xcb platform plugin can now be enabled using -xcb at configuration
time. A configuration time compilation check will be added at a later
point.

Reviewed-by: Samuel Rødal
2011-05-18 17:35:04 +03:00
Eskil Abrahamsen Blomfeldt f4c1c2f939 Fall back to using paths for large fonts in drawStaticText()
QStaticText had an implicit risk which meant you had to make sure the
text size did not grow unreasonably large. This was intended to avoid
hiding the performance impact of using QStaticText for such a purpose,
but it's too inconvenient. Thus, the same fall back as in drawTextItem()
has been introduced. This will also fix a bug recently introduced when
we started using the FT cache to draw static text in the raster engine,
since this will fail for large fonts.

Task-number: QTBUG-19084, QTBUG-19370
Reviewed-by: Jiang Jiang
(cherry picked from commit 0aa9b30432cec3b7f366983f451fc9a7f8f83243)
2011-05-18 15:57:38 +02:00
Paul Olav Tvete e8c95790d9 Add ability to work around non-standard GLES implementations
Reviewed-by: Gunnar
2011-05-18 15:31:14 +02:00
Olivier Goffart b57a7e6994 QT_USE_QSTRINGBUILDER to fix source compatibility
In 4.8 we added support for using StringBuilder with QByteArray.
But this is breaking source compatibility for people that used
QT_USE_FAST_OPERATOR_PLUS in Qt 4.7. So we introduce a new macro

Notice that QT_USE_FAST_CONCATENATION was not working without
QT_USE_FAST_OPERATOR_PLUS, so we remove the checking of that macro.

Reviewed-by: joao
(cherry picked from commit 8447f5616be731d78081f326bb9cb3f5aa9087a4)
2011-05-18 15:17:17 +02:00
Eskil Abrahamsen Blomfeldt 5fcd60f256 Fix broken drawing with large fonts using QStaticText and FreeType
In FreeType, there's a fall back to QFontEngine::alphaMapForGlyph()
when the fonts are very large. Since this uses a QPainterPath containing
an unhinted glyph, the use of hinted metrics would sometimes lead to
the glyphs being clipped because they would be positioned slightly
outside the image they were painted into. When outline drawing is on,
it makes sense to return unhinted metrics, since the glyphs we will
actually use are unhinted.

Task-number: QTBUG-19067
Reviewed-by: Jiang Jiang
2011-05-18 14:55:03 +02:00
Samuel Rødal 2a5cc5fc62 Support Qt::WindowStaysOnTopHint and other window flags in XCB backend. 2011-05-18 12:28:09 +02:00
Morten Sorvig 864815ef2e Port Qt 5 to Mac. 2011-05-18 12:09:17 +02:00
Samuel Rødal 516f4e283b Add QWindow::setWindowModality().
Also set corresponding window manager hints in xcb plugin.
2011-05-18 09:32:17 +02:00
Samuel Rødal 10a3b10726 Re-implement transient window support in XCB backend.
If a QWindow has a parent but is top-level the corresponding
QPlatformWindow should not be re-parented but instead be made transient
for the parent window if possible.
2011-05-16 17:28:56 +02:00
Samuel Rødal 25f70314e0 Implement QWindow minimum/maximum/base size hints and size increments. 2011-05-16 16:40:32 +02:00
Lars Knoll 276d60a4d6 Merge remote branch 'origin/master' into refactor
Conflicts:
	src/modules/qt_openvg.pri
	src/widgets/to_be_moved/qlinecontrol_p.h
2011-05-16 10:19:02 +02:00
Eckhart Koppen 73e1f35fa3 Removed duplicate setting of QT dependencies
Reviewed-by: TrustMe
2011-05-13 18:36:12 +03:00
Samuel Rødal 850b602c7a Initial QPlatformWindow window state setting API and xcb implementation. 2011-05-13 15:13:15 +02:00
Eckhart Koppen a9c2c15487 Updated default Qt version to 5.0.0
Changed default version in qbase.pri and qpluginbase.pri in case no
version is given at all.
2011-05-13 15:38:00 +03:00
Eckhart Koppen 36c29abc0d Removed deprecated functions in QList
Removed detach, detach2, detach3 and append which were marked
as required only up to 4.5.x
2011-05-13 13:47:56 +03:00
Eckhart Koppen 23d98f70b9 Updated Qt and QtBase module version number to 5.0.0
Updated version in qglobal.h as well as the module version itself
2011-05-13 13:22:30 +03:00
Eckhart Koppen 7d756ed718 Updated data stream version for Qt 4.9 and 5.0
For now, using the same version as 4.8. This needs to be corrected
when the actual data stream version is known.
2011-05-13 13:15:04 +03:00
Laszlo Agocs 542ba35f2f Fix deadlocks in wayland clipboard that can occur in special scenarios.
setMimeData() emits the changed signal always so to prevent duplicated
signals keyboardFocus() must only emit when the change came from
another wayland client. However direct connection may cause issues
when invoking the slot from a wayland callback, so use a metacall
to make sure we return from the callback. Unnecessary data transfer
and potential deadlock is now also avoided when a client is requesting
the mime data from itself.

Reviewed-by: Jørgen Lind
2011-05-13 09:27:11 +02:00
Jason McDonald dd1a7a6379 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging 2011-05-13 10:42:41 +10:00
Jason McDonald d9119535a2 Make error checking in QSignalSpy consistent
QSignalSpy's constructor failed gracefully for some problems with the
parameters, but not for null parameters, for which there was only a
Q_ASSERT.  This commit makes the handling of null parameters consistent
with the handling of other errors -- output a meaningful error message
with qWarning() and return, so that isValid() will subsequently return
false.

Change-Id: I7f5677a4c10185e30403ce3e12a022de8c13bc1c
Task-number: QTBUG-14283
Reviewed-by: Rohan McGovern
2011-05-13 10:42:06 +10:00
Lars Knoll 1a1471718d fix compilation with namespaces
Reviewed-by: Bjørn Erik Nilsen
(cherry picked from commit 7a1c29f101b95c9cc2cb53f8b80d231b5a994a9a)
2011-05-12 22:52:49 +02:00
Lars Knoll 4214ddc1d9 Fix compilation with namespaces enabled
Reviewed-by: Samuel Rødal
(cherry picked from commit bff68fc7094a50af57f7da23ecf9b25cab00f188)
2011-05-12 16:36:48 +02:00
Frederik Gladhorn 38ed8c2ddd Make QLineControl send accessibility updates.
To make it emit the signals for the right object, it needs its parent to
be the QGraphicsItem/SGItem/QLineEdit.
According to IA2 it should emit TextUpdated and CursorMoved signals.
TextChanged is deprecated.
More fine grained signals would be desireable but this makes changes work at all.

Reviewed-by: Morten Sorvig
2011-05-12 15:59:33 +02:00
Jan-Arve Sæther 1625b25a9f Revert "Fix double painting when adding an item into a linear layout"
(It did not really fix the issue.)

This reverts commit 33f525e636ef8fa64a15d3e66c56adaea0075bda.

Conflicts:

	src/gui/graphicsview/qgraphicslinearlayout.cpp
	tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp
(cherry picked from commit fee052e3e37b3335fe563cb8a1881bf59f9e25d0)
2011-05-12 15:51:02 +02:00
Sergio Ahumada 446a7ba4ff Fix licence headers again for MR 900
See commit b00089261eafbdf5f92ed94d7fb20b402bfcaeb2

Reviewed-by: Gabriel de Dietrich
(cherry picked from commit bc16ebdb7aeff70fe8149297183636ea7fd14ed1)
2011-05-12 15:48:46 +02:00
Jan-Arve Sæther 913ff73200 Avoid flicker when invalidate is propagated in a widget/layout hierarchy
* Do not call invalidate from activateRecursive().
  This resulted in that a layout was invalidated as many times as there
  were items in the layout.

* Several improvements. Do not call resize(size()) too often.
  Calling resize() from the widgetEvent() is not very nice though...

* Remove commented out code

* make sure layout is activated even if the widget does not change size

* activate the layout if the resize is same as size()

* In order to not break existing apps, make this an opt-in feature
  with QGraphicsLayout::setInstantInvalidatePropagation(true);

Reviewed-by: Frederik Gladhorn
Reviewed-by: John Tapsell
2011-05-12 15:47:26 +02:00
Gabriel de Dietrich 1ce725cb60 Fix licence headers again for MR 900
See commit b00089261eafbdf5f92ed94d7fb20b402bfcaeb2

Reviewed-by: Trust me
(cherry picked from commit 7b6a7f475119878681c9d0c06b29896ec3fe72c3)
2011-05-12 15:43:54 +02:00
Lars Knoll 6697f2a899 Merge remote branch 'origin/master' into refactor
Conflicts:
	src/gui/gui.pro
	src/gui/painting/painting.pri
	src/opengl/opengl.pro
	src/openvg/openvg.pro
2011-05-12 12:48:12 +02:00
Lars Knoll 1f806aa1b4 New algorithm for drawing thin lines
Added a new QCosmeticStroker class for drawing thin
lines. The class can handle both aliased and antialiased
lines.

The code replaces all the midpoint line drawing algorithms in
the raster paintengine and gives correct subpixel positioning
for lines.

It gives around 30% to 50% speedup against the midpoint algorithm. If
we missed that fast path, the speedup is around between a factor of
6 to 8 for lines and aliased paths and 100 and 400 for antialiased
paths.

Reviewed-by: Kim
(cherry picked from commit 37c329a3e35fabc88fbcad824a69f37c671d2132)
2011-05-12 10:36:29 +02:00
Lars Knoll e577d02cc9 move files in src/gui into their final locations
Rename the guikernel subdir to kernel
and guiutil to util.
2011-05-11 20:18:42 +02:00
Samuel Rødal e40443f7df Prevent crash in OpenGL engine when scaling images / pixmaps.
Make sure the resulting image / pixmap is valid if the source was valid.

Task-number: QTBUG-19157
Reviewed-by: Kim
Reviewed-by: Benjamin Poulain
(cherry picked from commit 1c5da7207a21cc44a4a08d291c290ffcd9b958fd)
2011-05-11 17:34:42 +02:00
Stephen Kelly d49c561b73 Add the QIdentityProxyModel.
Older commit history is in KDE svn:
http://websvn.kde.org/trunk/KDE/kdelibs/kdeui/itemviews/kidentityproxymodel.cpp?view=log

Ammended to update the license headers.

Merge-request: 900
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>

Conflicts:

	doc/src/frameworks-technologies/model-view-programming.qdoc
	tests/auto/headers/tst_headers.cpp

(cherry picked from b00089261eafbdf5f92ed94d7fb20b402bfcaeb2)
2011-05-11 17:37:48 +02:00
Shane Kearns 9d1a7b21c0 update def files
Reviewed-by: Trust Me
(cherry picked from commit 84cf56543c3e9add4f06ed65cf419561117ee739)
2011-05-11 16:40:09 +02:00
Martin Petersson 483807d4f2 emit QNetWorkAccessManager::finished on QNetworkReply::abort()
If we can not get online when the request is made then we are in the
WaitingForSession state. This will happen for example if the device
is in flight mode. This fix follows the same logic as in
_q_networkSessionFailed, but we should look into why we have the
WaitingForSession check in finished().

Task-number: QT-4747
Reviewed-by: Markus Goetz
(cherry picked from commit 0c9cb9a34d6b472cb53bf1af4616af55b593b616)
2011-05-11 16:39:59 +02:00
Oswald Buddenhagen 23db871a44 make QLibraryInfo return clean paths
as a side effect, don't use QDir for path resolution - it doesn't buy us
anything.

Task-number: QTBUG-1371
Reviewed-by: joerg
(cherry picked from commit 9cd62e4f7b23894a672297f6eebda64cdbd53cb0)
2011-05-11 16:39:45 +02:00
Oswald Buddenhagen 86a6ffbc3e make relative paths in qt.conf work inside qmake
Task-number: QTBUG-11602
Reviewed-by: joerg
(cherry picked from commit e6bb6ba76942d98e4b50a7fd32bf44e211f2fa5e)
2011-05-11 16:39:43 +02:00
Shane Kearns 119da2c8d4 Sockets: Fix potential null pointer usages
QAbstractSocketEngine::createSocketEngine can return 0 as well as throw.
In two cases the pointer was being used before the null check, in a 3rd
case the null check was missing.

Reviewed-by: Markus Goetz
(cherry picked from commit 19edac88af53eea7f733cabbaee77f9b725b7ea9)
2011-05-11 16:39:40 +02:00
Markus Goetz 10646142ae QNAM: Re-order checks in migrateBackend()
Do the easy checks first, will avoid a crash in the HTTP code
if request is serviced from the cache.

Task-number: QTBUG-18770
Reviewed-by: Peter Hartmann
(cherry picked from commit d03a28a289cf0665290e6ea0375b31cbb2d6649e)
2011-05-11 16:39:29 +02:00
Miikka Heikkinen a2e836f3c1 Fix initial main window dimensions for "fullscreen with softkeys" case
The application main window defaults to fullscreen size when initially
constructed, even if softkeys are specified for it, as the screen
furniture is constructed later in show_sys. This resulted in the main
window being partially under softkeys.
Fixed by invoking handleClientAreaChange() explicitly in show_sys in
fullscreen with softkeys case.

Task-number: QTBUG-19043
Reviewed-by: Sami Merila
(cherry picked from commit e8fc93973a41f193665baa5fdc26cba951bd692f)
2011-05-11 16:39:20 +02:00
Bjørn Erik Nilsen 1e41e3076a Fixes crash in QWidget::effectiveWinId.
Widgets are left in a transitional (and incosistent) state while being
re-parented, which caused QWidget::effectiveWinId() to crash in certain
circumstances. See patch for more details.

Auto test included.

Reviewed-by: ogoffart
(cherry picked from commit 6db0153cd7e35e4a919a76ae2aadbf2d2510bfb7)
2011-05-11 16:38:49 +02:00
Shane Kearns 7ee981a834 Fix crash when QSocketNotifier used with an invalid descriptor
select code for open C file/socket descriptors was crashing in FD_SET
if a QSocketNotifier was created with an invalid descriptor.

Added two autotests to QSocketNotifier, one to check notifiers with
bogus socket descriptors don't crash, the other to check that notifiers
with posix socket descriptors do work. (symbian socket engine doesn't
use them so they are not implicitly tested)

Reviewed-by: mread
Task-Number: QTBUG-18138
(cherry picked from commit 8a9a6afcf02f089f932bc81431ab46a60af32134)
2011-05-11 16:37:58 +02:00
Shane Kearns fe56131236 Optimisation - buffer packet read in pendingDatagramSize
In Symbian, the OS function to get the size of a pending datagram also
includes the size of the packet header (which is different for IPv4 and
IPv6). We were reading the datagram with the "peek" flag set to
implement pendingDatagramSize, then reading again normally when the
client called read/readDatagram.

This change removes the "peek" flag, and buffers the datagram in the
socket engine, returning it and clearing the buffer when read or
readDatagram is called.
If there is no buffered data, the existing code path is followed - it
isn't mandatory to call pendingDatagramSize before reading from the
socket.

Reviewed-by: Markus Goetz
(cherry picked from commit dd8de4c2437397748daba49569cbc7f89a8bfbee)
2011-05-11 16:37:23 +02:00
Shane Kearns 7d505004f5 Remove warnings when disabling notifications on a closed socket
The generic layer calls setReadNotificationEnabled(false) on sockets
after they are closed. This no longer causes a warning from the symbian
socket engine. A warning will only be emitted if trying to enable
notifications on a closed socket.

Task-number: QTBUG-18713
Reviewed-by: Markus Goetz
(cherry picked from commit 0aa780235c24ed724fcf6a9095a6467e34b9346e)
2011-05-11 16:37:18 +02:00
Qt Continuous Integration System 1a1af689fc Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix tst_QVariant::invalidColor
  Move QTextCursor::MoveStyle to Qt namespace
  Add some QRawFont related low level functions to avoid extra copying
2011-05-11 23:47:33 +10:00
Jiang Jiang 16628b76c0 Move QTextCursor::MoveStyle to Qt namespace
We cannot use QTextCursor::MoveStyle enums in QTextLine because
QTextCursor is not a QObject, while referring to that enum in
Q_PROPERTY requires it to be. That's why we need to move the
enums in Qt namespace.

Reviewed-by: David Boddie
(cherry picked from commit 5eba82b752e85a5d6cb3a893214ed2646d75f362)
2011-05-11 15:28:09 +02:00
Jiang Jiang 3032ba0f8e Add some QRawFont related low level functions to avoid extra copying
Added functions:

- QRawFont::glyphIndexesForChars(const QChar *chars, int numChars,
  quint32 *glyphIndexes, int *numGlyphs) const
- QRawFont::advancesForGlyphIndexes(const quint32 *glyphIndexes,
  QPointF *advances, int numGlyphs) const

Reviewed-by: Eskil
(cherry picked from commit 965af9eb2932efae5d736df54c3859460017b6a5)
2011-05-11 15:26:34 +02:00
Samuel Rødal 47b36ae639 Deliver leave event to proper widget (not the top-level). 2011-05-11 14:40:01 +02:00
Qt Continuous Integration System 3f8923d3a5 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix to commit 7fce0a73cc.
2011-05-11 22:30:28 +10:00
Kim Motoyoshi Kalland 587f7f753a Fix to commit 7fce0a73cc. 2011-05-11 14:24:45 +02:00
Samuel Rødal ed2a2dc6da Improved popup and mouse event handling.
Use QApplicationPrivate::sendMouseEvent() to ensure hover events are
sent. Copy most of the popup handling code from qapplication_x11.cpp
2011-05-11 13:57:33 +02:00
Qt Continuous Integration System eb5ad10b2c Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Check if OES_texture_npot is present on OpenGL ES 2.
2011-05-11 20:41:00 +10:00
Samuel Rødal 0719af99b7 Compile fixes after merge. 2011-05-11 12:39:14 +02:00
Samuel Rødal 5e2b0aa1b3 Merge remote branch 'staging/master' into refactor
Conflicts:
	src/gui/painting/qdrawhelper_p.h
	src/gui/painting/qgraphicssystemfactory.cpp
	src/gui/painting/qpainter.cpp
	src/gui/painting/qunifiedtoolbarsurface_mac.cpp
	src/gui/painting/qunifiedtoolbarsurface_mac_p.h
	src/openvg/openvg.pro
	src/openvg/qpaintengine_vg.cpp
	src/openvg/qwindowsurface_vg.cpp
	src/openvg/qwindowsurface_vgegl.cpp
	src/plugins/platforms/wayland/qwaylanddisplay.cpp
	src/widgets/graphicsview/qgraphicsscene.cpp
2011-05-11 12:39:09 +02:00
Kim Motoyoshi Kalland 7fce0a73cc Check if OES_texture_npot is present on OpenGL ES 2.
Unless the OES_texture_npot extension is present, non-power-
of-two textures have some restrictions on OpenGL ES 2.

Reviewed-by: Samuel
2011-05-11 11:59:50 +02:00
Qt Continuous Integration System 2de195b450 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Prevent crash in wayland mimedata in case there is no offer.
2011-05-11 02:07:56 +10:00
Laszlo Agocs 8e8e0b26b6 Prevent crash in wayland mimedata in case there is no offer. 2011-05-10 18:03:43 +02:00
Qt Continuous Integration System ff112f47c8 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  Add QT_xxx_VERSION macros for each library in qtbase
2011-05-11 00:10:15 +10:00
Laszlo Agocs 20594a6d5b Prevent having Status undefined in xlib platform plug-in.
Commit 4b75ceea08 changed
qcoreapplication_p.h to include qsettings.h, which undefines Status.
This breaks the xlib platform plug-in (and its includes).
2011-05-10 15:42:01 +02:00
Liang Qi 45cdd701fa Add QT_xxx_VERSION macros for each library in qtbase
Provide version info for each library like QTCORE_VERSION and etc.

Task-number: QTMODULARIZATION-44
Reviewed-by: axis
2011-05-10 15:15:15 +02:00
Olivier Goffart 48b7c870ec Merge remote-tracking branch 'staging/master' 2011-05-10 13:15:10 +02:00
Eskil Abrahamsen Blomfeldt f0857b7667 Compile on Mac
Missing API update in Q_WS_MAC block

Reviewed-by: Jiang Jiang
(cherry picked from commit 4b95d9939db75d7bd55db4bbbf2d67af459f7eb5)
2011-05-10 13:14:41 +02:00
Oswald Buddenhagen 1e331968e1 ifdef out mac/no_coreservices path more cleanly
the symbian path was also dead
(cherry picked from commit 76ac26383922b4c452592a9175e7f3b9b3fd2513)
2011-05-10 12:54:57 +02:00
Oswald Buddenhagen 00bfc268c4 fix build on symbian
provide dummy implementation of QProcessEnvironment::systemEnvironment()
(cherry picked from commit e4920a4b4bc454ad309324a62db0e9257bba7367)
2011-05-10 12:54:56 +02:00
Alexander Potashev 342d2a253c Allow different text for undo actions and items in QUndoView
Now the texts used for undo actions and for items in QUndoView can
be set separately. This introduces an extended format of text that
can be passed to QUndoCommand::setText or QUndoCommand constructor.

The action text can now contain two strings separated by a "\n". The
first string (that goes before "\n") is then returned by
QUndoCommand::text() and used as name of item in QUndoView.
The second string (that goes after "\n") is returned by
QUndoCommand::actionText() and used when the text properties of the
undo and redo actions are updated.

If the text passed to QUndoCommand does not contain "\n", everything
works as before, and both QUndoCommand::text() and
QUndoCommand::actionText() return the same string.

Even though action text in English usually does not need different forms
for undo actions and QUndoView item, translators can employ this new
command text format, for example to adjust the grammatical case used in
command text to match the context of "Undo %1"/"Redo %1".

Merge-request: 2610
Reviewed-by: ossi
(cherry picked from commit 9b784789c75d59b27530bbf1d12676cc44f64f46)
2011-05-10 12:54:56 +02:00
Alexander Potashev ec4d346f95 Allow using not only prefixes for undo command text
Functions QUndo{Group,Stack}::create{Undo,Redo}Action() now use action
text templates "Undo %1" and "Redo %1" if no custom prefix was provided.

This makes more flexible translations possible. The surrounding text
(like "Undo" and "Redo") can now be suffixed to the command name as
German and Korean languages require ("%1 rueckgaengig machen" for German).

Also, now the default action text (when no command can be undone) can be
translated differently from the prefix. For example, it can be
translated as "Undo action", not just "Undo".

When a non-empty prefix is passed to QUndo*****::create****Action(),
those functions work as before, and the features described above become
unavailable.

Task-number: QTBUG-14442
Merge-request: 1212
Reviewed-by: ossi
(cherry picked from commit 213c25ad24e4f3b0a44f82f23d34746cd294f8d6)
2011-05-10 12:54:56 +02:00
Pino Toscano e04ad81dc4 QFileSystemEngine::currentPath(): use QFileSystemEntry() also for the no-PATH_MAX case
... in the same way as done in the other code path.

This makes qmake/QtCore compile again on glibc systems without PATH_MAX (e.g. GNU/Hurd).

Merge-request: 1218
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
(cherry picked from commit c8812fe6e642520532d65744caefcea790d59de8)
2011-05-10 12:54:56 +02:00
Bradley T. Hughes a6c8d0ba56 Do not allow multiple threads to acquire a QMutex
After the mutex optimizations on Mac, we did not handle the case where
semaphore_wait() could return KERN_ABORTED. Under heavy contention, this
happens, and when running in release mode, the assert in qmutex.cpp is not
executed. The code silently allows multiple threads to continue as if it
had acquired the mutex exclusively.

Fix this by checking for KERN_ABORTED from semaphore_wait(), and retry the
wait. We do not handle KERN_ABORTED for timed waits, simply return false and
let the code doing the tryLock() handle it how it deems best.

Reviewed-by: joao
(cherry picked from commit b54af0a9d6406356616889826e31925d2fa05718)
2011-05-10 12:54:56 +02:00
Robin Burchell 0bb70c3164 Ensure that QDateTimeEdit::calendarWidget() will always return a valid widget.
This case may be triggered in the (admittedly slightly abnormal) case where a
user wishes to embed the calendar widget in a layout or, for whatever reason, do
something else that will change its ownership.

We work around this by detecting when it is deleted and recreating the widget.

This will also have a positive side effect if setCalendarWidget() is called with
a widget which is then subsequently deleted, returning the default widget
instead of a pointer to (now deleted) memory.

Reviewed-by: Denis Dzyubenko

Merge-request: 2568
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
(cherry picked from commit 124ec3200f8453142717fcfe7a4aa0a55164aaa6)
2011-05-10 12:54:56 +02:00
Oswald Buddenhagen 202df2ae89 don't crash in QProcessEnvironment::systemEnvironment()
as the implementations moved to platform-specific files, the
QSharedDataPointer<QProcessEnvironmentPrivate>::detach() specialization
needs to go to the private header.

Reviewed-by: thiago
(cherry picked from commit c79246683a5033f605acd59d1c37d68381383a06)
2011-05-10 12:54:56 +02:00
Peter Hartmann f38a639a41 HTTP backend: do not load resources from cache that must be revalidated
The header field "Cache-Control: must-revalidate" is a strict
requirement for loading the resource from the server, and not reading it
from the cache without revalidating first. With this patch, PreferCache
will load such from the network instead of loading them from the cache,
and AlwaysCache will throw a ContentNotFound error.

Reviewed-by: Markus Goetz
Task-number: QTBUG-18983
(cherry picked from commit 0e449f38894b1bd2dbb2f14206a011424679f063)
2011-05-10 12:54:56 +02:00
Denis Dzyubenko bf89190cfb Compile fix for QLocale on Symbian.
The previous change added new ELangEnglish_India that doesn't
necesserally present in all SDKs.

Reviewed-by: trustme
(cherry picked from commit 154ab1cb4c4cdf34f21fc93b078f91cc79048bd4)
2011-05-10 12:54:56 +02:00
Denis Dzyubenko 563ab2e16c Added Kazakh language to the QLocale mapping table on Symbian.
Reviewed-by: trustme
(cherry picked from commit c6808af66d45541546b30c8e6de155b9812b4ef9)
2011-05-10 12:54:55 +02:00
Denis Dzyubenko fc7aaa5c48 Added support for QLocale::uiLanguages on Symbian.
Extended the mapping table that matches symbian device languages to a
locale name and language code.

Task-number: QTBUG-7329
Reviewed-by: trustme
(cherry picked from commit 93233fc811920002d5b5b8272d9b5b8d5d3e2b98)
2011-05-10 12:54:55 +02:00
Olivier Goffart 74dda83074 Fix drawing text in item view:
Put back code that was removed by mistake in e8019cf8feb402303e6d253f5ca58bebfda42679

Task-number: QTBUG-18998
(cherry picked from commit bbbd4b8f3949b58d4fd21854241cb46cbc024a80)
2011-05-10 12:54:55 +02:00
João Abecasis 1787e557e8 Don't rely on uninitialized data
HB_GetCharAttributes used to require a zero-initialized array for
attributes, as it selectively sets relevant bits for each character. We
ease that requirement by always initializing the attributes buffer
explicitly with memset.

Task-number: QT-4911
Reviewed-by: Ritt Konstantin
(cherry picked from commit 4cb9db404224c55859713c282aa90409e375c372)
2011-05-10 12:54:55 +02:00
João Abecasis e6e6e4c169 Don't realloc user-provided buffer
When QTextBoundaryFinder doesn't own the buffer, don't realloc it and
get a new one instead.

Reviewed-by: Ritt Konstantin
(cherry picked from commit 320f172c851a4720299297c8b3b757eb1202c568)
2011-05-10 12:54:55 +02:00
Samuel Rødal 978fc98bff Fixed bug in X11 backend when creating translucent windows.
We forgot to send the ParentAboutToChange event, which meant QGLWidget
didn't destroy the old EGL surface. This could cause two EGL surfaces to
be created for the same QGLWidget, which leads to undefined behaviour on
some platforms.
(cherry picked from commit 5a834d7141cc7d29d022911ccec16e628d94acf1)
2011-05-10 12:54:54 +02:00
Janne Anttila 2d07ca2cbd Clarified sendCustomRequest documentation to include HTTPS
Reviewed-By: mgoetz
(cherry picked from commit 16b8c940dac02ec77e6ff9fe4150c32db1811e74)
2011-05-10 12:54:54 +02:00
Olivier Goffart 94beee1c37 Fix compilation
Conflicts between 61c6d66b7efd8de4a83b021e7c4ef2b1a803ece2 and 940f16babab76b328b7c9bfdb5435102c689b76b
(cherry picked from commit 7a20cf9d4419cf1a5a9a4ed450b03caa8716fd58)
2011-05-10 12:54:54 +02:00
Oswald Buddenhagen 8b7bebd45d no environment on WinCE
(cherry picked from commit 62e73a463cb7035192acdce6538c5b0248e643d4)
2011-05-10 12:54:54 +02:00
Oswald Buddenhagen 8bc9f1ca62 fix Widestring vs. Ansi mixup
(cherry picked from commit 4dcb4a41022085aa82f25f7e0a2ce9e92510f4ae)
2011-05-10 12:54:54 +02:00
Oswald Buddenhagen 575410f466 fix potential crash in QProcessEnvironment::systemEnvironment() on windows
GetEnvironmentStrings() can theoretically return null
(cherry picked from commit 443608952d7df9a5146317be992320ba232d2cf9)
2011-05-10 12:54:54 +02:00
Armin Berres 0b2f70a5de Only cleanup share widget if it has been created.
Without this change a not yet created share widget is created
once qt_destroy_gl_share_widget() is called. As creating the
widget also triggers a call to qt_cleanup_gl_share_widget() once
QApplication is destroyed a QApplication created afterwards
cannot use a share widget anymore.
This functionality is needed for Harmattan.

Merge-request: 2609
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
(cherry picked from commit 8680d831fb7066feae07690a4a6bc8e908a84e5a)
2011-05-10 12:54:54 +02:00
Liang Qi 046befd0c4 Get rid of "typename, typename" for TEMPLATE_TEMPLATE_PARAMETERS.
Because Qt doesn't support that feature before.
(cherry picked from commit c12ed14fb38ae77be194e19a27545190aded830b)
2011-05-10 12:54:54 +02:00
Olivier Goffart 91f5144f90 Compile with msvc
msvc tries to instenties the return type of overloads that are not chosen by overload resolution
(cherry picked from commit 7307d712e10783b57c4c95c8390a9455b69f473a)
2011-05-10 12:54:54 +02:00
Olivier Goffart 9c39117419 compile with windows
MSVC doesn't pick up the right template partial specialisation.
(cherry picked from commit 0188f5ee18d00ae18e65a03c712d3f701e84fa80)
2011-05-10 12:54:53 +02:00
Olivier Goffart 7efa2f6aab get rid of the DisableIfSame hack
By changing the order of the parametters, in a way it is unlikely to clash
(cherry picked from commit e9d198b5928e1adf678796c098113bc307ef53f5)
2011-05-10 12:54:53 +02:00
Liang Qi 5d85018720 Rewrite the interfaces of QtConcurrent.
At least make RVCT 2.2 work.

Task-number: QTBUG-5182
Task-number: QTBUG-9070
Reviewed-by: Olivier Goffart
Reviewed-by: joao
(cherry picked from commit 0ba0c374fe055623381e3795daa6743c5c995bbc)
2011-05-10 12:54:53 +02:00
mae a9a850952b Fix namespace issue with the global static
(cherry picked from commit c99be6bf73dce10fc706764b72a8dacc1c6589a0)
2011-05-10 12:54:53 +02:00
Matthew Cattell c500291e42 Fixed bug in QPdfEngine::addImage causing mono images to be made 32 bit
Regression from 4.5 causing performance and size degradation.

Task-number: QTBUG-18997
Reviewed-by: Samuel
(cherry picked from commit 18122b473ecbd85ba953f70743b1756358bf7c0c)
2011-05-10 12:54:53 +02:00
mae 42452a32bf Fix regression with QSettings patch
The plugin loader is used without QCoreApplication.
This fixes 31ef8fa6abc2ea23c6f0a996b36494d88aafb0b5
(cherry picked from commit 988871dabf3c949ffc71d126131281a3ae641ebf)
2011-05-10 12:54:53 +02:00
Jani Hautakangas c0da3003df Fix trailing whitespaces
Reviewed-by: TRUSTME
(cherry picked from commit d4fd21f746b536eaddbdd7a07f1d717ef18278e7)
2011-05-10 12:54:53 +02:00
Jani Hautakangas 806873f9af Fix for native child widget performance issue.
Flushing native child widgets in VG and GL window
surfaces caused performance downgrade because unnecessary
swapBuffers calls. On Symbian we must not support flushing
native child widgets in VG and GL window surfaces because
it causes GPU memory overhead and performance issues. Symbian
graphics architecture allows us to render native child widgets
to TLW EGL surface correctly in most of the cases.

Task-number: QTMOBILITY-1570
Reviewed-by: Samuel Rødal
(cherry picked from commit 6a92de7c89764848f7a85b1aa412a07bedc72b1a)
2011-05-10 12:54:53 +02:00
Oswald Buddenhagen 95e57339a9 fix build on symbian
Error:  #793: explicit specialization of class "QTypeInfo<QProcessEnvironmentPrivate::Key>" must precede its first use

just un-nest QProcessEnvironmentPrivate::{Key,Value}

Reviewed-by: thiago
(cherry picked from commit 167044693cc1d16684a5732b05e3926d0af61960)
2011-05-10 12:54:53 +02:00
Oswald Buddenhagen 4d8cf47178 fix build on mac
environ needs to be declared properly
(cherry picked from commit aae6ef391d2ee2fa5b91c834ea65f14fd61e5af6)
2011-05-10 12:54:53 +02:00
Oswald Buddenhagen 61b85df09b make QProcessEnvironment on Unix cache converted values
values are converted between byte arrays and qstrings on demand.
this makes it feasible to use the class as a generic environment container
with fast reading and writing access.

Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 7aa4ecdedba60ac4cbc07a774ae9d834677002e9)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 5a4df43c71 make QProcessEnvironment::systemEnvironment() encoding-safe
on unix, don't do the roundtrip over unicode.

on windows, use the WinAPI unicode environment instead of the 8-bit CRT
environment.

Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 60194ad0ea68d7c82b4729119d122dcfeb909842)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 9ff8d1c34a make QProcessEnvironment on Unix cache converted variable names
the converted keys also cache their hash, as they are used only for the
purpose of looking up in a qhash.

Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 18f1613aa8ece72d24ac10e28f06e3db1d8ce400)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 299d10549f move key/value converters to the private class
this will enable them to access other members later

Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit a2d70d71c8c7652ded41d5d603672c3927df44e6)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 4212ee7ec7 make QProcessEnvironment on Windows preserve variable name case
while windows itself does not care which case the variable names are in,
they may be passed to unix tools which *do* care.

note that this uses true case folding for string comparisons while
windows uses uppercasing. this means that "ess" and "eß" will be
considered the same by us, while not by windows. this is not expected to
have real-world impact, particularly because non-ascii variable names
are not used much.

Task-number: QTCREATORBUG-3110
Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit f3db5603871928ebed43a085a496397e65952b39)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 3ab236d77b split QProcessEnvironmentPrivate::Unit into Key and Value
Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 11a79c65ea992be0e2ede7dc8f60660c9190291f)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 1e9a4bce9d remove unused functions
Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit e989a4d375b279b3ea61139cb07596e0e4b79e28)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen e608887ee4 minor optimization: use QList::reserve()
Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 6a53f17c7039f1a5405912a4a645572e215410bb)
2011-05-10 12:54:52 +02:00
Oswald Buddenhagen 9590b7b662 use the Hash typedef
Reviewed-by: thiago
Reviewed-by: dt
(cherry picked from commit 10fd0d3e5c88c7b0265db3acdd75cb3d6f35ee63)
2011-05-10 12:54:52 +02:00
mae 4b75ceea08 Reduce open and stat system calls for QSettings
The patch moves the global static QSettings object
from QLibrary to QCoreApplication and reduces a
few stat and open calls.

Without the patch, a large Trolltech.conf was
pushed out of the unused settings cache during
startup, meaning Trolltech.conf was parsed
more than once.

Reviewed-by: Liang Qi
(cherry picked from commit 31ef8fa6abc2ea23c6f0a996b36494d88aafb0b5)
2011-05-10 12:54:52 +02:00
Samuel Rødal 5c791cc0d5 Fixed off-by-one in radial gradient color table index computation.
Clamp to GRADIENT_COLOR_TABLE-1, not GRADIENT_COLOR_TABLE-2. Fixes
visible error in gradients.qps

Reviewed-by: Kim Motoyoshi Kalland <kim.kalland@nokia.com>
(cherry picked from commit af9d20680c91f587f4791aa68f3a8b03d3a42be0)
2011-05-10 12:54:51 +02:00
Thorbjørn Lindeijer cd650da45a Revert "Added QStringRef::toLatin1 and QStringRef::toUtf8"
This reverts commit feabda665de62a0f6a82d831b45926697f30b45b.

They were already added by Denis Dzyubenko in commit 2916b074.
(cherry picked from commit ffe0a2ec7c1f4412792a977401bdc4dbf6c76acd)
2011-05-10 12:54:51 +02:00
Olivier Goffart 9c8734dccb Fixes warnings about unused variables
Reviewed-by: Samuel
(cherry picked from commit 28061caa38d94de85db9aec743d1efba33c1e46f)
2011-05-10 12:54:51 +02:00
Olivier Goffart 138cf4373b Fixes warnings about unused variables
Reviewed-by: jbache
(cherry picked from commit e8019cf8feb402303e6d253f5ca58bebfda42679)
2011-05-10 12:54:51 +02:00
Olivier Goffart c6e1ee2b28 Fixes warnings about unused variables
Reviewed-by: Peter Hartmann
(cherry picked from commit 61c6d66b7efd8de4a83b021e7c4ef2b1a803ece2)
2011-05-10 12:54:51 +02:00
Olivier Goffart 12c96812f9 Fixes warnings
In QString, it would comlain that:
   assuming signed overflow does not occur when assuming that (X - c) > X is always false
Changing to unsigned comparison fix the warning

Others are about unused variables

Reviewed-by: Thiago
(cherry picked from commit 5e5485809e8c6f8339bb9f19ad71ed623a8b23c7)
2011-05-10 12:54:51 +02:00
Olivier Goffart bd64c94a26 Fixes warnings about unused variables
Reviewed-by: Samuel
(cherry picked from commit ddd253e14318af45e5c56df736028b88257068c4)
2011-05-10 12:54:51 +02:00
Thorbjørn Lindeijer e8ac3549c5 Added QStringRef::toLatin1 and QStringRef::toUtf8
These helper functions make it convenient to avoid making an unnecessary
copy of the string before converting it to a QByteArray. The current
most obvious way to do this would be:

  // QStringRef text
  QByteArray latin1 = text.toString().toLatin1();

Though the copy can also be avoided by doing:

  const QString textData =
      QString::fromRawData(text.unicode(), text.size());
  QByteArray latin1 = textData.toLatin1();

Now the faster method can be achieved using the new obvious way:

  QByteArray latin1 = text.toLatin1();

Reviewed-by: Thiago Macieira
Reviewed-by: Robin Burchell
(cherry picked from commit feabda665de62a0f6a82d831b45926697f30b45b)
2011-05-10 12:54:50 +02:00
Laszlo Agocs b9f6b156c6 Make translucent windows working properly with OpenVG.
The OpenVG engine correctly uses vgClear() to fill the surface with
transparent pixels whenever the window has the WA_TranslucentBackground
attribute enabled. However both scissoring and masking affects
the operation of vgClear(). Drawing artifacts were previously
visible due this, simply because scissoring was left enabled by
the VG paint engine, and the filling with transparent pixels
happens in the window surface's beginPaint() that is called
between the paint engine's end() (for the previous paint) and
begin() (for the next paint).

Task-number: QT-4907
Reviewed-by: Jani Hautakangas
(cherry picked from commit 4a1ae3d1b4e8e032b1c978fcc7e1812e37e1f047)
2011-05-10 12:54:50 +02:00
Frederik Gladhorn 14e31b1f5f Add accessible events as defined by IAccessible2.
Additional events from:
http://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/_accessible_event_i_d_8idl.html

Reviewed-by: Morten Sorvig
(cherry picked from commit 6bd74d66b418cad30ed5a448e657a7a5097eed4a)
2011-05-10 12:54:50 +02:00
Frederik Gladhorn a92f96efa2 Return name and allow actions for invisible accessible items.
There is no reason not to report the name or allow actions
when a widget is invisible.

Reviewed-by: Morten Sorvig
(cherry picked from commit b88b2cb05c56a4c936a073ccf53c9fb3ad50d5d8)
2011-05-10 12:54:50 +02:00
Jens Georg b11d1be7f3 Update documentation of QDateTime::toString
Merge-request: 1149
Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com>
(cherry picked from commit 3d4149afe62b4fc5d519a2a155b8f8c32e7e95c4)
2011-05-10 12:54:50 +02:00
Jens Georg 2528f4ffe5 Fix QDateTime::toString for Qt::ISODate
Fixes QTBUG-18290 and the "missing Z" from QTBUG-9698

Merge-request: 1149
Reviewed-by: Zeno Albisser <zeno.albisser@nokia.com>
(cherry picked from commit 8f95a19d330480bd86650c3d2e4e147d3bca5789)
2011-05-10 12:54:50 +02:00
Laszlo Agocs dc131f1560 Specify swap behavior preserved bit in openvg engine.
Unlike OpenGL, the EGL_SWAP_BEHAVIOR_PRESERVED_BIT was not set for
the EGL configuration used with OpenVG. Yet the preserved swap was
enabled still, which, according to the EGL spec, should fail. To
make sure it still works with other EGL implementations, the bit
is now set in the configuration.

Reviewed-by: Jani Hautakangas
(cherry picked from commit 710aa7f8fbd72ee303c3348aa3aaf12d6984964d)
2011-05-10 12:54:49 +02:00
Emmanuel BOURGERIE 02ebcdb8c7 Fixed QTBUG-11935 : "With MySQL version > 50000 the QMYSQLDriver::
tables() returns tables in all databases on the server"

This bugfix has been rewritten to match contributors advise.

Change-Id: I3a9cf900ff7eae47c9ffdbcf34bcb1b4396d9837
Merge-request: 1010
Reviewed-by: Charles Yin <charles.yin@nokia.com>
(cherry picked from commit c0ca29efdeb442a6b88ccadff409e3f7ef828ce8)
2011-05-10 12:54:49 +02:00
Emmanuel BOURGERIE b1d6704b14 Fixed QTBUG-11935
Change-Id: Ia7bdb0ceecf2892f6be73d1816764a2bab6275f1
Merge-request: 1010
Reviewed-by: Charles Yin <charles.yin@nokia.com>
(cherry picked from commit a18f36048aa23fb088527c26274e49ce626ddf4d)
2011-05-10 12:54:49 +02:00
Samuel Rødal 4a93814a1d Removed warning from QPixmap::handle().
With the new fromX11Pixmap function there are valid use-cases where
checking the handle() is useful also with the raster graphicssystem.

Reviewed-by: Thiago Macieira
(cherry picked from commit 1124f41253edd0e03704db72b0e1b6b4b518bd0f)
2011-05-10 12:54:49 +02:00
Gabriel de Dietrich a759518a98 Removing the "resetInternalData" slot in QAbstractProxyModel
This reverts commits 0916a68056154ecb60e4ea2c79726ab2e49b1532 and
6f1384fcbeea993d5be47590c696de60215b7608.

This effectively reverts most of MR 694.

Reviewed-by: Olivier
(cherry picked from commit 06e104b9c305d3db0dd1848e6e633ee3888fd1de)
2011-05-10 12:54:49 +02:00
Thiago Macieira d60bd8e216 Fix warnings on unused parameters and variables
(cherry picked from commit 940f16babab76b328b7c9bfdb5435102c689b76b)
2011-05-10 12:54:49 +02:00
mae 4d38a48a70 Fix insert and scroll to bottom case
When using QtextCursor::insert() with a large text followed by setting
the vertical scrollbar to its maximum value (scroll to bottom),
QPlainTextEdit would not behave properly if a document size
change was triggered by the insertion due to line wrapping.

This was visible in Qt Creator.

Auto test included.

Reviewed-by: con
(cherry picked from commit 5d144faf3c524ab557b88f69c4b755e20237e846)
2011-05-10 12:54:49 +02:00
Laszlo Agocs d4eedda7d2 Make text rendering working outside the gui thread on Symbian.
It was previously not possible to render text (QPainter::drawText)
in a secondary thread on Symbian, it always resulted in some
kind of panic. This patch corrects it. For S60 5.0 and earlier
the behavior is not changed, threaded text rendering is only
supported on Symbian^3 and newer. This also means
QFontDatabase::supportsThreadedFontRendering() will return
true from now on, but only on Symbian^3 and higher.

Task-number: QTBUG-18516
Reviewed-by: mread
(cherry picked from commit 0c62e02b80570bf8b92eff7acceb9018df61c89e)
2011-05-10 12:54:49 +02:00
Frederik Gladhorn af6057918a Typos in internal api docs.
(cherry picked from commit 81f79b80337a4ef967fdd2b0773f0523c1ce9261)
2011-05-10 12:54:49 +02:00
Thierry Bastian 78ec3b2bd9 Revert "Fixed a crash in QListView"
This caused regressions in the QListView

This reverts commit 5b3872b2d7523d44ba454a76613e7a3fa45387f7.
(cherry picked from commit 0edbaca5e7b718bb9bbbeaccc9e322b525b4327e)
2011-05-10 12:54:48 +02:00
Thierry Bastian 1712e20a5a Fixed a crash on Windows XP with mingw in threaded-code
The thread callback doesn't align the stack on 16-bytes on WinXP.
That causes a crash when we call SSE code. So now we tell the
compiler to force that alignment of the stack.

Task: QTBUG-18631
Reviewed-By: Olivier
(cherry picked from commit 364ce5b7f5379499562b4f4f5a68da7ba068fe1e)
2011-05-10 12:54:48 +02:00
mread 3e787c470d Symbian's QElapsedTimer::restart() fixed to return ms rather than us
Symbian's QElapsedTimer::restart() had accidently been changed to
return a microsecond count rather than milliseconds, when the elapsed
timer resolution was increased. This fixes it back to milliseconds.

Reviewed-by: Shane Kearns
(cherry picked from commit 39202973e3fb7ff37033290b29efa1b9edc674fb)
2011-05-10 12:54:48 +02:00
Laszlo Agocs dfebed5d5b Create a cleanup stack for each new thread on Symbian.
The native thread implementation in Qt 4.8 did not call
CTrapCleanup::New() which resulted in E32USER-CBASE 69 panics
in applications when they tried to use the cleanup stack in
a thread's run() function. In 4.7 this was working because
OpenC's pthread implementation created a CTrapCleanup automatically.
Now we do it also in the native Symbian thread implementation.

Trask-number: QTBUG-18822
Reviewed-by: Murray Read
(cherry picked from commit 41aa023ef6019ac9745b780c953f48b8bbc42a42)
2011-05-10 12:54:48 +02:00
Miikka Heikkinen dd646cd10e Do not modify window size for fullscreen windows in setGeometry_sys
Minimum sizes of widgets can cause windows to expand beyond screen
limits in QWidgetPrivate::setGeometry_sys. Normally this is not
noticeable as the window size is forced in various places to the
clientRect, but there are certain sequences where the size set in
setGeometry_sys is the final one, resulting in too large windows.

Removed the modification of window size in setGeometry_sys
for fullscreen windows for which the correct size is already requested.

Task-number: QTBUG-18749
Reviewed-by: Sami Merila
(cherry picked from commit da8f333cfe17a53d475208efa36fa369a9ee4638)
2011-05-10 12:54:48 +02:00
Gabriel de Dietrich ebbc98fcb6 Totally kill MR 916
... the hard way.

Reviewed-by: Trust me
(cherry picked from commit 443d5b17619002cd6bb428198c453271a01accab)
2011-05-10 12:54:48 +02:00
Samuel Rødal c889ddb59d Another attempt at fixing the MSVC2005 build.
Apparently direct casting is illegal there too, even though they don't
have the cast operators.

Reviewed-by: Kim
(cherry picked from commit 45c60ceac3d5a401543d7d56a44d1f9227464431)
2011-05-10 12:54:48 +02:00
Samuel Rødal 49fc892129 Compile fix in qdrawhelper_sse2.cpp for MSVC 2005.
(cherry picked from commit 7f921ea08c296e7451a44a1dae15350ae183ea20)
2011-05-10 12:54:48 +02:00
Gabriel de Dietrich 4b25f3fa1f Reverting merge request 916
Revert "Introduce menubar plugin system"

This reverts commits 56c3de426d97ab7c8fb..f7b60fffb673b182e63
(cherry picked from commit c6514537a8568050f5812a2b55fcf47a3ec2fce1)
2011-05-10 12:54:47 +02:00
Gabriel de Dietrich 9b609e1c05 Reverting merge request 916
Revert "Build fix on QMenuBar"

This reverts commit ea585d567bf0970c57e31846da044295d80774ba.
(cherry picked from commit 68542b72f53f52df43063677e24994463872e81b)
2011-05-10 12:54:47 +02:00
Samuel Rødal d92ac3c188 Compile fix in qdrawhelper_sse2.cpp.
(cherry picked from commit 7cc4ffce36c24596630ca83cd6418869d6383670)
2011-05-10 12:54:47 +02:00
Thierry Bastian 95d7a4e8ea Build fix on QMenuBar
Reviewed-By: gabi
Merge-Request: 916
(cherry picked from commit ea585d567bf0970c57e31846da044295d80774ba)
2011-05-10 12:54:47 +02:00
Jan-Arve Sæther b46d7d3b91 Do not call setSizePolicy from ctor, it might call a virtual function
More specifically, it might very well call updateGeometry()

Reviewed-by: Frederik Gladhorn
(cherry picked from commit febdcef08f22310cbd70ec13b315f70ff8e41e83)
2011-05-10 12:54:47 +02:00
Thierry Bastian 2e768aad98 Fix copyright and a few codestyle mistakes
Reviewed-By: Trust-Me
Merge-Request: 916
(cherry picked from commit 56c3de426d97ab7c8fbb3f5766e1872d6f2e91e9)
2011-05-10 12:54:47 +02:00
Aurélien Gâteau 0241d63994 Renamed QAbstractMenuBarImpl to QAbstractMenuBarInterface
Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit 3d188ffae259584c4351c5fa766a49da9b189112)
2011-05-10 12:54:47 +02:00
Aurélien Gâteau 5d6d23f118 Make ctor and dtor of QAbstractMenuBarImpl inline
This way the class does not need to be exported

Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit a624a4011adca00d7334462c4d33f574c465110a)
2011-05-10 12:54:47 +02:00
Aurélien Gâteau 9317fee1d9 QAbstractMenuBarImpl::allowSetVisible => setVisible
This makes it possible to alter the behavior of QMenuBar::setVisible().
It seems to be needed for the Mac menubar.

Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit bafeffd7b8b2c40761369ba496ee655dff6cf2a5)
2011-05-10 12:54:46 +02:00
Aurélien Gâteau 03b0eb416f Introduce menubar plugin system
Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit be0d346052d69693c2780e62401f3c0d4b0d89d4)
2011-05-10 12:54:46 +02:00
Aurélien Gâteau 1b573dd5ff Introduce QAbstractMenuBarImpl
Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit 0432a6b79d35ac7db909a81793417107ebfb668f)
2011-05-10 12:54:46 +02:00
Aurelien Gateau 69da442904 Hide Q<Platform>MenuAction
This will help abstracting the platform specific parts of QMenuBarPrivate in a
common interface.

Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit c664954295c0605c73f7e69deb9f6130c5f5fb05)
2011-05-10 12:54:46 +02:00
Aurélien Gâteau e84cfbfcfa Fix warning about initialization order
Merge-request: 916
Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
(cherry picked from commit f7b60fffb673b182e633545bffd1d310337aca50)
2011-05-10 12:54:46 +02:00
Samuel Rødal 83ecb25998 Added support for six-parameter radial gradients.
The extended radial gradients conform to the radial gradient
specification in HTML 5 canvas.

Task-number: QTBUG-14075
Reviewed-by: Andreas Kling
(cherry picked from commit da55c1ea92474e989e5582b02815936bbf584405)
2011-05-10 12:54:46 +02:00
Samuel Rødal e05443367f Improved gradient table generation performance for two-stop gradients.
Two stops is a fairly common case so we gain quite a bit by special
casing it. Improves performance by 10 % in parcycle benchmark, and
by 90 % in a synthetic benchmark.

Reviewed-by: Andreas Kling
(cherry picked from commit 5b74a70ac630073582be56f8a0539624a1080185)
2011-05-10 12:54:45 +02:00
Samuel Rødal db58039591 Optimized radial gradient fetch using SSE 2.
On an i7 this improves performance by 22 % in parcycle, 107 % in default
svgviewer example, and 283 % in a synthetic radial gradient benchmark.

Reviewed-by: Andreas Kling
(cherry picked from commit 26bd3dccdee8c6a8f1cf9d254a2a6be7d403aa8d)
2011-05-10 12:54:45 +02:00
Samuel Rødal 28e32c0bc3 Improved qt_gradient_clamp for reflect spreads.
Using GRADIENT_STOPTABLE_SIZE * 2 as the modulo gives more correct
behaviour, and also improves performance slightly.

Reviewed-by: Benjamin Poulain
(cherry picked from commit 44dd7ef86a3970694a4f8fd9516575c0533a336e)
2011-05-10 12:54:45 +02:00
Samuel Rødal 79d238abdc Prepared for SIMD implementation of radial gradients.
Made the radial gradient fetch func into a template to be able to
optimize the inner loop using SIMD instructions.

Reviewed-by: Benjamin Poulain
(cherry picked from commit f16c261348193b4c03f796db4e1e3a5db09267a2)
2011-05-10 12:54:45 +02:00
Jonathan Liu 11140fc40a Fix incorrect rendering of checked menu items on Windows Classic
Modify rendering of checked menu items when using Windows Classic
style to be more native looking.

Changes:
* Checked menu items with no icon are not drawn sunken
* Disabled checked menu items with an icon have a plain background
  instead of a checkerboard pattern same as when enabled
* Check mark is drawn with highlighted text color when selected to
  match text
* Fix check mark offset for disabled unselected checked menu item
  as the entire check mark was drawn shifted (1, 1)
* Fix color of check mark shadow for disabled unselected checked
  menu item as it was same color as the check mark when it should
  be a light color

Task-number: QTBUG-15098
Merge-request: 2513
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
(cherry picked from commit e89a2b72050dd782da16ff24bc2eb84dc36ed6a5)
2011-05-10 12:54:45 +02:00
Guoqing Zhang 758978564c Fix OpenGL build break on Symbian
Task-number: QT-4871
Reviewed-by: Dmitry Trofimov
(cherry picked from commit f3092b91a7a2e9e34dfe7eefb3c6b0ed8c3c3786)
2011-05-10 12:54:45 +02:00
Pierre Rossi fc9a9acbbe Fix a bug with menu overflowing from a lower resolution second screen.
The menu needs to take into account the screen geometry of the screen
it's about to be shown on (not the last screen it was shown on) when
updating its actions rects

Task-number: QTBUG-2748
Reviewed-by: Thierry
(cherry picked from commit b10265efba544b1e4820f45b86354d442f6abf26)
2011-05-10 12:54:45 +02:00
Pierre Rossi a74f09044e Calculate the submenu position after emitting aboutToShow()
The rationale behind this is that if the submenu gets populated in a slot
connected to aboutToShow(), we'll have to do it again anyway.

Task-number: QTBUG-14739
Reviewed-by: Thierry
(cherry picked from commit 0848b860b9251e76b9319f65554f932ab68e33cc)
2011-05-10 12:54:45 +02:00
Thierry Bastian 09e2335f6d Fixed a crash in QListView
The problem was that QAbstractScrollArea calls layoutChildren on resize
but the QListView requires that updateGeometries is called before.

Task: QTBUG-18558
Reviewed-By: Pierre
(cherry picked from commit 5b3872b2d7523d44ba454a76613e7a3fa45387f7)
2011-05-10 12:54:45 +02:00
David Boddie 82340de4c8 Doc: Fixed reference to a name in a table.
Task-number: QTBUG-18679
(cherry picked from commit a769192ef0393afa07c08a1672b45604fdf64be1)
2011-05-10 12:54:44 +02:00
Jens Bache-Wiig a5cfc446ed Fix progressbar animation on Vista
This fixes two issues.
- The indeterminate animation was sometimes incorrectly disabled
  when value was 0
- The progress animation was incorrectly stopped when progress
  bars were disabled

Task-number: QTBUG-10957
Reviewed-by: richard
(cherry picked from commit 05e46b93ccb2334ec3722cf1205058f778d11458)
2011-05-10 12:54:44 +02:00
Jonathan Liu d001733c24 QTabWidget/Win: do not add content margin when documentMode enabled
QTabWidget has 2 pixel bottom and right content margin. This removes the
margin to maximize the area available for content and improve
consistency with other Qt styles when documentMode is enabled.

Task-number: QTBUG-15769

Merge-request: 957
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
(cherry picked from commit 23dd5cb45547de167f5c2e78554e9c3013e59998)
2011-05-10 12:54:44 +02:00
Pierre Rossi 5346d77e8c QTableView: prevent QTableView from hanging when removing rows.
The problem was introduced in cd2afafb where we removed some code that
was meant to adjust the header's offset upon row removal.
The problem with this is that visualIndexAt() is likely to return -1 in
QHeaderView::paintEvent, which in turn will lead to calling paintSection
for each and every section.

Task-number: QTBUG-18551
Reviewed-by: Thierry
(cherry picked from commit d814e378987348ce2123d083b01ea6fb6c3e6bbf)
2011-05-10 12:54:44 +02:00
Jonathan Liu 55bfa460d2 QFileSystemModel: Handle QDir::NoDot and QDir::NoDotDot for setFilter
Add support for QDir::NoDot and QDir::NoDotDot for setFilter in
QFileSystemModel.

Task-number: QTBUG-14760
Reviewed-by: Frederik
(cherry picked from commit b60d82fd56897b1a1d3cc730172f71c27a497ede)
2011-05-10 12:54:44 +02:00
Frederik Gladhorn 2c7c8cf5d0 Don't crash when requesting text.
Sometimes during initialization the QAccessibleItemRow will
still be in an invalid state.

Reviewed-by: Jan-Arve
(cherry picked from commit 90b4cf4b1aa0f70a62118e200e76dc1dc57985cc)
2011-05-10 12:54:44 +02:00
Frederik Gladhorn 1422ce7ded Let QAccessibleButton::text return something even when not visible.
Buttons would not report their text when hidden, which is inconsistent.
Reviewed-by: Jan-Arve
(cherry picked from commit 1897ca20a343121422b354a7910814ddd37abd17)
2011-05-10 12:54:44 +02:00
Jan-Arve Sæther 75bec8093d Fixed regression where AT client did not always announce stuff properly.
This fixes a regression that was created by
75e478abdf336bbdc1b00e2ca4f5293d5455a0cb.
That broke accessibility on 64 bit windows, since lParam can both be
0x00000000fffffffc and  0xfffffffffffffffc.

However, MSDN explicitly says that lParam should be casted to a DWORD,
which would result in (an unsigned) 0xfffffffc in both cases. This can
then be compared to OBJID_CLIENT (defined to ((LONG)0xFFFFFFFC).

Reviewed-by: Prasanth Ullattil
(cherry picked from commit 504941bc50234c225f162192491815bc4d6c38cf)
2011-05-10 12:54:44 +02:00
Jens Bache-Wiig 45c8b242f3 Don't use inactive borders for spinbox on Mac
This was probably caused by the fact that the only spinbox
visible in the main control panel has an inactive frame border.
In XCode 4, however the spin buttons are generally attached
to an active lineedit frame, so we change the default for 4.8.

Reviewed-by: gabriel
(cherry picked from commit 6c9d808c5726893e9aa673ca8b0cbebae67f641c)
2011-05-10 12:54:43 +02:00
Richard Moe Gustavsen 8ab64530b3 Cocoa: respect QT_NO_EXCEPTION in color dialog
If the macro is set, we should not use cocoa exceptions either, as
this causes compile failures

Rev-By: jbache
(cherry picked from commit cdb5729d8e1ffc4a00b52d6d4bbee34a9820a193)
2011-05-10 12:54:43 +02:00
Frederik Gladhorn 0fbeed69a4 Make navigation in TabWidgets consistent.
navigate would not return the right index in the parent if the current
widget was not the visible one.

Reviewed-by: Jan-Arve
(cherry picked from commit fdeeaa9d61efea9cca783a1d4098ae505df24390)
2011-05-10 12:54:43 +02:00
Frederik Gladhorn d27fb341ec Fix text for checkable buttons, unit tests.
Return Check/Uncheck for checkable buttons.
Partially revive the buttons unit test.

Reviewed-by: Jan-Arve
(cherry picked from commit 6040eeebfb1ab3be3906295c373033cd5b5d9dc3)
2011-05-10 12:54:43 +02:00
Frederik Gladhorn a5e191de57 Window and Application fixes for accessibility.
Return app name instead of window title for root accessibility object.
Return Window as accessible type for the main window.

Reviewed-by: Jan-Arve
(cherry picked from commit 9a5b0d7a579572cd7e7faf869ab1a6684800f592)
2011-05-10 12:54:43 +02:00
Frederik Gladhorn 8f5b2faaac Call QAccessible::updateAccessibility when changing accessible name.
Reviewed-by: Jan-Arve
(cherry picked from commit e783275cfb71e7325472b3aea54e109a7a854bf7)
2011-05-10 12:54:43 +02:00
José Millán Soto ed8f1a09f8 QAccessibleTextEdit: Using x coordinate for calculate character width
Merge-request: 1148
Task-number: QTBUG-18233
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
(cherry picked from commit 6cd51aeec11e7a70ba560c350274d5a4bd43c9b9)
2011-05-10 12:54:43 +02:00
Stephen Kelly 3880eee2d0 Use the virtual API to clear a selection.
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Merge-request: 980
(cherry picked from commit e3cd651d92a9e550fe52360d1be6ae41d0f2ab85)
2011-05-10 12:54:43 +02:00
Jan-Arve Sæther 97952e918d Avoided calling updateAccessibility() from updateMicroFocus if the item was hidden
This had the following negative effect in qmlviewer:
- Every time the qmlviewer logged something to its QPlainTextEdit
  (regardless of if it was visible or not) it would call
  updateMicroFocus (because appending to QPlainTextEdit would move the
  cursor). The result was that the AT client got overloaded with
  accessibility state changes, and response time got really bad.
(cherry picked from commit ad50e45311cce712fbe35641cde973d616ff560d)

Reviewed-by: Frederik Gladhorn
(cherry picked from commit a825b3a9e6132842090e43fae85d2c6c61b2def6)
2011-05-10 12:35:52 +02:00
Jan-Arve Sæther 0154343608 Notify a11y framework of FocusChanges for QGraphicsObject
(cherry picked from commit 1b5cb7865eb8b48a2721f9b9c3ccd2fb25f8175d)

Reviewed-by: Frederik Gladhorn
(cherry picked from commit 9a02ad74693f1835745ec20798b353f7e62bcd5e)
2011-05-10 12:35:51 +02:00
Jan-Arve Sæther 26acac4052 Call updateAccessibility on the QGraphicsObject in updateMicroFocus
Since QGraphicsObjects now can be in the a11y hierarchy, we should
treat them just like we treat widgets.
(cherry picked from commit 860745a4713b29857d14571572504da71a2ca077)

Reviewed-by: Frederik Gladhorn
(cherry picked from commit 4687938fd03ed65306039af6b4e5e192ec8bf491)
2011-05-10 12:35:50 +02:00
Jan-Arve Sæther 5e8b377cb7 Fix updateAccessibility for QGraphicsObjects
If updateAccessibility is called on a QGraphicsObject, walk up and find
the closest ancestor widget with a HWND.
(cherry picked from commit d4291591dfb6a7b1f5c7d00879e8162e84d9ab1b)

Reviewed-by: Frederik Gladhorn
(cherry picked from commit 96406a7dd609e75340f7b4a05726c60c197786b8)
2011-05-10 12:35:49 +02:00
Jan-Arve Sæther 068545f2cd Make accessibility work on Windows with alien
This means that there will be no implicit conversion to windows handles
anymore!
Enabler for making QML accessible on windows.
(cherry picked from commit a3ac7deb5dfe48c5fdd0e170c20b6852c3bb41de)

Reviewed-by: Frederik Gladhorn
(cherry picked from commit d289e54f2d2aa066cb383d8c8249bd7594bdf7b0)
2011-05-10 12:35:48 +02:00
Qt Continuous Integration System fde6021547 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Rename QGlyphs -> QGlyphRun
2011-05-10 20:26:33 +10:00
Eskil Abrahamsen Blomfeldt 051ef6f294 Rename QGlyphs -> QGlyphRun
API clean-up for QGlyphRun:
1. QGlyphs -> QGlyphRun
2. QGlyphRun's font()/setFont() -> rawFont()/setRawFont()
3. QPainter::drawGlyphs() -> drawGlyphRun()
4. QTextLayout and QTextFragment's glyphs() -> glyphRuns()

Reviewed-by: Jiang Jiang
(cherry picked from commit 84ef364302728b68d2d29ea9c4ccbec32c7bb115)
2011-05-10 12:20:13 +02:00
Samuel Rødal d1622207ba Prevent crash in QWidgetWindow::handleMouseEvent().
Don't use mapFrom() between widgets not in the same hierarchy.
2011-05-10 12:09:40 +02:00
Qt Continuous Integration System c5d63be839 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  Respect capacity in QVector::append().
2011-05-10 20:07:16 +10:00
Qt Continuous Integration System 41e14a4175 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Add internal documentation for QUnifiedToolbarSurface.
  Fix the autotest condition.
  Change the repaint() call to an update().
  Fix the update() autotest for raster.
  Change the repaint() to an update().
  Set the default graphics system to raster.
  Revert "Switch the default graphics system to raster on Mac."
  Fix an race condition in the auto test.
  Fix an race condition in the auto test.
  Fix a race condition when the main window is being destructed.
  Switch the default graphics system to raster on Mac.
2011-05-10 19:50:02 +10:00
Fabien Freling a35b2d58d9 Add internal documentation for QUnifiedToolbarSurface.
This document is aimed for developers. This is why
it is directly written in the header file. This is
not part of the public API.

Reviewed-by: Richard Moe Gustavsen
(cherry picked from commit 891b6ac7236d21b69bdb54b00051422cee004059)
2011-05-10 11:45:42 +02:00
Fabien Freling daf3795461 Change the repaint() call to an update().
In show_sys(), if we directly call repaint() this
will triggers too many UpdateRequest events.
This fixes the qwidget autotest
"compatibilityChildInsertedEvents".

Reviewed-by: Richard Moe Gustavsen
(cherry picked from commit 747962e6ec20a59b7e2ed67c5cd685258f199a86)
2011-05-10 11:45:33 +02:00
Fabien Freling 5839b221a0 Change the repaint() to an update().
Forcing to repaint might cause a recursive
repaint. Since there is no apparent reason to
directly repaint, we just call update().

Reviewed-by: Richard Moe Gustavsen
(cherry picked from commit 244fedd484b022881b906b1bc794d5af19d02843)
2011-05-10 11:45:30 +02:00
Fabien Freling 68857f9045 Set the default graphics system to raster.
This change is specific to Mac OS X/Cocoa.

Reviewed-by: Lars Knoll
(cherry picked from commit 2c2026df66f237b7313397dd74f6bc3212b94596)
2011-05-10 11:45:19 +02:00
Fabien Freling 8ac73771c6 Revert "Switch the default graphics system to raster on Mac."
This reverts commit a5d40fd3814ab7c8e865912c03a918bfd5994998.

We have to fix the regressions due to the raster engine before putting
it by default.
(cherry picked from commit 3197fe2af911673c6291db0102e90a0d7f6ae926)
2011-05-10 11:44:57 +02:00
Fabien Freling e27baeff28 Fix a race condition when the main window is being destructed.
During the destructor of QWidget, we delete the
layout. If the layout is not set to 0 afterwards,
a check on the layout might turn true, but any access
will end with a segfault.

Reviewed-by: João Abecasis
(cherry picked from commit abc5a632942c23496d75c49b3b0b4a674cdafdf8)
2011-05-10 11:44:34 +02:00
Liang Qi 44b7877c87 Respect capacity in QVector::append().
Fix a bug in QVector::append(), it should use the capacity for new size,
when it is implicit shared and capacity is bigger than the new size.

Autotest included.

Task-number: QTBUG-11763
Reviewed-by: joao
Reviewed-by: Olivier Goffart
2011-05-10 11:38:53 +02:00
Fabien Freling e7de0c2e12 Switch the default graphics system to raster on Mac.
Reviewed-by: Lars Knoll
(cherry picked from commit a5d40fd3814ab7c8e865912c03a918bfd5994998)
2011-05-10 11:34:15 +02:00
Qt Continuous Integration System d0343621a3 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Remove const from QPlatformClipboard::mimeData().
2011-05-10 18:17:06 +10:00
Laszlo Agocs edd56d531b Remove const from QPlatformClipboard::mimeData().
Most implementations will anyway do non-const operations in there, the
change avoids the need for const_cast or mutable.
2011-05-10 10:09:44 +02:00
Qt Continuous Integration System 94021247c1 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Retrieve the actual data in the Wayland clipboard only when requested.
2011-05-10 17:54:22 +10:00
Qt Continuous Integration System 7f9c32bd39 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix QDefaultAnimationDriver
2011-05-10 17:24:49 +10:00
Laszlo Agocs 04549f2eed Retrieve the actual data in the Wayland clipboard only when requested. 2011-05-10 09:17:55 +02:00
Alan Alpert 8fb5928469 Fix QDefaultAnimationDriver
Animation drivers were changed to used signals instead of virtual
functions, but the default animation driver was left behind.

Reviewed-by: Michael Brasser
2011-05-10 13:43:58 +10:00
Qt Continuous Integration System 4bcd4c08fe Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Turned on private headers for some plugins.
2011-05-10 01:16:35 +10:00
Jonni Rainisto 7eef0de091 Turned on private headers for some plugins.
Reviewed-by: axis
2011-05-09 16:55:33 +02:00
Samuel Rødal 5dc3a46a2a Wayland plugin compile fixes. 2011-05-09 14:08:19 +02:00
Qt Continuous Integration System e8aceff195 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-earth-staging:
  Skip test on MacOS due to problems with corewlan plugin
  Fix QNetworkConfigurationManager usage outside main thread first
  Update QTBUG-17223 for Qt 4.8
  fix tst_qnetworkreply::httpProxyCommands autotest
  Send User-Agent from the network request in http proxy CONNECT command
  Add autotests for configuration dependent network proxies
  Fix QNetworkReplyImpl error handling
  Enable per network configuration proxy settings in QNetworkAccessManager
  Allow a network configuration to be included in a proxy query
  Fix error handling in write for socks socket engine
2011-05-09 21:54:18 +10:00
Shane Kearns a590e77fd8 Fix QNetworkConfigurationManager usage outside main thread first
QNetworkConfigurationManager creates the engines loaded from plugins
as objects in the main thread.
If a QNetworkConfigurationManager instance is created in a worker thread
without any instance previously existing in the main thread, then it
is uninitialised until the main thread has run.
This causes allConfigurations() to return an empty list if called
immediately after instantiation, for example.

This fix initialises the plugins using blocking queued connections,
which causes the worker thread to block until the initialisation function
has been called in the context of the main thread.
Deadlock is possible if the main thread is for some reason waiting on the
worker thread, but it will not deadlock on QNetworkConfigurationManager's
mutex.
If this is a problem for an application, it should use
QNetworkConfigurationManager from the main thread first to preload the
plugins.

Task-number: QTBUG-18795
Task-number: QTBUG-18799
Reviewed-by: Cristiano Di Flora
2011-05-09 13:50:02 +02:00
Samuel Rødal df677b9653 Exports for QtWidgets to link. 2011-05-09 13:40:34 +02:00
Shane Kearns 7dd503c62f Update QTBUG-17223 for Qt 4.8
In Qt 4.7, http network requests are assigned to http connection
channels before connecting the channel.
In Qt 4.8, channels are connected "blind" as this gives a performance
improvement in certain circumstances.

On the assumption that User-Agent should be the same for all the
requests being sent to the server in a given burst, we use the first
queued request to set the user agent for a http proxy.

Task-number: QTBUG-17223
Reviewed-by: Markus Goetz
Reviewed-by: Martin Petersson
2011-05-09 13:16:41 +02:00
Shane Kearns e01faeb5c7 Send User-Agent from the network request in http proxy CONNECT command
Some proxies can discriminate based on the User-Agent when sent a
CONNECT command for establishing a HTTPS connection.
With this change, if the User-Agent header is set in the QNetworkRequest
then it will be passed to the http socket engine for use in the connect
command sent to the proxy.
As before, "Mozilla/5.0" will be used by default when no user agent
has been set.

Task-number: QTBUG-17223
Reviewed-by: Markus Goetz
2011-05-09 13:16:13 +02:00
Shane Kearns a342ba933a Fix QNetworkReplyImpl error handling
The backend was never started when compiled without bearer management,
now it is.
Now emits the error signal in case of startup errors which would leave
the state machine hanging. Previously it just printed a warning.

Reviewed-by: Peter Hartmann
2011-05-09 13:15:23 +02:00
Shane Kearns 1ad3814a56 Enable per network configuration proxy settings in QNetworkAccessManager
Delayed the resolving of the proxy until the backend is being started.
This is because the proxy settings are not known until after
QNetworkAccessManager has brought the network online using
QNetworkSession.
On Nokia's symbian3 phones, the default network configuration is a
service network containing a list of access points in priority order.
For a typical user, this will include one or more WLAN networks and a
cellular network - each of which can have different proxy settings.

Task-number: QTBUG-18618
Reviewed-by: Peter Hartmann
2011-05-09 13:14:46 +02:00
Shane Kearns f0f55cd59f Allow a network configuration to be included in a proxy query
When Qt is compiled with bearer management support, the network
configuration can be included as a parameter in QNetworkProxyQuery.

This allows QNetworkProxyFactory::systemProxyForQuery to get the right
proxy setting for a specific network. For example a mobile phone could
have network configurations for home WLAN, work WLAN and 3G data
access points, each with different proxy configurations.

Task-number: QTBUG-18618
Reviewed-by: Peter Hartmann
2011-05-09 13:14:37 +02:00
Shane Kearns 279883fdf1 Fix error handling in write for socks socket engine
When socks socket engine calls the write function of the native socket
engine, it now propagates errors to the abstract socket.

Task-number: QTBUG-18713
Reviewed-by: Markus Goetz
2011-05-09 13:14:10 +02:00
Qt Continuous Integration System 38644abb0d Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Added Wayland selection support.
2011-05-09 19:17:15 +10:00
Laszlo Agocs 4973c2669a Added Wayland selection support. 2011-05-09 11:11:14 +02:00
Qt Continuous Integration System 3d8f39857f Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Add qglobal.h exports for QtLocation & QtSensors
2011-05-09 15:43:57 +10:00
Alex 82444f5dff Add qglobal.h exports for QtLocation & QtSensors
Plus the QtLocation configure options

Reviewed-By: Lincoln Ramsay <lincoln.ramsay@nokia.com>
2011-05-09 15:34:25 +10:00
Lars Knoll a4e8d92148 build fixes 2011-05-08 10:36:27 +02:00
Lars Knoll bcc93009d7 some more compile fixes 2011-05-08 09:47:51 +02:00
Lars Knoll 6773a7f870 small fixes 2011-05-08 09:12:17 +02:00
Lars Knoll 2de87f9879 fix includes 2011-05-08 09:03:28 +02:00
Qt Continuous Integration System cf1440a6e3 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Install private headers into the correct location
2011-05-08 13:17:33 +10:00
Marius Storm-Olsen ab53743198 Install private headers into the correct location
The privates need to be under <MODULE NAME>/ since we use
    #include <ModuleName/private/header_p.h>
in many places
2011-05-07 22:10:54 -05:00
Lars Knoll 9474f82f8a QTDIR/src compiles again 2011-05-07 22:31:45 +02:00
Lars Knoll 3d30c0fb60 fix remaining includes
Made easy thanks to the fixqt4includes
script
2011-05-07 22:22:31 +02:00
Lars Knoll aa566e7297 some build fixes 2011-05-07 21:24:37 +02:00
Lars Knoll 7ff96330ed get QtWidgets to link
some more changes, mainly exporting methods from
QtGui to get QtWidgets to link.
2011-05-07 20:56:32 +02:00
Lars Knoll d3d078aa4b fix class mapping
Many classes now live in QtWidgets.
2011-05-07 19:48:27 +02:00
Lars Knoll 94c0628d22 fix includes 2011-05-07 19:36:54 +02:00
Lars Knoll e135c811bb move to the right location 2011-05-07 15:04:58 +02:00
Lars Knoll 1ae5e36baf make the new QtGui compile 2011-05-07 10:29:28 +02:00
Lars Knoll f67b8df3eb library split 2011-05-07 00:02:01 +02:00
Lars Knoll 32ce4fe9e6 split up qguivariant into two files
Move everything that will end up in QtWidgets
into a qwidgetsvariant.cpp file. Currently
this is QIcon and QSizePolicy only.
2011-05-06 23:52:43 +02:00
Lars Knoll 7ff1d396e7 move QPalette into QtGui
also add QGuiApplication::palette() for the default
application palette.
2011-05-06 22:08:43 +02:00
Qt Continuous Integration System de47cd9b66 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix QRawFont::setPixelSize() on Mac
2011-05-07 00:05:46 +10:00
Eskil Abrahamsen Blomfeldt 4135b6b323 Fix QRawFont::setPixelSize() on Mac
When refactoring the setPixelSize() code of QRawFont, it was broken
on Mac. To avoid making the same mistake again, I've added a simple
autotest to check that the pixel size is actually set.

Reviewed-by: Jiang Jiang
(cherry picked from commit 821b8b540af491ce60d35bd84d3c91399ecc0d16)
2011-05-06 16:00:15 +02:00
Lars Knoll dcc2317f2b comment out references to QDragManager for now 2011-05-06 15:28:42 +02:00
Lars Knoll a752e52341 compile fixes 2011-05-06 15:28:42 +02:00
Samuel Rødal 72409addf2 Get rid of qt_qpa_set_cursor from QGuiApplication for now. 2011-05-06 12:45:11 +02:00
Samuel Rødal f9442d7c51 Fixed compilation of Wayland plugin. 2011-05-06 12:12:00 +02:00
Qt Continuous Integration System f15c1fff3f Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix QPainter::drawGlyphs() with non-affine transformation
2011-05-06 19:00:01 +10:00
Samuel Rødal acf56efdc7 Get rid of stale QWidget-stuff from QGuiApplication. 2011-05-06 10:56:32 +02:00
Eskil Abrahamsen Blomfeldt 80a230e221 Fix QPainter::drawGlyphs() with non-affine transformation
When the matrix has an non-affine transformation, the text will have to
be rendered using the default path-renderer. This means going through
the drawTextItem() path (since drawStaticText() has no support for those
transformations) and it also means not pre-transforming the coordinates,
since the default implementation of drawTextItem() supports
transformations.

Task-number: QTBUG-18214
Reviewed-by: Jiang Jiang
(cherry picked from commit 55446d104db77fc7994ab12352b1c08bb7b63346)
2011-05-06 10:44:49 +02:00
Olivier Goffart 3a76f74e88 Merge remote-tracking branch 'mainline/master' into earth 2011-05-06 09:54:24 +02:00
Friedemann Kleint ec88a76127 uic: Remove Q3Support.
Remove code and tests.
2011-05-06 09:32:09 +02:00
Jørgen Lind 1edc451057 Dont do doneCurrent in swapBuffers 2011-05-05 18:11:57 +02:00
Marius Storm-Olsen 022a528dfd compile openvg with private headers 2011-05-05 08:58:59 -05:00
Lars Knoll 41db1f3cb6 compile fixes 2011-05-05 15:56:15 +02:00
Lars Knoll 14a322318d compile fixes 2011-05-05 15:38:01 +02:00
Lars Knoll 3821d92366 remove qwidget dependencies from keymapper
Remove the QWidget dependencies from keymapper and
move it back into guikernel.
2011-05-05 14:58:04 +02:00
Lars Knoll 419ef5f126 move gesture event into qgesture.*
Since QGesture stays in QtWidgets for now, move
the event there as well.
2011-05-05 14:51:04 +02:00
Lars Knoll 73a99f3897 compile fixes 2011-05-05 14:19:52 +02:00
Taito Silvola c3ad797d8a QSslConfiguration documentation fix
setPeerVerifyMode() and peerVerifyMode() comments fix

Merge-request: 1220
Reviewed-by: Peter Hartmann
2011-05-05 14:16:30 +02:00
Lars Knoll 2bcd79e213 remove some more qapp dependencies 2011-05-05 14:07:23 +02:00
Lars Knoll 288d388496 special directory for stuff we want to move from widgets to gui
Create a special to_be_moved directory, that will contain files
that are to be moved from QtWidgets to QtGui. This will allow
us to do a first split of the libraries rather fast and we can
then start pulling in these classes one by one.
2011-05-05 14:02:45 +02:00
Jiang Jiang 1daf67042d Only enable design metrics for scalable fonts
Bitmap fonts don't have linear advance at all.

Reviewed-by: Eskil
(cherry picked from commit 111accbf9aaf95b052448ecb70937c61e9b59d66)
2011-05-05 13:39:11 +02:00
Jiang Jiang 05a1416be8 Add a way to retrieve CTFontRef from QFont
Since macFontID restricts to quint32, we have to return that in
QFont::handle.

Task-number: QTBUG-17890
Reviewed-by: Eskil
(cherry picked from commit c8f299b7e675c839b16d750cd2633a57cdd0526f)
2011-05-05 13:39:05 +02:00
Lars Knoll 326bd84c84 move some more files into proper places 2011-05-05 12:23:13 +02:00
Lars Knoll b220fcb1a8 remove some dependencies to QTextEdit
QSyntaxHighlighter is now free of dependencies to
QtWidgets.
QTextImageHandler still needs some work to get
the url resolving to work again.
2011-05-05 10:38:43 +02:00
Lars Knoll 7351a43560 remove some QApplication dependencies 2011-05-05 10:38:15 +02:00
Lars Knoll 22a6540326 QPixmapFilter will live in QtWidgets
The class is only used for QGraphicsEffect. When merging
QtOpenGL into Gui and Widgets, the GL nased pixmap
filters will also need to be moved into effects/ and
the pixmapFilter() method in QPaintEngineEx can get
removed.
2011-05-05 09:57:00 +02:00
Lars Knoll 4ece3fc24e remove OpenVG support
Qt5 will require OpenGL, so there's no need for
supporting OpenVG anymore.
2011-05-05 09:57:00 +02:00
Kent Hansen 1a2345ec19 Add Q_UNIMPLEMENTED() macro
(cherry picked from commit adce00979c30cc22d26ba43c15e0c7a3733b57ab)
2011-05-04 18:15:53 +02:00
Prasanth Ullattil af026f6fa4 Fix build error on Mac
To use the private headers, the .pro file should contain
QT += <module>-private

Reviewed-by: Olivier Goffart
2011-05-04 18:04:40 +02:00
Samuel Rødal 5c2282ffa3 XCB plugin compile fix. 2011-05-04 17:01:57 +02:00
Samuel Rødal 6229ef2dce Get rid of more QWidget / QApplication dependencies. 2011-05-04 16:59:33 +02:00
Paul Olav Tvete 3611f82975 Build fix 2011-05-04 16:55:48 +02:00
Lars Knoll d7b91f613d remove QWidget dependencies. 2011-05-04 16:39:05 +02:00
Friedemann Kleint 10a0cc3da2 BC cleanup in uitools.
Remove virtual functions obsoleted by new resource handling
in Qt Designer 4.4. Remove static hash of private objects
for formbuilder.
Requires fd61c9b24d27452df3eb478a81d7e7725fe6f5b4 in qttools.

Rubber-stamped-by: axis
2011-05-04 16:23:51 +02:00
Lars Knoll b22f3a086e separate QPrinter and QPrintDialog
Removed all dependencies QPrinter had on QPrintDialog.
2011-05-04 15:53:52 +02:00
Samuel Rødal 7196329d32 More QApplication prefixes changed. 2011-05-04 15:13:47 +02:00
Lars Knoll 08ba97f653 qdrawutil is for QtWidgets
the methods don't make sense for QML based apps
2011-05-04 15:15:21 +02:00
Samuel Rødal aa20a95f59 Use base-class prefix instead of QApplication:: where possible. 2011-05-04 15:03:45 +02:00
Samuel Rødal 7a0ae98978 Move some cursor handling to QGuiApplication from QApplication. 2011-05-04 14:58:26 +02:00
Lars Knoll 8c626b7079 that signal has moved to QGuiApplication 2011-05-04 14:58:52 +02:00
Lars Knoll fd84bc720a remove some unused code
QPaintDeviceRedirection is not being used any more.
Remove all code related to it.
2011-05-04 14:55:11 +02:00
Lars Knoll 100e074126 QStylePainter belongs in QtWidgets
Move it into the styles/ directory that will end up
in the QtWidgets library
2011-05-04 14:55:11 +02:00
Samuel Rødal 5c16bb8a12 Move KeyPlatform and currentPlatform() to QGuiApplicationPrivate. 2011-05-04 14:42:42 +02:00
Samuel Rødal e6af684ee4 Closing of popups in QWidgetWindow. 2011-05-04 14:35:36 +02:00
Samuel Rødal 4cc4cb3c51 Remove unused variable. 2011-05-04 14:35:36 +02:00
Lars Knoll bd8d12b7f6 move platform specific files out of the way
Keep the files as reference to implement the
lighthouse plugins, but move them away from
the main directory hierachy as they won't be
part of Qt5 in any case.
2011-05-04 14:39:19 +02:00
Peter Hartmann 33ce5392e8 HTTP cache backend: do not load resources that must be revalidated
The header field "Cache-Control: must-revalidate" is a strict
requirement for loading the resource from the server, and not reading it
from the cache without revalidating first. With this patch, PreferCache
will load such from the network instead of loading them from the cache,
and AlwaysCache will throw a ContentNotFound error.

Reviewed-by: Markus Goetz
Task-number: QTBUG-18983
2011-05-04 14:35:09 +02:00
Peter Hartmann 0c9f327102 HTTP reply: do not load resources from cache that must be revalidated
The header field "Cache-Control: must-revalidate" is a strict
requirement for loading the resource from the server, and not reading it
from the cache without revalidating first. With this patch, PreferCache
will load such from the network instead of loading them from the cache,
and AlwaysCache will throw a ContentNotFound error.

Reviewed-by: Markus Goetz
Task-number: QTBUG-18983
2011-05-04 14:34:34 +02:00
Jiang Jiang edf55f7d50 Remove QFontEngineFT::loadGlyphMetrics
It is no longer used and was accidentally merged back in.

Reviewed-by: Eskil
(cherry picked from commit 782535ac548c582542bd1c17207e288e816870a8)
2011-05-04 14:34:31 +02:00
Jiang Jiang 2a8d50ed6a Add required font metrics functions to QRawFont
Reviewed-by: Eskil
(cherry picked from commit 2c8df8bfb679885c3cbd2ee02f5e4053fdd554c2)
2011-05-04 14:34:21 +02:00
Peter Hartmann 863de43dca QNetworkCookie: allow spaces in unquoted values
We should follow
http://tools.ietf.org/html/draft-ietf-httpstate-cookie-23 , which says
parse the value until reaching the next ';' or the end of the line.
Other cookie implementations allow spaces in unquoted values as well.

Reviewed-by: Martin Petersson
Task-number: QTBUG-18876
2011-05-04 14:20:46 +02:00
Samuel Rødal dc0f9f02a5 Implemented enter / leave events for QWidget. 2011-05-04 14:19:40 +02:00
Samuel Rødal 4e69052efc More fixes... 2011-05-04 13:57:06 +02:00
Samuel Rødal a8c1cf755f XCB plugin compile fix. 2011-05-04 13:28:35 +02:00
Samuel Rødal 9631f6314c Fix compilation of QtOpenGL. 2011-05-04 13:14:33 +02:00
Samuel Rødal f838dcc050 Improved handling of child windows.
Don't force-create QWindows until they're explicitly created or shown.
2011-05-04 13:14:29 +02:00
Lars Knoll 9ff98b92a1 forgot this file 2011-05-04 13:09:06 +02:00
Lars Knoll 3e8b53a46c moving some more files around. 2011-05-04 13:08:02 +02:00
Lars Knoll 401f078386 split kernel/ up according to the future library split
Create a guikernel/ directory that contains the files that'll go
into libQtGui. What remains in kernel/ will go into QtWidgets.
In addition to that image/, painting/ and text will end up
int QtGui.
2011-05-04 12:50:14 +02:00
Lars Knoll 004700532a remove constructor 2011-05-04 12:14:17 +02:00
Lars Knoll 1077edd108 Merge remote branch 'origin/master' into refactor 2011-05-04 12:04:43 +02:00
Lars Knoll 0e3823d30c remove dependency to QStyle::visualAlignment
The current position of the code in QGuiAppPrivate
is a bit messy, but we can later on consider
consolidating some of this in some helper
namespace.
2011-05-04 11:51:33 +02:00
Gunnar Sletta c41153e693 Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtbase-staging 2011-05-04 11:38:42 +02:00
Eskil Abrahamsen Blomfeldt 2e0003eda4 Include pixel size of font in exported HTML from QTextDocument
When you copy-pasted rich text in which the font size had been set
using setPixelSize() the font size would be mysteriously forgotten.
The pixel size property in QTextCharFormat was added ad hoc, and not
integrated in the HTML exporter.

Task-number: QT-4792
Reviewed-by: Gunnar
(cherry picked from commit 5aa5c2e2935c1829cc6965198968699f17c24ec0)
2011-05-04 11:20:59 +02:00
Lars Knoll b9798615b4 small cleanups 2011-05-04 11:06:54 +02:00
Samuel Rødal c418f5ce8d Proper sub-widget mouse grabbing in QWidgetWindow. 2011-05-04 10:42:54 +02:00
Samuel Rødal 07fef33d28 Get rid of warning in QPixmap::grabWidget(). 2011-05-04 10:40:20 +02:00
Samuel Rødal 3f3a950d6e Clean up some QWidget dependencies in gui/image. 2011-05-04 10:26:42 +02:00
Samuel Rødal 19822fa60c Get rid of QCustomRasterPaintDevice / QWS stuff in raster engine. 2011-05-04 10:13:43 +02:00
Gunnar Sletta 9c6347f245 Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtbase-staging 2011-05-04 10:08:23 +02:00
Samuel Rødal 8d5df33f9c Get rid of remaining QWidget dependencies in QPainter. 2011-05-04 10:02:56 +02:00
Samuel Rødal 862263b0ab Remove QWidget dependency in QPainter::initFrom(). 2011-05-04 10:02:56 +02:00
Samuel Rødal ea6c6d711b Get rid of unused window surfaces. 2011-05-04 10:02:56 +02:00
Gunnar Sletta a41265a09e Merge branch 'qtquick2' of scm.dev.nokia.troll.no:qt/qtbase-staging into qtquick2 2011-05-04 10:01:30 +02:00
Gunnar Sletta 539602d43a Make it possible for animation driver to specify the advance time delta 2011-05-04 10:00:42 +02:00
Lars Knoll 2e9fd1325f move keyboardInputLocale and keyboardInputDirection into QGuiApplication 2011-05-04 09:31:54 +02:00
Lars Knoll 526bc2bf78 less qapp includes 2011-05-04 09:18:55 +02:00
Eskil Abrahamsen Blomfeldt 5bf2f85953 Compile on Windows
The SPI_FONTSMOOTHINGCONTRAST macro is not defined everywhere. When
the code was refactored, the workaround for this was lost. This
resubmits the work-around to make it compile.

Reviewed-by: Samuel
(cherry picked from commit 4c3630c1fcd2b3008f540a8906a19c533604f36a)
2011-05-04 09:12:40 +02:00
Lars Knoll 492bbdefd3 Remove more QApp dependencies
platformIntegration() lives in QGuiApplication
QFont and QFontDatabase can live with QGuiApp only
as well.
2011-05-04 09:11:33 +02:00
Jørgen Lind d8c6e2773f Remove warnings
(cherry picked from commit 9625c564877414695a9706acf34bc8719018ef06)
2011-05-04 09:03:50 +02:00
Jørgen Lind 03aafc9d48 Fix Wayland plugin so it works with the wayland bind api
This is mostly for the xcomposite api, but also we needed to readEvents
after doing a connect
(cherry picked from commit 16c054125949b8f8ceec9626156d8790254a63a2)
2011-05-04 09:03:49 +02:00
Kristian Høgsberg 1e3e3980da wayland: Track wayland changes
Pass version number when creating proxies, use wl_ prefix when looking
up interfaces and drop wl_egl_display.
(cherry picked from commit c2adf9395214d711a3a40516c6c2afa64b3b4ca3)
2011-05-04 09:03:49 +02:00
con 95bbf56ff0 Support GL ES 2 with uikit.
For GL ES 2 teach the paint device about the fact that it
is doing rendering backed by a framebuffer object,
not a system framebuffer (which doesn't exist).
(cherry picked from commit 3b437a7706efbaaafdc4861393cbe21354cf4ee2)
2011-05-04 09:03:49 +02:00
Jørgen Lind 64fa65df74 Lighthouse: Fix virtual desktopwidget
(cherry picked from commit 69c759f5b84c2f6a44377e5f72cfe9d5bf7344c6)
2011-05-04 09:03:41 +02:00
Lars Knoll 54c9b1a80c even less QT3_SUPPORT
the new libQtGui should now be free of any
Qt3 related methods.
2011-05-03 22:51:17 +02:00
Lars Knoll 181df199d3 remove more QT3_SUPPORT code 2011-05-03 22:37:25 +02:00
Lars Knoll 52352c6c57 remove obsolete stuff
everything inside QT3_SUPPORT is gone in
gui/painting
2011-05-03 21:51:54 +02:00
Lars Knoll 34f712e79e remove postscript support from Qt
I really wanted to do this since many years
already! :)
2011-05-03 21:25:04 +02:00
Lars Knoll f169264b7b remove more QApplication dependencies 2011-05-03 21:14:05 +02:00
Lars Knoll 5df3d517b4 move layoutDirection from QApplication to QGuiApplication
The concept is needed in both QWidgets and QML,
so it has to be in QGuiApplication.
2011-05-03 21:06:20 +02:00
Lars Knoll 91d2b267f1 remove a few qapplication includes 2011-05-03 21:05:50 +02:00
Lars Knoll ac6878a2f1 rename qwindow_qpa to qwindow 2011-05-03 20:31:37 +02:00
Lars Knoll 5a91925514 QGuiApplication is not QPA specific
Rename files to reflect that QGuiApplication is
going to be used everywhere.
2011-05-03 20:31:37 +02:00
Eskil Abrahamsen Blomfeldt e443d88501 Support gamma correction of text on GL
If the SRGB framebuffer extension in GL is available, we can support
gamma correction of text with a gamma of 2.1. On Mac this is
sufficient for gamma correcting subpixel antialiased text. Gray
antialiasing should not be gamma corrected on Mac.

On Windows, the user can potentially set the gamma value to anything
between 1.0 and 2.2 (or something like that). We support anything
that resembles 1.0 closely enough by pushing the text out without
any correction (like before). We also support anything that resembles
2.1 (the gamma hardcoded in GL's SRGB extension) by turning on the
extension before blending the text. In between the two, we'll use
gray antialiasing to avoid differing too much from the raster engine
(which is our reference in this.)

For gray antialiasing on Windows, we use a constant gamma of 2.3 which
has been determined by experimentation. Since this is close enough to
2.1 we do gamma correction with SRGB extension.

The distance limit of 0.2 is determined by some experimentation.

Reviewed-by: Samuel
(cherry picked from commit 79ba7cceca5e4029876ace2121edd25b08ae14ce)
2011-05-03 16:50:01 +02:00
Markus Goetz 8e9aa019bb QNAM HTTP: Removes some comments 2011-05-03 16:47:11 +02:00
Markus Goetz 100b7565aa QNAM HTTP: More comments 2011-05-03 16:47:09 +02:00
Markus Goetz 9aa2feec0e QNAM HTTP: Implement abort() and close() 2011-05-03 16:47:07 +02:00
Markus Goetz 718657d8b2 QNAM HTTP: Comments 2011-05-03 16:47:05 +02:00
Markus Goetz ea4df8586e QNAM: Function re-ordering 2011-05-03 16:47:03 +02:00
Peter Hartmann 5fdd720425 HTTP caching documentation: add some comments 2011-05-03 16:43:58 +02:00
Peter Hartmann 04f2c4a7a7 Revert "HTTP caching internals: fix logic for PreferNetwork and PreferCache"
This reverts commit 11838861a23ace66307306cf9c96b3f1910e09a9.
2011-05-03 16:43:56 +02:00
Markus Goetz 6d3044db95 QNAM: Fix initialization order warnings 2011-05-03 16:43:54 +02:00
Markus Goetz b68f29720a QNAM: TODO comments for Qt 5 2011-05-03 16:43:52 +02:00
Markus Goetz 5b2b0a7b35 QNAM HTTP: Fix upload progress signal 2011-05-03 16:42:55 +02:00
Samuel Rødal ecd9c29a96 Wheel event forwarding. 2011-05-03 16:41:26 +02:00
Peter Hartmann a5562d345b HTTP caching internals: fix logic for PreferNetwork and PreferCache 2011-05-03 16:39:32 +02:00
Peter Hartmann 2aba57d58e HTTP Network Reply Impl: return earlier when resource loaded from cache 2011-05-03 16:39:30 +02:00
Peter Hartmann 7876177c0c HTTP Reply implementation: make cache validation method return bool 2011-05-03 16:39:28 +02:00
Peter Hartmann 76e04fdf3d cache: rename validateCache() to loadFromCacheIfAllowed() 2011-05-03 16:38:45 +02:00
Markus Goetz 43b6320a5a QNAM: Fix proxy code after refactoring 2011-05-03 16:34:58 +02:00
Peter Hartmann 0b7df28754 fix build 2011-05-03 16:34:56 +02:00
Markus Goetz a0beeac097 QNAM: Start new HTTP backend architecture 2011-05-03 16:34:54 +02:00
Markus Goetz f78640e5c2 QNAM: Copy files for new architecture 2011-05-03 16:34:52 +02:00
Markus Goetz be4d62d3b7 QNAM: Improve internal proxyAuthenticationRequired()
Make it independent from the backend architecture
to improve refactorability.

Reviewed-by: Peter Hartmann
2011-05-03 16:34:50 +02:00
Markus Goetz 856da3ee19 QNAM: Improve internal authenticationRequired()
Make it independant from the backend architecture
to improve refactorability.

Reviewed-by: Peter Hartmann
2011-05-03 16:34:48 +02:00
Lars Knoll 4c6a882e86 remove QApplication and QWidget dependencies in gui/image
The main place that'll still need work is QPixmap::fill(QWidget *)
and QPixmap::grabWidget()
2011-05-03 16:21:47 +02:00
Lars Knoll f1f5a80cfe remove QApplication dependencies in gui/image 2011-05-03 16:10:52 +02:00
Lars Knoll 2ce57e22d0 remove a unneeded reference to qbackingstore 2011-05-03 16:10:52 +02:00
Lars Knoll 075634945d remove the graphicssystem code paths.
QPA's platform integration layer replaces the
graphics system now.
2011-05-03 14:23:39 +02:00
Paul Olav Tvete 86f20c89af Track QPlatformGLContext API changes 2011-05-03 14:13:06 +02:00
Lars Knoll 3745e1bd79 reinstantiate a file that got removed by mistake
QPA was using a _qws.cpp file, that got removed by accident.
2011-05-03 13:32:59 +02:00
Lars Knoll 4ebc56f4bd remove a not required include. 2011-05-03 13:19:53 +02:00
Lars Knoll ea55f60426 split the HexString template class out of qstylehelper
The class is used in quite a few places and has no relation
to styles. Split it out into it's own file to remove a dependency
between Gui and Widgets.
2011-05-03 13:19:29 +02:00
Lars Knoll 806e026043 remove qapp dependency
graphicssystems are not relevant in any case with qpa, so
we simply use the fallback case.
2011-05-03 13:16:52 +02:00
Lars Knoll eba9bad431 QWS removal, part 2 2011-05-02 16:02:38 +02:00
Marius Storm-Olsen 1287361f64 Move private headers into versioned subdirectory
This will allow us to expose private headers in a controlled manner,
and ensure that they are not used by accident. This also means that
we internally will have to enable the private headers for the
modules we wish to use in the project.
2011-05-02 15:30:08 +02:00
Marius Storm-Olsen 6319779bed Add module.prf, and install MODULE_PRI for each module
Output warning if not present
2011-05-02 15:30:08 +02:00
Paul Olav Tvete 481cd6a6b5 Track API change in QPlatformNativeInterface
Reviewed-by: Samuel
2011-05-02 15:00:22 +02:00
Lars Knoll 88e39d8654 remove Qt/Embedded.
Everybody use Lighhouse instead :)
2011-05-02 13:45:38 +02:00
Martin Petersson 5aaa38c7ac QNetworkConfigurationManager: Fix network polling.
startPolling() is called by each engine, so before it would start
multiple singleshot timers. So I moved the timer to the class
and check if it has already been started before it is activated
again. So that we just use one timer.

Task-number: QTBUG-17219
Reviewed-by: Iiro Kause
Reviewed-by: Kranthi Kuntala
(cherry picked from commit 2506b86828ca8140c2f22d85a4378df40899b132)
2011-05-02 12:39:40 +02:00
Martin Petersson 5be54b220a QAbstractSocket: Fix waitForReadyRead infinite loop.
Make sure that waitForReadyRead times out if the read buffer is full.

Task-number: QTBUG-16123
Reviewed-by: Peter Hartmann
(cherry picked from commit 8d4cd52b6981a4e6deea7fdb77f56e40c4f3e6ba)
2011-05-02 12:39:12 +02:00
Martin Petersson e4b289c276 Fix compile warning on Windows
Reviewed-by: Prasanth Ullattil
(cherry picked from commit 800ad68e4f000e65b0a83ef1da2a29d595964156)
2011-05-02 12:38:48 +02:00
Samuel Rødal 59ded5cce4 Implemented close event for QWindow and QWidgetWindow. 2011-05-02 12:00:00 +02:00
Samuel Rødal 3edff16c87 Properly handle the expose event for QWindow. 2011-05-02 10:52:15 +02:00
Samuel Rødal 3086f2098e Set the window title even if it was set before calling create(). 2011-05-02 10:38:33 +02:00
Samuel Rødal 5daea69f74 Resizing support in QWidgetWindow. 2011-05-02 10:36:39 +02:00
Eskil Abrahamsen Blomfeldt ac4af55972 Make pixel size a qreal in QRawFont
The pixel size in the font engines is already a floating point value.
For maximum flexibility, we should expose this in the public API.

Task-number: QTBUG-18817
Reviewed-by: Jiang Jiang
(cherry picked from commit ac9e63b58533a3215106ed9da82cff3a3e3dda3a)
2011-05-02 10:13:32 +02:00
Dmitry Zelenkovsky f26c4ba80d Support more items for QTextCharFormat::VerticalAlignment enum for custom text objects.
* QTextCharFormat::AlignNormal - support text format descent, place text object bottom on (baseline - descent).
 * QTextCharFormat::AlignBottom - place text object bottom on baseline.
 * QTextCharFormat::AlignTop - Still not supported.
 * Any other vertical alignment is mapped QTextCharFormat::AlignBottom.

Add new enum AlignBaseline for custom inline objects to take into account font baseline.

Merge-request: 2578
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
(cherry picked from commit ee9455ed2a83084692d969c398ecb91bcd4fc33a)
2011-05-02 09:53:25 +02:00
Samuel Rødal af77656f15 Proper child delivery of mouse and key events. 2011-05-02 09:26:40 +02:00
Paul Olav Tvete a90d1b432c Make the wayland plugin compile 2011-04-29 17:07:06 +02:00
Paul Olav Tvete 6e2bbb58fd include file fix for wayland 2011-04-29 16:30:12 +02:00
Paul Olav Tvete 15d73f83bd Compile after latest change. 2011-04-29 16:30:12 +02:00
Samuel Rødal 57b7c82560 Add QWidgetWindow to bridge events from QWindow to QWidget.
Gets rid of QWidget dependencies in QWindow and QWindowSurface. Events
are not delivered to the correct child widget yet.
2011-04-29 15:46:07 +02:00
Paul Olav Tvete c1aa42e195 Minimal plugin works again. 2011-04-29 12:59:23 +02:00
Jiang Jiang 774527dd1e Use maximum ascent/descent/leading from fallback fonts in shaping
When shaping a QScriptItem with a multi font engine, currently we
only take the ascent/descent/leading from the primary (first) font
engine in that multi font engine, however, subsequent engines used
during shaping may have larger ascent/descent/leading, disregarding
them may cause clipping issues in some cases.

It's fixed by checking each font engine used in the shaping process
and take the maximum value instead of the first one. On ATSUI we
merely make it compile.

Task-number: QTBUG-16719
Reviewed-by: Eskil
(cherry picked from commit c501403cb5a0c9ec21b00e0c2f640ae85566e0cf)
2011-04-29 11:02:25 +02:00
Jiang Jiang bbbfc9b0eb Another ugly hack to make bidi cursor work with Core Text
If the text is wrapped with LRE/LRO/RLE/RLO override/embed marks,
Core Text in Mac OS X 10.5 doesn't produce an empty glyph at the
beginning of the glyphs (while it does in Mac OS X 10.6), thus
we need to prepend an empty glyph here, otherwise cursor position
calculation will consider the first two characters as a ligature
of the same glyph.

Reviewed-by: Eskil
(cherry picked from commit a36ac6c34bafa801c2c30d76f59e4a3594efc4d5)
2011-04-29 11:02:24 +02:00
Jiang Jiang d64460fffb Make sure layoutData exist before checking for string direction
Otherwise accessing that through QTextEngine::alignLine may cause crash.

Reviewed-by: Samuel Rødal
(cherry picked from commit dcdb62c3d1a76d951c4b65bc1b1bd930e2ad14ec)
2011-04-29 11:02:24 +02:00
Jiang Jiang 044e7602ae Take leading space width into account for painting and selection
When painting horizontally centered RTL text and selection with
trailing spaces, we need to take that space width into account
because line.textAdvance doesn't include it.

Task-number: QTBUG-18612
Reviewed-by: Eskil
(cherry picked from commit 224226727f07e8940e0d3131fe7587b11cc4a6ca)
2011-04-29 11:02:24 +02:00
Jiang Jiang d623257584 Remove extra comma at the end of enum list
It fails compilerwarnings test.

Reviewed-by: TrustMe
(cherry picked from commit 1e847c00dcf4948b8892d0a552576e1d3ea554b9)
2011-04-29 11:02:24 +02:00
Jiang Jiang 0d32728af2 Don't transform glyph positions for Core Graphics paint engine
Since it already transformed text positions based on transform matrix
on QPainter.

Reviewed-by: Eskil
(cherry picked from commit b86c9120710bf1481df5f6541618169a82fd65b8)
2011-04-29 11:02:24 +02:00
Jiang Jiang a7b6f4c8a5 Turn on HarfBuzz support for Mac/Cocoa
It's possible to enable HarfBuzz text layout on Mac by either:

- Set QT_ENABLE_HARFBUZZ environment variable when running a Qt
  app.

- configure with -harfbuzz to build Qt, then HarfBuzz support
  will be turned on by default.

HarfBuzz will only be used when the font explicitly requested
is supported by HarfBuzz (aka. TrueType/OpenType font), other
fonts (AAT fonts) will still be handled by Core Text.

Using HarfBuzz for text layout will hopefully solve most tricky
complex text shaping bugs on Mac.

Task-number: QTBUG-17728
Reviewed-by: Eskil
2011-04-29 11:02:23 +02:00
Jiang Jiang 0f7cba14f6 Support visual cursor movement for BIDI text
Bidi input can in some contexts be more intuitive if the cursor
works in visual way: pressing left arrow key always make cursor
move one character to the left regardless the language of text,
pressing right arrow key always make cursor move to the right.
It is also the behavior of Mac OS X. Based on the above reason
and requests from Symbian we implemented this support for visual
movement in BIDI text. 3 public properties are added to
QTextDocument, QTextLayout and QLineEdit respectively:

- QTextDocument::defaultCursorMoveStyle can be used to control
  the cursor behavior in all widgets based on QTextDocument,
  like QTextEdit, QPlainTextEdit, etc. When set to QTextCursor::
  Visual, it will enable visual movement for all the cursors in
  the corresponding text edit. Default is QTextCursor::Logical.

- QTextLayout::cursorMoveStyle is used for low-level cursor
  manipulation. When set to Visual, it will enable visual movement
  behavior for all the cursor related methods, including cursorToX,
  xToCursor and drawCursor. Default is Logical.

- QLineEdit::cursorMoveStyle is used to control cursor movement
  behavior in QLineEdit. Default is Logical.:

Task-number: QTBUG-13859
Reviewed-by: Eskil
(cherry picked from commit c480dd641f5d22d1ee72cb27bf39e24c6df65658)
2011-04-29 11:02:23 +02:00
Eskil Abrahamsen Blomfeldt e99aa8b20c Make sure QFont's resolve mask is copied on compilers with C++0x support
The QFont consists of a d pointer and a resolve mask, and they should
both be copied in the assignment operator.

Task-number: QTBUG-18921
Done-by: Friedemann Kleint
(cherry picked from commit cb5e526c6023237c36aac3446a0a18288f39f3a9)
2011-04-29 10:12:27 +02:00
Jiang Jiang 8c90fb22c4 Fix glyph position issue with fallback fonts
Task-number: QTBUG-18933
Reviewed-by: Eskil
(cherry picked from commit 18fcbf7ae41504324cd453ba9b9655f3e94f6495)
2011-04-29 10:09:13 +02:00
Samuel Rødal 7dda80e1d0 Key and wheel events. 2011-04-29 09:33:50 +02:00
Eskil Abrahamsen Blomfeldt b2db259a32 Fix crash in raster on X11 when text contains unsupported characters
We would assume the font engine was a FT engine and do a static cast
here, which would cause a crash if the box engine was in use instead.

Task-number: QTBUG-17443
Reviewed-by: Samuel
(cherry picked from commit c9c54682bcd23598ac7a8db3b10e9f18c978e268)
2011-04-29 09:05:26 +02:00
Eskil Abrahamsen Blomfeldt 544babaaf9 doc: Minor cleanup in QGlyphs docs
Just a minor clean-up in the QGlyphs docs. Mainly to try to trigger
CI.

Reviewed-by: TrustMe
(cherry picked from commit 774b5b8c6a627fc90fb7382bc907db5d2e8193bf)
2011-04-29 08:55:03 +02:00
Eskil Abrahamsen Blomfeldt 064d54b2b0 doc: Simplify language in QGlyphs docs
Mainly to trigger CI.

Reviewed-by: TrustMe
(cherry picked from commit 1a1683c2d57debbb3e7f3ae6001eb2c8685dca02)
2011-04-29 08:54:41 +02:00
Samuel Rødal b68d0688fe Add resize event support to QWindow.
(cherry picked from commit 12b4e7e5a2b18cdd23f540821e1f2785f62b0b9a)
2011-04-28 15:40:01 +02:00
Samuel Rødal bbee0db8f9 Preliminary QWindow event delivery.
(cherry picked from commit 28a09e668a8125cff680ab9f1e7256e7e4e34158)
2011-04-28 15:39:52 +02:00
Jørgen Lind 290573425c QApplication: Baseclass fixup
(cherry picked from commit 5bbdf65632feed1a2e3f30e97bcdd47950f2b8d4)
2011-04-28 15:39:49 +02:00
Jørgen Lind 9f14dc661e Font
(cherry picked from commit 050925ccac957dea3d4e138babdd7aa93925dffc)
2011-04-28 15:39:46 +02:00
Jørgen Lind 9b8759284b clipboard
(cherry picked from commit 3f5c0e26e0f8b6876c3fb4d3822df49c748b2eea)
2011-04-28 15:39:44 +02:00
Samuel Rødal 0d12e17d25 QGuiApplication refactor in progress.
Things are a bit broken now... At least wiggly runs :)
(cherry picked from commit 6cdcf395ffe1e051d109a45ecd71141173a4a4c0)
2011-04-28 15:39:41 +02:00
Jørgen Lind dd34255948 Fix QWindow::destroy
(cherry picked from commit 00cd7aa93f916772b22c6137293c7127fe5a33b8)
2011-04-28 15:39:38 +02:00
Jørgen Lind dc897ca7d9 Lazy init of QWindow
(cherry picked from commit a2c884b6d2fcc77f6aa5e7aaa0aa329f5bef0bbd)
2011-04-28 15:39:36 +02:00
Jørgen Lind d04aee22e7 Added a visible state to QWindow
(cherry picked from commit 6cd96d1921af9740bf92405ae3adf466140f8923)
2011-04-28 15:39:33 +02:00
Jørgen Lind 2a8189035f Add isWindow type to QObject
(cherry picked from commit 77f08730b4cdb23b43471b2b29ece59e159103d7)
2011-04-28 15:39:30 +02:00
Jørgen Lind d72a994a06 For QWindow we need topLevelExtra to be created when we have
native widgets
(cherry picked from commit 247088f8fe929d55832f48af3da6f7e5e80cf8a4)
2011-04-28 15:39:28 +02:00
Jørgen Lind d8784df713 use QObject parent logic when setting parent for QWindow
(cherry picked from commit 2be9fdb4b58accea4078654efed49a50acf6c74d)
2011-04-28 15:39:25 +02:00
Jørgen Lind 54ab99d5e2 Fix compile warnings
(cherry picked from commit e7e856403f32af3e75958c0a8ab68dc37d28df83)
2011-04-28 15:39:23 +02:00
Jørgen Lind 4eb1543337 Lighthouse: use maybetopdata instead of creating topdata for all
widgets
(cherry picked from commit 873764aa3cfbbd87bbbb4f3224a7807d46a16fc7)
2011-04-28 15:39:20 +02:00
Samuel Rødal 45272d5e45 Get rid of QWindow::WindowType and clean up Qt::WindowFlags instead.
(cherry picked from commit 72176bf2a490d2f831d53a66a0987213efa60935)
2011-04-28 15:39:03 +02:00
Samuel Rødal 96b872506a Don't create a platform window if we already have one.
(cherry picked from commit c4dea497adc36a0be840a51c9b98177f1f4b65b2)
2011-04-28 15:39:00 +02:00
Jørgen Lind 02d44966ba Add proper parent logic for qwidget
(cherry picked from commit 98118fb729c39083718c220383fff462ba8eaebd)
2011-04-28 15:38:57 +02:00
Jørgen Lind 61c6f64872 Dont call QPlatformGLContext::makeCurrent from subclass
(cherry picked from commit fc0a6ab220ab97b8f6acf90bf04b46de513a4d96)
2011-04-28 15:38:54 +02:00
Samuel Rødal ef77e8b651 Added QWindowContext and got wiggly up and running with xcb.
(cherry picked from commit c980e4ef4ebc7699a6c3a7529d3f08ebafc21ffe)
2011-04-28 15:38:51 +02:00
Jørgen Lind fbef41167a Make QtGui compile again....
Comment out stuff in QWidget::create_sys
(cherry picked from commit 1bbc6a6bb2bf1175080e7a5ba6834ff642fd47ab)
2011-04-28 15:38:48 +02:00
Samuel Rødal 25028e3b14 QPlatformWindowFormat -> QWindowFormat fixes.
(cherry picked from commit 4c2eba33ca0433386fa1273fb1bc14adb852d9ac)
2011-04-28 15:38:46 +02:00
Samuel Rødal 864a2dfa9b QWindow implementation fixes.
(cherry picked from commit 2682cb6bd76a89c8d4ae81b0dd4a77abbf987c24)
2011-04-28 15:38:43 +02:00
Samuel Rødal dffc816f49 Make QWindowFormat in QWindow a setter and not a constructor argument.
(cherry picked from commit 61e0c55dd0c82031cf5cd021bf3f3537ee91b4a8)
2011-04-28 15:38:41 +02:00
Samuel Rødal 6d28965b10 Move WindowType to QWindow.
(cherry picked from commit cfa7dc87bc962bd0f3a43a464723d74d87f997e2)
2011-04-28 15:38:38 +02:00
Jørgen Lind 498f938f2d Just some more on QWindow. Nothing works
(cherry picked from commit 3acf7aa979630a57791e2a039b1b7b0b85b0aac8)
2011-04-28 15:38:35 +02:00
Samuel Rødal fee009bcf9 WIP Qt 5 API.
(cherry picked from commit ad12d5babcdc2bad3f2c0fb9fd352ab79c197aa1)
2011-04-28 15:36:28 +02:00
Eskil Abrahamsen Blomfeldt 07fa0ccfc4 Make QtQuick2 compile on QPA
Moved the logic to set pixel size into the font engines to avoid
making the platform plugin interface too complex, and added a function
in QPA to make an isolated font engine based on font data. Currently
none of the QPA back-ends supports it, but it compiles and spits out
a warning if you try to create a QRawFont from data there. This isn't
used in QtQuick2 anyway.

Reviewed-by: Jiang Jiang
2011-04-28 11:01:04 +02:00
axis 9e57cd5e6a Merged master into qtquick2. 2011-04-27 14:34:19 +02:00
Qt by Nokia eae8fb8599 Initial import from qtquick2.
Branched from the monolithic repo, Qt qtquick2 branch, at commit
a4a585d2ee907746682846ae6e8a48e19deef469
2011-04-27 14:33:44 +02:00
Prasanth Ullattil 055a45e61d Fix the target for QtUiTools debug on Mac 2011-04-27 12:06:04 +02:00
axis 2e1af58417 Introduced the QT.<module>.plugins variable to module profiles. 2011-04-27 12:06:02 +02:00
axis afa1807c40 Added QT.<module>.imports support to module profiles. 2011-04-27 12:06:00 +02:00
Prasanth Ullattil d7ce3d25bc Avoid recursively including the same arch.pri file 2011-04-27 12:05:57 +02:00
Prasanth Ullattil 3bfa70fef9 Include headers.pri from the last path in MODULE_INCLUDES 2011-04-27 12:05:55 +02:00
axis 95137041ab Use correct DESTDIR for UiTools. 2011-04-27 12:05:52 +02:00
Liang Qi 80473d3c2c Move uitools from QtTools to QtBase 2011-04-27 12:05:52 +02:00
Marius Storm-Olsen 82bf3bd775 Make each module refer to its own bin/
Since modules cannot rely on QtCore having a build directory, nor
can they build the applications directly into $$[QT_INSTALL_BINS]
each module needs their own bin/. Add this path to each module's
pri file, so others can use their applications
2011-04-27 12:05:51 +02:00
axis 12207a855f Made the internal support for Qt3Support in QtGui compile. 2011-04-27 12:05:50 +02:00
axis 6036305fb0 Extended module profiles.
Each module now sets the QT_CONFIG variable itself.
2011-04-27 12:05:50 +02:00
Marius Storm-Olsen 4b3498e940 Add hardcoded qclass_lib_map.h based on 4.8
This is only until UIC/Designer handles this properly
2011-04-27 12:05:49 +02:00
Liang Qi 817232ee94 Move QtSvg into a separate repository 2011-04-27 12:05:49 +02:00
Liang Qi 6d8ffc2cbb Add the private_includes path to the modules .pri file 2011-04-27 12:05:48 +02:00
Marius Storm-Olsen 997f87bfcf Add the source path to the modules .pri file 2011-04-27 12:05:48 +02:00
Liang Qi 8f9b949c64 Remove the hardcode QT_CONFIG in those pri files. 2011-04-27 12:05:47 +02:00
Marius Storm-Olsen 68d7b61d48 Make modules compile without hardcoded paths 2011-04-27 12:05:47 +02:00
Marius Storm-Olsen 78797cc7e9 Make qt.prf use new qt_module.pri structure for QT variable
This change requires the new resolve_depends(var, prefix) function in qmake.
2011-04-27 12:05:46 +02:00
Marius Storm-Olsen 00c5f39081 Add module specific pris, and make syncqt create fwd includes
The module specific pris define the modules
    name
    version
    dependencies
    include paths
    lib paths
    additional CONFIGs and DEFINES
They are located in the modules source directory, with fwd
includes created in QtBase/mkspecs/modules build directory.
The pris use
    QT_MODULE_INCLUDE_BASE
    QT_MODULE_LIB_BASE
to specify the locations for includes and libs. These paths
are normally based on
    QT_INSTALL_HEADERS
    QT_INSTALL_LIBS
for installed modules, but overridden to the module's build
directory by syncqt for the fwd included pris.
The path of the pris must be specified in the sync.profile
for syncqt to create the fwding pris in QtBase.
2011-04-27 12:05:46 +02:00
Marius Storm-Olsen f6d0b71700 Some changes for qtbase 2011-04-27 12:05:44 +02:00
Qt by Nokia 38be0d1383 Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
Qt Git wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:

http://qt.gitorious.org/qt/pages/GitIntroductionWithQt

If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.

Branched from the monolithic repo, Qt master branch, at commit
896db169ea224deb96c59ce8af800d019de63f12
2011-04-27 12:05:43 +02:00