summaryrefslogtreecommitdiffstats
path: root/src/gui/text
Commit message (Collapse)AuthorAgeFilesLines
* Implement QFontMetrics::inFont(uint) which takes UCS-4 encoded charEskil Abrahamsen Blomfeldt2010-08-062-1/+33
| | | | | | | | | Support unicode characters which are not representable in 16 bits in QFontMetrics::inFont() to enable font selection algorithms for unicode ranges that require surrogates. Task-number: QTBUG-12638 Reviewed-by: Simon Hausmann
* Remove obsolete code & workarounds for unsupported versions of MS Visual C++miniak2010-08-032-12/+0
| | | | | | | The minimum supported version of MS Visual C++ 2003, which is _MSC_VER 1310. Merge-request: 756 Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
* Add QTextFragment::glyphs() accessorEskil Abrahamsen Blomfeldt2010-08-024-4/+46
| | | | | | | | Add a function to retrieve fonts, glyph indexes and positions needed to visualize the text in a QTextFragment to allow converting the text of a QTextDocument to QGlyphs objects. Reviewed-by: Simon Hausmann
* Minor optimizationSimon Hausmann2010-07-301-1/+1
| | | | | | Make internal qpf2 font tag array read-only. Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2010-07-289-27/+49
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qapplication.cpp tests/auto/qfileinfo/tst_qfileinfo.cpp tools/qdoc3/test/assistant.qdocconf tools/qdoc3/test/designer.qdocconf tools/qdoc3/test/linguist.qdocconf tools/qdoc3/test/qmake.qdocconf tools/qdoc3/test/qt-build-docs.qdocconf tools/qdoc3/test/qt.qdocconf
| * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-07-212-4/+2
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Use aligned load for the blending of RGB32 over RGB32 tst_moc: workaround gcc bug. Some more change to the changelog Fix compilation with QT_NO_GRAPHICSVIEW Updates changes-4.7.0 Fixes the Oracle nchar bug when NLS_CHARSET is different with NLS_NCHAR_CHARSET. Add a missing file in the config.test for SSE 4.2 Remove the masking when computing qAlpha() Add support for more vector instructions on x86 Workaround gcc bug, disable test with old version of gcc Do not crash due to a infinite recursion when using voiceover on MacOS doc: Fix qdoc errors for text related files QGraphicsItem: Animation leaves drawing artifacts when clipping is used. moc: Slot with complex template default value does not compile
| | * doc: Fix qdoc errors for text related filesEskil Abrahamsen Blomfeldt2010-07-202-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | QTextBlock::layoutDirection() doesn't exist, and the QStaticText constructor no longer takes a size argument. Task-number: QTBUG-12072 Reviewed-by: Fabien Freling
| * | Merge branch 'raptorConfigurePatches' into 4.7-s60axis2010-07-211-2/+0
| |\ \ | | |/ | |/| | | | | | | | | | Conflicts: configure src/sql/drivers/drivers.pri
| | * Fixed QT_NO_FREETYPE define.axis2010-07-211-2/+0
| | | | | | | | | | | | | | | | | | | | | This define is also used by the OpenVG module, and therefore needs to be defined everywhere. RevBy: Jason Barron
| * | Remove qMemCopy() usage from all .cpp files of Qt itself.Robin Burchell2010-07-183-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | This is (supposedly) more efficient as the compiler can optimise it to a builtin, per Thiago. Merge-request: 2430 Reviewed-by: Andreas Kling <andreas.kling@nokia.com>
| * | Merge remote branch 'origin/4.7' into 4.7-from-4.6Rohan McGovern2010-07-174-9/+34
| |\ \ | | | | | | | | | | | | | | | | Conflicts: tests/auto/qtexttable/tst_qtexttable.cpp
| | * \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-07-161-1/+1
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix RightBearing confusion in text layout fixes, improvements for various docs and example code Fixed debugger's evaluation of dynamic properties in context Allow test to pass on smaller screens (eg. 480 high). Minor animation doc improvement
| | | * | Fix RightBearing confusion in text layoutmae2010-07-161-1/+1
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | Negative RightBearing was wrongly taken into account when calculating the line wrap Reviewed-by: Eskil Abrahamsen Blomfeldt
| | * | Fix an Assert in QTextTablePierre Rossi2010-07-141-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was caused by the fragment id being inserted in front of a cell spanning over several rows instead of the next logical cell (or fragment_end) in the cells structure. Task-number: QTBUG-11282 Reviewed-by: Simon Hausmann
| | * | Revert "Fix an Assert in QTextTable"Aaron McCarthy2010-07-141-24/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b2a4c7f0142a48f60e7ec4fc5866917e3da8b7c3. Unit test tst_qtexttable::QTBUG11282_insertBeforeMergedEnding fails on mac and Linux, reverting for now.
| | * | Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7Martin Smith2010-07-131-4/+24
| | |\ \
| | | * | Fix an Assert in QTextTablePierre Rossi2010-07-131-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was caused by the fragment id being inserted in front of a cell spanning over several rows instead of the next logical cell (or fragment_end) in the cells structure. Task-number: QTBUG-11282 Reviewed-by: Simon Hausmann
| | * | | doc: Fixed several qdoc warnings.Martin Smith2010-07-131-3/+3
| | |/ /
| | * | Fixing merge conflicts.Martin Smith2010-07-136-27/+46
| | |\ \ | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge branch '4.7-upstream' into 4.7 Conflicts: doc/src/declarative/advtutorial.qdoc src/declarative/graphicsitems/qdeclarativeloader.cpp src/declarative/graphicsitems/qdeclarativetextedit.cpp src/declarative/qml/qdeclarativeengine.cpp src/declarative/util/qdeclarativexmllistmodel.cpp
| | * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-07-101-1/+6
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (59 commits) Doc: Cleaning style and adding support for Creator Add NTLMv2 authentication support to QAuthenticator. QIODPLB: Sync behavior of ungetBlock() and ungetChar() QFileIconProvider: Load icons on demand. Doc: fixing offline style Fix handling of SSL certificates with wildcard domain names Doc: fixing examples link doc: Fixed several qdoc warnings. doc: Fixed several qdoc warnings. SSL library loading: load system libs only once Revert "SSL backend: load libraries for certificates only once" doc: Fixed several qdoc warnings. doc: Fixed several qdoc warnings. doc: Fixed several qdoc warnings. doc: Fixed several qdoc warnings. doc: Fixed several qdoc warnings. Doc: Adding support for Qt Creator style doc: Fixed last of the declarative/QML qdoc warnings. qdoc: Marked some missing declarative properties and functions as \internal. qhelpgenerator: Fix namespace syntax checking. ...
| | | * | doc: Fixed several qdoc warnings.Martin Smith2010-07-091-1/+6
| | | | |
| * | | | Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Thiago Macieira2010-07-151-3/+4
| |\ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: bin/syncqt src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebCore/bridge/qt/qt_instance.cpp src/3rdparty/webkit/WebCore/bridge/qt/qt_runtime.h src/3rdparty/webkit/WebCore/page/FrameView.cpp src/3rdparty/webkit/WebCore/page/FrameView.h src/3rdparty/webkit/WebCore/platform/ScrollView.cpp src/3rdparty/webkit/WebCore/platform/ScrollView.h src/corelib/plugin/quuid.cpp src/gui/dialogs/qfontdialog.cpp src/multimedia/audio/qaudiodevicefactory.cpp src/opengl/qgl.cpp src/openvg/qpaintengine_vg.cpp tests/auto/qxmlquery/tst_qxmlquery.cpp
| | * | | Fix crash when removing columns in merged rowEskil Abrahamsen Blomfeldt2010-07-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change 4b709b41f5a7ae8dc6e537b644158f5201ce0a98 tried to make sure that rows with merged cells would not be completely removed, as this would cause a crash. However, when removing just a few columns from a merged cell, the span of the cell should be reduced by the number of columns removed. The "touched" guard would cause the span to be decreased a maximum of one time, regardless of how many columns were removed, leaving the table in an invalid state, as the column count would be smaller than the span of the cell. This would assert later on. To avoid this, we only guard against removal, not against decreasing the span. Task-number: QTBUG-11646 Reviewed-by: Thomas Zander
* | | | | Merge remote branch 'origin/master' into qt-master-from-4.7Thiago Macieira2010-07-151-10/+31
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/opengl/qgl_p.h
| * | | | | Support RTL text in QGlyphsEskil Abrahamsen Blomfeldt2010-07-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RTL text would be positioned wrong with QGlyphs, as we would not correctly detect the direction of the text and pass it into getGlyphPositions(). The bidi analysis is the same as in the QTextLine::draw() method. Reviewed-by: Kim
| * | | | | Support text decoration in QPainter::drawGlyphs()Eskil Abrahamsen Blomfeldt2010-07-141-9/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to support text decorations (overline, underline and strikeout) in QPainter::drawGlyphs(), we need to call drawTextItemDecoration() from this function. To support this, it has been generalized to no longer require a QTextItemInt. We also need to propagate the decoration attributes of the font from QTextLayout to QGlyphs, since this is not part of the QFontEngine. Task-number: QTBUG-12122 Reviewed-by: Kim
* | | | | | Merge remote branch 'origin/4.7' into qt-master-from-4.7Thiago Macieira2010-07-1514-31/+83
|\ \ \ \ \ \ | |/ / / / / |/| / / / / | |/ / / / | | | | | Conflicts: src/gui/kernel/qapplication.h
| * | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2010-07-121-1/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Minor modifications and optimizations to the Symbian HW glyph cache. Convert to new EGL API. Don't invert glyphs for the default VG font cache on Symbian. Move QVGFontGlyphCache from source file into a separate header Ensure glyphs are upright instead of upside-down. Enable cross-process glyph cache for OpenVG graphics system on Symbian. Factor out RSgImage -> VGImage conversion to separate function. Add new file for Symbian specific VG stuff and add Symbian glyph cache. Move QVGFontGlyphCache from source file into a separate header Make cacheGlyphs() function (and the destructor) virtual.
| | * | | | Enable cross-process glyph cache for OpenVG graphics system on Symbian.Jason Barron2010-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces a specialized OpenVG font cache for the Symbian platform. By using RGlyphDataIterator we can create a VGImage to store inside a VGFont without having to upload our own glyph image. This works by utilizing RSgImage which can be used to share handles to graphics memory across processes thus allowing glyph images to be shared by multiple processes and reducing graphics memory usage. Reviewed-by: Alessandro Portale
| | * | | | Add new file for Symbian specific VG stuff and add Symbian glyph cache.Jason Barron2010-07-121-0/+1
| | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Factor out the Symbian specific bits of QVGPixmapData into a separate file and introduce our subclassed implementation of the VG font cache. Also make our font cache a friend of the S60 font engine because the cache needs to access the CFont member to create the glyph image. Reviewed-by: Alessandro Portale
| * | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-07-105-26/+44
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (65 commits) Fix QTextDocument::markContentsDirty() Replace 4.6 in all .qdocconf files Resetting bindings through debugger interface Fix crash with invalid role indexes Make test pass and fix docs following removal of SpringFollow Remove autotests of depracted element SmoothedFollow doc improvements Clean up at the end of each test. Improve test reliability. Fix crash Follow -> Behavior Added some documentation to spring animation Fix spring animation Update QtDeclarative def files Fix exponential behavior of QTextCursor::removeSelectedText Optimization: change signal/slot to function call Don't show warning for attempts to load pixmaps asynchronously Remove Image::pixmap property. QML applications should use Update QmlChanges.txt Don't double delete cancelled pixmap cache requests ...
| | * | | Fix QTextDocument::markContentsDirty()mae2010-07-091-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function markContentsDirty(from,length) is documented to inform the document that it needs to lay out again the part from from to from + length. Trouble was that the function was implemented using beginEditBlock()/endEditBlock(), which has the negative side effect that it does increase the document's revision number and emits all sorts of contentChanged() signals. This did not matter from the one case where Qt uses the method itself in QSyntaxHighlighter, because here a private flag inContentsChange avoided the issue. Without the change, we cannot implement semantic syntax highlighting in creator without expensive extra selections or triggering a full rehighlight via QSyntaxHighlighter. Done-with: Roberto Raggi Reviewed-by: Roberto Raggi
| | * | | Fix crashmae2010-07-082-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Got introduced with change f62f6effab8d1551d8e5e5843dc478addee96de1 Reviewed-by: Roberto Raggi
| | * | | Fix exponential behavior of QTextCursor::removeSelectedTextmae2010-07-082-3/+16
| | | | | | | | | | | | | | | | | | | | This is an improved version of 62db6c18c7f1f60819783ed5e1340e9fc09e072e
| | * | | Revert "Fix exponential behavior of QTextCursor::removeSelectedText"Michael Brasser2010-07-072-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 62db6c18c7f1f60819783ed5e1340e9fc09e072e, which introduced a regression in tst_qtextpiecetable::checkDocumentChanged
| | * | | Fix performance of QTextDocumentPrivate::adjustDocumentChangesAndCursorsChristian Kamm2010-07-064-21/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the changedCursors list grew large, the function used to spend an extraordinate amount of time in QList::contains. The fix removes the changedCursors list outright and replaces it with a flag in QTextCursorPrivate. Done-with: mae
| | * | | Fix exponential behavior of QTextCursor::removeSelectedTextmae2010-07-022-0/+8
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | removeSelectedText adjusts all other cursors for every fragment and block which gets removed. This becomes (for reasons yet to be understood) exponential with loads of cursors (something creator has for the semantic highlighting). Done-with: Roberto Raggi Reviewed-by: Simon Hausmann
| * | | Add three new style-hints to QFont to match CSS' generic font familiesTor Arne Vestbø2010-07-086-1/+34
| |/ / | | | | | | | | | | | | | | | | | | | | | The defaults were chosen to match major web browsers. See: http://xhva.net/log/?p=160 Reviewed-by: Simon Hausmann
| * | Made -graphicssystem trace work with Qt::TextBypassShaping flag.Samuel Rødal2010-06-292-3/+3
| | | | | | | | | | | | | | | | | | The QPaintBuffer gets the text from the text item in order to stream it. Reviewed-by: Jocelyn Turcotte
* | | Make QFontEngineGlyphCache explicitly sharedEskil Abrahamsen Blomfeldt2010-07-123-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFontEngine will delete its glyph cache (and if it's a GL engine, its texture) when the font engine dies. The font engine can die when the QFontCache decides to clean it up, e.g. based on the trigger of a timer. To make it possible to use the glyph cache elsewhere, without interference by the font cache, it has been made explicitly shared. Reviewed-by: Kim
* | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-07-092-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (37 commits) Small fix in iteviews for sizeHintForColumn/Row Incorrect assertion in item views Track the GL DCs we use across different threads under Windows. Add copyright header Avoid static local QHash Remove explicit 'virtual' specifiers to conform to Qt coding standard Use Q_ASSERT_X() rather than Q_ASSERT(!"message") idiom Add eglnullws QScreen driver Fixes the double spinbox not updating geometry when suffix is changed Made QGL2GradientCache thread safe. Add QItemSelectionRange::operator<() Don't call GetDC() nedlessly. Make QScriptAnalysis fit in two bytes again QGLPixelBuffer should not rely on temporary QGLWidgets. Initialize pex. Remove warning. Fix the tests for the internal GL resource system. Rework how QGLTextureGlyphCache makes use of the resource system. The group pointer should no longer be a part of the 64 bit int. Enable glyph uploads from a thread in the X11 font engine. ...
| * \ \ Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-07-082-2/+2
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (34 commits) Add copyright header Avoid static local QHash Remove explicit 'virtual' specifiers to conform to Qt coding standard Use Q_ASSERT_X() rather than Q_ASSERT(!"message") idiom Add eglnullws QScreen driver Fixes the double spinbox not updating geometry when suffix is changed Made QGL2GradientCache thread safe. Add QItemSelectionRange::operator<() Don't call GetDC() nedlessly. Make QScriptAnalysis fit in two bytes again QGLPixelBuffer should not rely on temporary QGLWidgets. Initialize pex. Remove warning. Fix the tests for the internal GL resource system. Rework how QGLTextureGlyphCache makes use of the resource system. The group pointer should no longer be a part of the 64 bit int. Enable glyph uploads from a thread in the X11 font engine. Make qt_pixmap_serial thread-safe. Clean up debug output. Clarification regarding the WA_X11InitThreads flag. ...
| | * | | Make QScriptAnalysis fit in two bytes againEskil Abrahamsen Blomfeldt2010-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the size of the "flags" variable was increased, the bit field was expanded to be three bytes. Since the "script" variable does not use its full eight bits, we reduce it by one to compensate. Reviewed-by: Simon Hausmann
| | * | | Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-07-061-1/+1
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (24 commits) QGLPixelBuffer should not rely on temporary QGLWidgets. Initialize pex. Remove warning. Fix the tests for the internal GL resource system. Rework how QGLTextureGlyphCache makes use of the resource system. The group pointer should no longer be a part of the 64 bit int. Enable glyph uploads from a thread in the X11 font engine. Make qt_pixmap_serial thread-safe. Clean up debug output. Clarification regarding the WA_X11InitThreads flag. Rework the internal GL resource system yet again. Check Qt::AA_X11InitThreads to determine pixmap usage in threads. Add an application attribute to control XInitThreads(). Unnecessary alloc + remove unused headers. QGLPixelBuffer should manage its own paint engines. Remove the DDS texture cache. Make the GL texture cache share textures between shared contexts. Redesigned how GL resource management works. Don't use the QGLSignalProxy to clean up the thread-local shaders. Simplify how the QGLEngineSharedShaders object is cleaned up. ...
| | | * | | Enable glyph uploads from a thread in the X11 font engine.Trond Kjernåsen2010-07-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Note: this doesn't necessarily mean it's thread-safe yet.
* | | | | | Optimize text layout.Michael Brasser2010-07-093-25/+71
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When laying out text, a significant amount of time was being spent querying for the font engine. This patch: * changes the layout to only query for the engine when a new script item is encountered. * adds an internal cache of the previous result to QTextEngine::fontEngine(). This catches the important case of multiline text with few font engine changes. With these changes layout costs are now approximately 60% of what they were previously, as measured by the text layout benchmarks. Reviewed-by: Eskil Abrahamsen Blomfeldt
* | | | | Make the QScriptLine bit field fit in 4 bytes again.Michael Brasser2010-07-061-2/+2
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | When "leadingIncluded" was introduced, "length" was mistakenly not decremented. This commit also changes a bool in QTextEngine::LayoutData to make it part of a 1 byte bit field. Reviewed-by: Eskil Abrahamsen Blomfeldt
* | | | Merge remote branch 'origin/4.7' into qt-master-from-4.7Thiago Macieira2010-07-0123-87/+268
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | | | | Conflicts: bin/syncqt src/gui/text/qtextlayout.cpp tools/assistant/tools/assistant/helpviewer_qwv.cpp tools/assistant/tools/assistant/helpviewer_qwv.h tools/configure/configureapp.cpp
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt into 4.7-s60axis2010-06-241-1/+1
| |\ \
| | * | Make QtFontFamily::symbol_checked a bitfield.Andreas Kling2010-06-241-1/+1
| | | | | | | | | | | | | | | | Reviewed-by: Benjamin Poulain <benjamin.poulain@nokia.com>