Commit Graph

47535 Commits

Author SHA1 Message Date
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