summaryrefslogtreecommitdiffstats
path: root/src/gui/text
Commit message (Collapse)AuthorAgeFilesLines
* Reduce the memory consumption of QtFontStyleBenjamin Poulain2010-06-161-4/+9
| | | | | | | | | | | | | | QtFontSize::pixelSize() was allocating 8 slots for QtFontSize while most fonts only require one. This patch add a special case for the first QtFontSize in order to reduce memory consumption. The size of QtFontSize in memory has also been reduced. Overall, the memory consumtion of QtFontStyle instances go down from 100kb to 10kb. Reviewed-by: Eskil Abrahamsen Blomfeldt
* Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-163-3/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (62 commits) Use native locale aware string comparison on Symbian. Temporary fix for regression in QSslCertificate::fromPath() doc: Added more DITA output to the XML generator Fix symbian building of TARGET with a slash Fix a minor typo in QAbstractItemModel's documentation. QXmlSchema: allow usage of xsd:all QSslSocket: fix build for MinGW and VS 2005 Fix symbian-abld build failure with bearer plugins remove certificate bundle make QSslSocket::systemCaCertificates() use system certs Adjusted RegExp in QSslCertificate::fromPath() Fix QSystemTrayIcon::supportsMessages() on Windows Use NIM_SETVERSION to get the latest behavior Cleanup obsolete stuff doc: Added DITA XML generator Fixed a broken merge. Changed the way we detect touch screen on Windows. Fixed error deploying qsymbianbearer.qtplugin on Symbian. Revert "Attempt to fix build failure on Symbian." Attempt to fix build failure on Symbian. ...
| * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-153-3/+11
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (62 commits) Use native locale aware string comparison on Symbian. Temporary fix for regression in QSslCertificate::fromPath() doc: Added more DITA output to the XML generator Fix symbian building of TARGET with a slash Fix a minor typo in QAbstractItemModel's documentation. QXmlSchema: allow usage of xsd:all QSslSocket: fix build for MinGW and VS 2005 Fix symbian-abld build failure with bearer plugins remove certificate bundle make QSslSocket::systemCaCertificates() use system certs Adjusted RegExp in QSslCertificate::fromPath() Fix QSystemTrayIcon::supportsMessages() on Windows Use NIM_SETVERSION to get the latest behavior Cleanup obsolete stuff doc: Added DITA XML generator Fixed a broken merge. Changed the way we detect touch screen on Windows. Fixed error deploying qsymbianbearer.qtplugin on Symbian. Revert "Attempt to fix build failure on Symbian." Attempt to fix build failure on Symbian. ...
| | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-153-3/+11
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (58 commits) Fix a minor typo in QAbstractItemModel's documentation. QXmlSchema: allow usage of xsd:all QSslSocket: fix build for MinGW and VS 2005 Fix symbian-abld build failure with bearer plugins remove certificate bundle make QSslSocket::systemCaCertificates() use system certs Adjusted RegExp in QSslCertificate::fromPath() Fix QSystemTrayIcon::supportsMessages() on Windows Use NIM_SETVERSION to get the latest behavior Cleanup obsolete stuff doc: Added DITA XML generator Fixed a broken merge. Changed the way we detect touch screen on Windows. Fixed error deploying qsymbianbearer.qtplugin on Symbian. Revert "Attempt to fix build failure on Symbian." Attempt to fix build failure on Symbian. Replaced redundant "!contains" scopes in "contains(A, B) {...} !contains(A, B) {...}" constructions with "else" Updated leading whitespace to make indentation more consistent Updated project files so it is now possible to use "-system-zlib" configuration option on Windows and Symbian platforms. make postgresql support sensitive to PSQL_LIBS ...
| | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-123-3/+11
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (55 commits) Fix symbian-abld build failure with bearer plugins remove certificate bundle make QSslSocket::systemCaCertificates() use system certs Adjusted RegExp in QSslCertificate::fromPath() Fix QSystemTrayIcon::supportsMessages() on Windows Use NIM_SETVERSION to get the latest behavior Cleanup obsolete stuff doc: Added DITA XML generator Fixed a broken merge. Changed the way we detect touch screen on Windows. Fixed error deploying qsymbianbearer.qtplugin on Symbian. Revert "Attempt to fix build failure on Symbian." Attempt to fix build failure on Symbian. Replaced redundant "!contains" scopes in "contains(A, B) {...} !contains(A, B) {...}" constructions with "else" Updated leading whitespace to make indentation more consistent Updated project files so it is now possible to use "-system-zlib" configuration option on Windows and Symbian platforms. make postgresql support sensitive to PSQL_LIBS support for cross building Qt for MinGW (win32-g++) on Unix use "win32-g++*" scope to match all MinGW makespecs Demos: Fix compilation with namespace. ...
| | | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-083-3/+12
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (29 commits) I10n: Update German translations for 4.7.0 Fix a freetype link failure. Fix configure test for DirectFB Split Symbian bearer plugin into three platform specfic plugins Doc: Fixed whitespace in the other configuration file for zh_CN. Doc: Fixed whitespace in the Simplified Chinese doc configuration. Unbreak Linux build when qendian.h is included before qglobal.h Revert accidental commit of irrelevant stuff. Silly mondays.. Unbreak Linux build when qendian.h is included before qglobal.h Fix QApplication/QWidget to really take ownership of input contexts Added setting a hotspot on standard gestures Fixed GestureOverride event delivery in GraphicsView. add check-ts target to auto-asses translation completeness qt_ja_JP.ts => qt_ja.ts Fix incorrect \since tag XQuery test suite (and others): remove p4 dependency add docu about pixmaps being invalidated on qapp destruction remove somewhat misleading warning about x11 pixmap leak Disabled item view items use incorrect background color Update the mkspec for linux-icc: don't use jump tables in shlibs ...
| | | | | * Fix a freetype link failure.Anders Bakken2010-06-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qfontengine_ft.cpp uses the function FT_GlyphSlot_Embolden but ftsynth.c (where the function is implmented) isn't compiled in when QT_CONFIG contains freetype. Merge-request: 672 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
| | | | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-082-2/+10
| | | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (25 commits) Doc: Fixed whitespace in the other configuration file for zh_CN. Doc: Fixed whitespace in the Simplified Chinese doc configuration. Unbreak Linux build when qendian.h is included before qglobal.h Revert accidental commit of irrelevant stuff. Silly mondays.. Unbreak Linux build when qendian.h is included before qglobal.h Fix QApplication/QWidget to really take ownership of input contexts Added setting a hotspot on standard gestures Fixed GestureOverride event delivery in GraphicsView. add check-ts target to auto-asses translation completeness qt_ja_JP.ts => qt_ja.ts Fix incorrect \since tag XQuery test suite (and others): remove p4 dependency add docu about pixmaps being invalidated on qapp destruction remove somewhat misleading warning about x11 pixmap leak Disabled item view items use incorrect background color Update the mkspec for linux-icc: don't use jump tables in shlibs Update the linux-icc mkspec * Add Japanese tutorial documents make corewlan more namespace friendly Add convenience constructor to QTextOption::Tab ...
| | | | | | * Fix incorrect \since tagSimon Hausmann2010-06-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the since added in 51fa7df978d71a366c95c732d6a8c2576690d63a from 4.6 to 4.7 Pointed out by Thorbjoern :) Reviewed-by: Trust me
| | | | | | * Add convenience constructor to QTextOption::TabDavid Faure2010-06-042-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: 1734 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* | | | | | | Fix regression, remove artificial emboldening of monospaced fontsEskil Abrahamsen Blomfeldt2010-06-151-1/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In change 889e13652e00ba64060e7b62ed3377ea04d44faa we employed usage of artificial emboldening of fonts with FreeType when a bold variant of the font does not exist. This introduced a regression for monospaced fonts, where the contract says that all glyphs must be the same width. Since the artificial emboldening algorithm does not support this contract, it has been turned off for monospaced fonts, reverting to the old behavior for this particular class of fonts. Task-number: QTBUG-11353 Reviewed-by: Paul
* | | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-06-153-6/+39
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fixed error reporting in grayraster and reduced default pool size. Add QTextOption API to QStaticText
| * | | | | Add QTextOption API to QStaticTextEskil Abrahamsen Blomfeldt2010-06-143-6/+39
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To allow more control over the layout process for a QStaticText, introduce a QTextOption API. This will allow you to, e.g., set an alignment for the text layout. Patch also contains a couple of bug fixes to make right alignment work correctly when you set a text width on the QStaticText. Task-number: QTBUG-9031 Reviewed-by: Samuel
* | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-06-123-0/+24
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (53 commits) ListView.onRemove animation is not played when the list has only one item. Move listview/itemlist.qml to a separate visualitemmodel example Make snapping work properly for highlight ranges > item size Fix test - sizeHint should not change after initial load. Also use Minor doc fixes Doc improvements, including snippet fixes, linking to examples, making Fix qmlviewer test failure on windows Do not keep flush timer running once no pixmaps are detached. Avoid recursive refill() in List/GridView Make snippet compile and pass license test, and add missing snippet file Remove accidentaly added characters. Update on color change. Update on color change. Add go button to webbrowser example. Remove 'XXX Experimental' from VisualItemModel/VisualDataModel and Document attached properties Add 'on' prefix to documentation of signals Stablize qmlviewer test Improve test stability. qmlviewer: ensure that only clicks on the current file list are handled. ...
| * | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-06-103-0/+24
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (42 commits) Update on color change. Update on color change. Add go button to webbrowser example. Remove 'XXX Experimental' from VisualItemModel/VisualDataModel and Document attached properties Add 'on' prefix to documentation of signals Stablize qmlviewer test Improve test stability. qmlviewer: ensure that only clicks on the current file list are handled. Doc improvements: move some example code to snippets, add screenshots, Move some example code into snippets/ and add other doc fixes Fix crash when changing ListView model with highlightRangeMode: ListView.StrictlyEnforceRange Fix GridView bounds behavior with snapping enabled. Small optimization when checking if MouseArea's onPressAndHold is Fix autotest. Fixed `nmake clean' breaking declarative imports on Windows. Fix drawing flicker on Qml Viewer startup Fix snake demo Add qmlmethod Item::childAt() to delarative item Cursor positioning in QTextDocument after undo() ...
| | * \ \ \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-06-083-0/+24
| | |\ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (25 commits) Fix snake demo Add qmlmethod Item::childAt() to delarative item Cursor positioning in QTextDocument after undo() Fix slow network access in qmlviewer (Windows) Don't layout multiple times when an ancestor becomes (in)visible. Add an example of animated item add/remove in ListView Add test for PropertyChanges with attached properties. Make declarative autotests compile on Symbian abld build system Accept enter key in the webbrower demo url input. Keep reported point/pixel size in sync. Remove unnecessary CloseSoftwareInputPanel events after TextEdit or TextInput has lost focus Ensure state operations assigned to the default state are triggered Add image example. Fix regression in input panel autotests Improve docs about Qml component case sensitivity. Add some performance tips to QML docs. Move QListModelInterface into util. Ensure ParticleMotionGravity always pulls in the right direction. Remove version ifdefs from Particles; only 4.7 is supported. Update docs for the runtime.orientation values ...
| | | * | | Cursor positioning in QTextDocument after undo()mae2010-06-083-0/+24
| | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTextDocument had no way of storing the cursor position from which a document change was initiated in the undo stack. That means that any undo operation would reposition the text cursor to the text position where the actual change happened. This works in many cases, but not always. In Qt Creator we have standard IDE shortcuts like e.g. Ctrl+Return for InsertLineBelowCurrentLine, which insert a newline at the end of the current line, not at the cursor position. Using undo there resulted in a surprisingly wrong cursor position. The problem becomes worse with more advanced refactoring and productivity tools (like snippets). The patch creates a synthetic CursorMoved undo item with the position which was current at the time of calling QTextCursor::beginEditBlock(), but only if necesary, i.e. only in those cases where the cursor would be positioned wrongly. Reviewed-by: Roberto Raggi
* | | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-06-1012-25/+87
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (26 commits) QWidget::childAt for masked child widgets doesn't work properly Optimized 90-, 180-, and 270- rotated blits in raster paint engine. Rename QLocale::isWrittenRightToLeft() to textDirection() Fixed some bugs in detection of keyboard directionality Add a isWrittenRightToLeft() method to QLocale. consistent handling of directionality in QTextLayout For an empty line edit the cursor position is depending on input language correctly initialize the bidi level in the text engine Use the textDirection() of blocks correctly. Add QTextBlock::textDirection() Make sure LayoutDirectionAuto is the default text direction LayoutDirectionAuto is the default layout direction for QPainter Correct BiDi behavior of QLineEdit The default text direction for QTextOption is Qt::LayoutDirectionAuto Handle setting the layoutDirection to Qt::LayoutDirectionAuto Introduce LayoutDirection Qt::LayoutDirectionAuto Fix QString::isRightToLeft() to conform with Unicode Bidi algorithm small optimisation QVarLenghtArray: Add typedefs for stl compatibility. prefer QElapsedTimer over QTime ...
| * | | | consistent handling of directionality in QTextLayoutLars Knoll2010-06-093-15/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure we use the same method to determine RTL/LTR for the layout everywhere. Task-number: Part of QT-3292 Reviewed-by: Simon Hausmann
| * | | | correctly initialize the bidi level in the text engineLars Knoll2010-06-091-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the text options doesn't specify the layout direction, determine it from the content. Reviewed-by: Simon Hausmann
| * | | | Use the textDirection() of blocks correctly.Lars Knoll2010-06-094-14/+7
| | | | | | | | | | | | | | | | | | | | | | | | | Task-number: Part of QT-3292 Reviewed-by: Simon Hausmann
| * | | | Add QTextBlock::textDirection()Lars Knoll2010-06-092-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The method returns the resolved text direction for the block. It implements P1-P3 of the Unicode bidi algorithm. Task-number: Part of Qt-3292 Reviewed-by: Simon Hausmann
| * | | | Make sure LayoutDirectionAuto is the default text directionLars Knoll2010-06-091-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTextFormat::intProperty requires a small change to ensure we return the right value for layoutDirection. No need to change QTextFormat::property, as an invalid QVariant will be returned if the layoutDirection is not explicitly set. Reviewed-by: Simon Hausmann
| * | | | The default text direction for QTextOption is Qt::LayoutDirectionAutoLars Knoll2010-06-092-3/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change is binary compatible, even though the changed bitfield is being accessed inline. The reason is that we extend by a bit that has previously been initialized to 0. bitordering will ensure that old code reads Qt::LayoutAuto as Qt::LeftToRight. Task-number: Part of QT-3292 Reviewed-by: Simon Hausmann
* | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-multimedia-staging into ↵Toby Tomkins2010-06-101-2/+2
|\ \ \ \ | |/ / / | | | | | | | | 4.7-multimedia
| * | | Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Olivier Goffart2010-06-081-2/+2
| |\ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp src/3rdparty/webkit/WebKit/qt/ChangeLog src/gui/painting/qpainter.cpp src/gui/painting/qtextureglyphcache.cpp src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h src/s60installs/bwins/QtGuiu.def src/s60installs/eabi/QtCoreu.def src/s60installs/eabi/QtGuiu.def src/s60installs/eabi/QtNetworku.def src/s60installs/eabi/QtOpenVGu.def tests/auto/qfontmetrics/tst_qfontmetrics.cpp tools/linguist/lupdate/main.cpp
| | * | Fix regression with Qt::AlignRight on monospaced text in QTextLayoutEskil Abrahamsen Blomfeldt2010-05-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For monospaced fonts, using the width (including the bearing) of the text to align it to the right hand side, will break alignment of columns of characters. To fix the problem, we go back to the old procedure, by using the advance of the text as basis of alignment instead. Done-by: thorbjorn Reviewed-by: Eskil
| | * | Back port change d85b149a5c7f3532f8e1a593a79298c9ae38a95fEskil Abrahamsen Blomfeldt2010-05-272-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes right alignment of monospaced text, which was a regression in Qt 4.6.0. Initially it was fixed in Qt 4.7 only, but the regression was later deemed severe enough to fix in 4.6.x as well. Task-number: QTBUG-8864 Reviewed-by: thorbjorn
* | | | Problems with missing symbols on QWS/AIX. Include freetype synthesis file ↵Toby Tomkins2010-06-101-0/+1
|/ / / | | | | | | | | | | | | | | | for cross-compilation. Reviewed-by: Rohan McGovern
* | | Retrieve proper glyph outlines from Symbian^4Alessandro Portale2010-06-072-2/+103
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Up until Symbian^4, the Symbian font Api does not provide access to the vector data of glyphs. In order to make QPainterPath::addText() and transformed text rendering work, Qt falls back to a workaound: Tracing the bitmap of a rasterized glyph. That is neither performant nor is the result of good quality. Symbian^4 will add Api that returns glyph outlines encoded as SVG paths. The code in this commit essentially parses the SVG path and returns a QPainterPath. The parsing part took some ideas from QSvg, and is implemented in a very reduced way. Task-number: QT-809 Reviewed-by: Aleksandar Sasha Babic
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-041-29/+29
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Add a note to the Linguist docs stating XLIFF 1.0 is not supported remove spurious empty lines in the linguist tools' output don't use qWarning() - or even qFatal()! - gratuitously. Styled item view backgrounds in Gtk+ Ensure that we only have one QLayoutStruct struct by renaming the other
| * \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-041-29/+29
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: remove spurious empty lines in the linguist tools' output don't use qWarning() - or even qFatal()! - gratuitously. Styled item view backgrounds in Gtk+ Ensure that we only have one QLayoutStruct struct by renaming the other
| | * | Ensure that we only have one QLayoutStruct struct by renaming the otherAndy Shaw2010-06-031-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since QTextDocumentLayout and QLayoutEngine code referred to their own instances of QLayoutStruct it was causing problems with the Visual Studio debugger as it kept confusing the two together. Reviewed-by: Eskil
* | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-06-042-3/+13
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: tst_qgraphicsitem: stabilize on X11 Added OpenGL 3.3 and 4.0 recognition to QGLFormat Fix compilation: disable -no-feature-* for bootstrapped QString: Fix severals bugs when comparing with QStringRef QProgressBar: make accessors const. Changes: add patch for artificial emboldening Added static version of QGLFramebufferObject::release(). Fix compilation on WinXP MinGW32; Add a new qconfig feature GESTURES
| * | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-06-032-3/+13
| |\ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fix compilation: disable -no-feature-* for bootstrapped QString: Fix severals bugs when comparing with QStringRef QProgressBar: make accessors const. Changes: add patch for artificial emboldening Added static version of QGLFramebufferObject::release(). Fix compilation on WinXP MinGW32; Add a new qconfig feature GESTURES
| | * | Changes: add patch for artificial emboldeningMike FABIAN2010-06-022-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Details: Fixes http://bugreports.qt.nokia.com/browse/QTBUG-10596 Patch taken from https://bugzilla.novell.com/show_bug.cgi?id=374066 https://bugzillafiles.novell.org/attachment.cgi?id=232442 and http://code.google.com/p/gentoo-taiwan/source/browse/trunk/x11-libs/qt-gui/files/synthetic-bold-4.5.diff?spec=svn298&r=298 and slightly edited. Moving the two lines concerning the underlining is unrelated to the emboldening but seems to make sense anyway, the comment "//underline metrics" seems to be misplaced before the "if (FT_IS_SCALABLE(face)) {| The hunk: @@ -789,6 +794,7 @@ QFontEngineFT::Glyph *QFontEngineFT::loadGlyphMetrics(QGlyphSet *set, uint glyph } FT_GlyphSlot slot = face->glyph; + if (embolden) FT_GlyphSlot_Embolden(slot); int left = slot->metrics.horiBearingX; int right = slot->metrics.horiBearingX + slot->metrics.width; int top = slot->metrics.horiBearingY; seems to be logical but it is apparently not used when running my test program, i.e. synthetic emboldening in my test program works even without this hunk. Merge-request: 635 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2010-06-033-35/+137
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Using Symbian's future font table getter Api Standalone Qml demos for Fluidlauncher Fixed S60_VERSION variable exists checks
| * | | Using Symbian's future font table getter ApiAlessandro Portale2010-06-033-35/+137
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt requires raw access to the font tables of used fonts, for a variety of reasons. Until Symbian^4, it is/was not possible to access the font tables of the fonts which are stored in Symbians Font and Bitmap Server. That's why Qt for Symbian's FontDataBase created an own TFontStore where it loaded in all installed fonts. While accessing the font tables via the own TFontStore it still uses the rasterization and metrics from the FBS, which has public Api for those things. However, loading all fonts in the own TFontStore for each Qt Gui process slows down the program startup. Symbian's future font table setter Api is very welcome and this implemets it's usage. This patch lets Qt use the new font API on Symbain^4. The font tables are retrieved via RFontTable. Task-number: QT-2746 Reviewed-by: Jason Barron
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-024-1/+34
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Some optimizations for QImage::load() fix setRawData() Fix QML crashes on the N900 doc: Added DITA XML generator Fix build failure on Symbian 3.1. Add the Qt::TextBypassShaping flag. QTextEngine: skip an unnecessary call to GetDeviceCaps on Windows. Add my 4.7.0 changes qdoc: Added DITA XML generator doc: Fixed confusing ownership issue. update Russian translations for Qt tools update Russian translation for Qt libraries QXmlSchema documentation correction doc: Changed last breadcrumb to not be a link. doc: Fixed reference to setSize(), which is in QRectF. QNetworkCookie: do not accept cookies with non-alNum domain QtDeclarative: Remove trailing commas in enums Doc: MonotonicClock is obviously monotonic
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into ↵Qt Continuous Integration System2010-06-014-1/+34
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Add the Qt::TextBypassShaping flag. QTextEngine: skip an unnecessary call to GetDeviceCaps on Windows. Add my 4.7.0 changes qdoc: Added DITA XML generator doc: Fixed confusing ownership issue. update Russian translations for Qt tools update Russian translation for Qt libraries QXmlSchema documentation correction doc: Changed last breadcrumb to not be a link. doc: Fixed reference to setSize(), which is in QRectF. QNetworkCookie: do not accept cookies with non-alNum domain QtDeclarative: Remove trailing commas in enums Doc: MonotonicClock is obviously monotonic
| | * | Add the Qt::TextBypassShaping flag.Jocelyn Turcotte2010-05-314-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows quick layouting especially with Windows fonts which contain heavy OpenType logic. On regular latin text the visual compromize is the loss of kerning, justification, capitalization, word spacing and letter spacing support. Reviewed-by: Simon Hausmann Reviewed-by: Eskil
| | * | QTextEngine: skip an unnecessary call to GetDeviceCaps on Windows.Jocelyn Turcotte2010-05-311-1/+1
| | | | | | | | | | | | | | | | Reviewed-by: Simon Hausmann
* | | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2010-06-013-7/+89
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Introduced getter and setter for the visual X cursor position. Defines whether the cursor should keep its current position.
| * | | | Introduced getter and setter for the visual X cursor position.Roberto Raggi2010-06-012-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The mechanism allows the cursor to move up and down on a visually straight line with proportional fonts, and to gently "jump" over short lines. Reviewed-by: mae
| * | | | Defines whether the cursor should keep its current position.Roberto Raggi2010-06-013-7/+51
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Defines whether the cursor should keep its position when text gets inserted at the current position of the cursor. For example, we don't want QTextCursor to extend the selection when inserting characters at the end of an extra selection representing a user-type but we do want the selection to grow when rewriting a region of code (e.g. when using our QuickFix engine). Task-number: QTBUG-11075 Reviewed-by: mae
* | | | Speed up QStaticText with affine transformation on GL2 engineEskil Abrahamsen Blomfeldt2010-06-012-17/+27
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the OpenGL2 paint engine supports transforming the prerendered glyphs rather than rasterizing the glyphs with the transformation applied, we don't need to recalculate the QStaticText layout whenever the transformation changes. This means that we can do fast animated transforms for QStaticText on this paint engine. A quick test yields something like 100x speed-up on Windows. This also give visually better results, as we previously would animate the hinting of the glyphs, thus causing jittering. The autotest has been updated to reflect the fact that drawText() and drawStaticText() now go through identical paths on GL, also when transforms are set on the painter. However, the scale was changed in one test, because it was so great that drawText() would fall back to paths. With QStaticText the idea is speed, so you'll get a poor, but fast result instead, which is better than tricking people. Reviewed-by: Samuel
* | | Revert behavior of QTextLayout::boundingRect() when line width is setEskil Abrahamsen Blomfeldt2010-05-311-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In change 817469519a784b1cc84f89cb3cb84f7560874f8e, there was a behavioral change which can cause regressions, as the bounding rect of the QTextLayout would previously return the set line width when this was greater than the calculated natural text width. We revert to this behavior to avoid regressions and add an autotest for it. When the line width is not set (and si.width is equal to QFIXED_MAX), then we will still return the natural text width. Reviewed-by: Lars
* | | Fix unreasonably large width of QTextLayout::boundingRect()Eskil Abrahamsen Blomfeldt2010-05-311-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | When no lineWidth is set on the QTextLine, the QScriptLine::width will be the maximum value that can be represented by QFixed, thus always overriding the width of the bounding rect. The lineWidth of the QTextLine should never be used as the width of the bounding rect, since it's not a calculated value. The real bounding rect is found by querying the natural text width. Task-number: QTBUG-11104 Reviewed-by: Rhys Weatherley
* | Replace memmove with memcpyEskil Abrahamsen Blomfeldt2010-05-271-6/+6
| | | | | | | | | | | | | | qMemCopy is faster than memmove, and there's no chance of overlapping source and destination memory in these cases. Reviewed-by: Samuel
* | Optimize initialization of QStaticTextEskil Abrahamsen Blomfeldt2010-05-272-81/+101
| | | | | | | | | | | | | | | | | | | | Since QStaticText would be created once and used often, not much thought was put into optimizing its initialization. For simplicity, the code would do two drawText() passes. Since this was an unnecessary overhead, the extra pass has been removed and replaced by memmoves instead. Initialization is now twice as fast. Reviewed-by: Samuel