summaryrefslogtreecommitdiffstats
path: root/src/gui/text
Commit message (Collapse)AuthorAgeFilesLines
...
| * Update licenseheader text in source filesJyri Tahtela2011-05-1396-1633/+1633
| | | | | | | | | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-05-131-1/+1
|\ \ | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Make TextEdit word selection more natural.
| * | Make TextEdit word selection more natural.Andrew den Exter2011-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTextControl will only extend the selection to a word if the cursor is directly over it which prevents the selection being extended if the mouse is dragged up or down a to a shorter line of text making it difficult to select multiple lines of text. Just disable that limitation when the TextEdit word selection is enabled. Change-Id: I3b9d1575c0141db8441197d740de94a90eacc077 Task-number: QTBUG-19230 Reviewed-by: Martin Jones
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-05-121-1/+3
|\ \ \ | |/ / | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Ensure the TextEdit cursor delegate is repositioned on mouse events.
| * | Ensure the TextEdit cursor delegate is repositioned on mouse events.Andrew den Exter2011-05-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update the micro focus when a mouse press changes the cursor position of a read only TextEdit. Change-Id: I11855037f7938b2cd23ac6ad165722b5289b4f46 Task-number: QTBUG-19109 Reviewed-by: Martin Jones
| * | Merge branch '4.7' of git://scm.dev.nokia.troll.no/qt/qt into 4.7Martin Jones2011-04-279-52/+76
| |\ \
* | | | memory leak fixTero Toivola2011-05-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If glyph is not found from glyphSet it is created dynamically and in this case not deleted. Task-number: https://projects.maemo.org/bugzilla/show_bug.cgi?id=244326 Merge-request: 1208 Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* | | | Revert symbol addition in b033bb9Jiang Jiang2011-04-292-7/+2
| |_|/ |/| | | | | | | | | | | | | | | | | | | | Because it breaks forward compatibility. We will use the original fix in 4.8. In 4.7 we just make sure it doesn't crash in QTextBlock::next(). Reviewed-by: Thiago Macieira
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-04-271-10/+6
|\ \ \ | |/ / | | / | |/ |/| | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Ignore changes to selectByMouse during a selection. PathView offset out of sync with currentIndex when items are removed.
| * Ignore changes to selectByMouse during a selection.Andrew den Exter2011-04-271-10/+6
| | | | | | | | | | | | | | | | | | | | | | Use the value of selectByMouse at the time of a mouse press event in all subsequent mouse events in a sequence. This is the same as ignoring the intial mouse press except mouse events for other actions are still accepted. Change-Id: I59b50bf95d26c6320e6e74eeb679b4153e0edf4d Task-number: QTBUG-18887 Reviewed-by: Martin Jones
* | Let QTextLine decide its own x position in QPainterJiang Jiang2011-04-193-18/+18
| | | | | | | | | | | | | | | | | | | | So that it can take trailing space width into account when doing right aligned text drawing. Backported from master. Task-number: QTBUG-18303 Reviewed-by: Eskil
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-04-131-0/+3
|\ \ | |/ | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix TextEdit cursorRectangle property.
| * Fix TextEdit cursorRectangle property.Andrew den Exter2011-04-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | Translate the cursor rectangle from control coordinates to painting coordinates rather than the other way around, ensure the cursor delegate is also translated, and update the cursor rectangle, cursor delegate and micro focus when the preedit cursor changes position. Change-Id: Iac7a87f7fb965d5f56d059d8f4b97feef8b47789 Task-number: QTBUG-18515 QT-4827 Reviewed-by: Martin Jones
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-04-113-1/+11
|\ \ | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Make sure removed QTextBlock is invalid
| * | Make sure removed QTextBlock is invalidJiang Jiang2011-04-113-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the block is removed from document block map, we will mark the right node to the current head->freelist index, but it shouldn't be accessed directly, otherwise it can cause crash because of uninitialized node. Hence we need to check if a node index is equal to current freelist index. If so, it cannot be a valid block. Task-number: QTBUG-18500 Reviewed-by: Eskil
* | | Merge remote-tracking branch 'mainline/4.7' into 4.7Oswald Buddenhagen2011-03-313-3/+6
|\ \ \
| * \ \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-03-281-1/+1
| |\ \ \ | | |/ / | |/| / | | |/ | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix text selection with shift-click.
| | * Fix text selection with shift-click.Andrew den Exter2011-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the cursor when word selection is NOT enabled. If word selection is enabled then then cursor would have been moved in a previous branch, the (incorrectly inverted) check was to prevent that being overridden. Change-Id: I788c3b41c6fdb250d6086893ea98a1aa8c302514 Task-number: QTBUG-18017 Reviewed-by: Alan Alpert
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-251-1/+4
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Make sure num_glyphs pass to HarfBuzz is large enough
| | * | Make sure num_glyphs pass to HarfBuzz is large enoughJiang Jiang2011-03-241-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Backport from master) Currently we only pass the num_glyphs for the run to HB_ShapeItem, but it can be less then the string length for this run because of Unicode surrogates. Thus, we need to pass at least the length of that run as num_glyphs to HB (given that we have enough space allocated because for the entire string), if that's still not enough, we will do ensureSpace again according to the num_glyphs returned by HB and move remaining glyphs backwards. Task-number: QTBUG-15679 Reviewed-by: Lars Knoll
| * | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-211-1/+1
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Don't crash calling QTextDocument::blockBoundingRect on invalid block
| | * | Don't crash calling QTextDocument::blockBoundingRect on invalid blockEskil Abrahamsen Blomfeldt2011-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the block is invalid, QTextBlock::layout() will return 0 and we would dereference a null pointer. Task-number: QTBUG-18192 Reviewed-by: Jiang Jiang
* | | | Ensure the right font is used for rendering text on MacAndy Shaw2011-03-301-1/+3
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | When ATSFontGetName() did not set name to the font name then it would cause Qt to fall back to a font that was not the right one. Therefore calling ATSFontFamilyGetName() in this case will help ensure it gets the right font. Reviewed-by: Jiang
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-151-22/+25
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Designer: Fix a bug affecting tab reordering of promoted tab widgets. Designer: Fix a bug clearing the Z-Order when adding a new widget. Adjust right bearing when breaking with line separators
| * | Adjust right bearing when breaking with line separatorsJiang Jiang2011-03-151-22/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we found a forced line break with line separator (e.g. '\n'), take the right bearing of previous glyph into account, otherwise the resulting text width will be slightly smaller than the one without a line separator. Task-number: QTBUG-17020 Reviewed-by: Eskil
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-03-141-2/+9
|\ \ \ | | |/ | |/| | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix TextEdit mouseSelectionMode overriding selectByMouse.
| * | Fix TextEdit mouseSelectionMode overriding selectByMouse.Andrew den Exter2011-03-141-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | If selectByMouse is false don't allow any text selection on mouse move. Change-Id: Ic9f309899bc0de48066a2393e088e15b3a2f06db Task-number: QTBUG-18072 Reviewed-by: Martin Jones
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-03-101-1/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fix QGraphicsScene returning incorrect focus item. Not requiring valid QTextBlock in previous()
| * | Not requiring valid QTextBlock in previous()Jiang Jiang2011-03-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 64852122ba7 introduced a regression in QTextBlock::previous(), programs that do doc.end().previous() will not be able to retrieve the last valid block. Revert this change so that we can keep the behavior consistent with previous versions. Task-number: QTBUG-18026 Reviewed-by: Eskil
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-03-091-1/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix unstable qdeclarativeflickable test. Update TextEdit's visible selection when only the anchor changes. Set correct initial value for TextEdit and TextInput canPaste property
| * | Update TextEdit's visible selection when only the anchor changes.Andrew den Exter2011-03-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At the limits of a TextEdit's text a key press can change/reset the anchor position without changing the cursor position. Checking the cursor position alone isn't enough to determine the selection hasn't changed. Change-Id: Ic425ac0c06897d77e9c86b907ff10b39d78dd7a1 Task-number: QTBUG-17982 Reviewed-by: Martin Jones
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integrationQt Continuous Integration System2011-03-041-2/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | * '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: Fix TextInput auto test failure on mac. Fix word selection locking on string boundaries. Fix potential crash in QTextControl. QDeclarativePropertyMap::keys() cannot be called from qml Compensate for horizontal scroll in TextInput micro focus.
| * | Fix potential crash in QTextControl.Lasse Holmstedt2011-03-041-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | inputContext() is only safe to call if there is a current contextWidget. Change-Id: I6cbccf5f5fbb2d8c9ca6acf5f7e02f680eb84483 Reviewed-by: Andrew den Exter
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2011-02-282-7/+13
|\ \ \ | |/ / |/| / | |/ | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fix Mac synthesized italic fonts clipping issue for QGLWidget Fix cursor position adjustment when removing strings Fix out of bounds handling in Mac shaper
| * Fix Mac synthesized italic fonts clipping issue for QGLWidgetJiang Jiang2011-02-281-5/+10
| | | | | | | | | | | | | | Backport 43d5a0757d857c2a6694ae81d6b70c04ef876aff from 4.8. Task-number: QTBUG-16954 Reviewed-by: Eskil
| * Merge branch 'graphics-team-text-4.7' into 4.7Eskil Abrahamsen Blomfeldt2011-02-281-2/+3
| |\
| | * Fix cursor position adjustment when removing stringsJiang Jiang2011-01-251-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 0ba1b4d0 introduced a regression to QTextDocument: it postponed cursor position adjustment until the move operation is done, but contentsChanged will be triggered by finishEdit() in this move operation, thus cursor positions in this signal handler will be in inconsistent states (normally we should first update cursor position then trigger contentsChanged). In this case we should also postpone finishEdit() handling after cursor positions have been adjusted, then the states expose to applications will be consistent. Task-number: QTBUG-15857 Reviewed-by: Eskil
| | * Fix out of bounds handling in Mac shaperJiang Jiang2011-01-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After ensure space, local QGlyphLayout variable should be updated to the moved address. stringToCMap returns true for success, so stringToCMapFailed should be the reverse of the return value. Out of bounds happened quite often in all situations using the QStackedTextEngine, because the memory allocated at the first time is usually not much, making it easier to trigger out of bounds in shaping. But it can also happen when using normal QTextLayout. Test it by comparing the width returned by normal QTextLayout and the width returned by QTextLayout created from QStackedTextEngine via QFontMetricsF. Task-number: QTBUG-16648 Reviewed-by: Eskil
* | | Forward mouse events from TextInput and TextEdit to QInputContext.Andrew den Exter2011-02-212-41/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | This brings TextInput in line with QLineEdit. The fix for TextEdit applies equally to QTextEdit. Change-Id: I5c47e5c8e951ee53cb1fe45d9c302050cd19deef Task-number: QTBUG-15705 Reviewed-by: axis
* | | Use same values for Text.lineHeightMode and QTextBlock::lineHeightMode from ↵Yann Bodson2011-02-092-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master. - MultiplyHeight becomes ProportionalHeight - PixelHeight becomes FixedHeight Change-Id: I2a1ebc6ff9db7e62f513919f19773f985b08f8d7 Reviewed-by: Michael Brasser
* | | Add a mouseSelectionMode property to TextEdit and TextInput.Andrew den Exter2011-02-013-4/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds an option to do per word selection when selectByMouse is true. Also changes the selection behavior so that the first word selected remains selected when the direction of the selection changes which is more consistent with other implementations including the existing per word selection in QTextEdit. Task-number: QTBUG-16283 Reviewed-by: Martin Jones
* | | Add support for line spacing in Text element.Yann Bodson2011-01-282-3/+19
| | | | | | | | | | | | | | | | | | | | | This change adds the lineHeight and lineHeightMode properties. Task-number: QTBUG-14296 Reviewed-by: Martin Jones
* | | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into qtquick11Bea Lam2011-01-274-27/+553
|\ \ \ | |/ / | | | | | | | | | | | | Conflicts: src/declarative/graphicsitems/qdeclarativegridview.cpp src/declarative/graphicsitems/qdeclarativelistview.cpp
| * | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Qt Continuous Integration System2011-01-251-2/+2
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Temporary fix for ambiguous cast from four letter char constant Fix QMAKE_POST_LINK in Symbian for targets with special characters.
| | * | Temporary fix for ambiguous cast from four letter char constantEckhart Koppen2011-01-251-2/+2
| | | |
| * | | Fix cursor position adjustment when removing stringsJiang Jiang2011-01-251-1/+3
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 0ba1b4d0 introduced a regression to QTextDocument: it postponed cursor position adjustment until the move operation is done, but contentsChanged will be triggered by finishEdit() in this move operation, thus cursor positions in this signal handler will be in inconsistent states (normally we should first update cursor position then trigger contentsChanged). In this case we should also postpone finishEdit() handling after cursor positions have been adjusted, then the states expose to applications will be consistent. Task-number: QTBUG-15857 Reviewed-by: Eskil
| * | Avoid possible font name collisions on fbservAlessandro Portale2011-01-243-23/+343
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTBUG-6611 implemented the long awaited app font support on Symbian. One of the problems with the underlying Symbian Api for font loading is that all fonts go into one system wide font store on fbserv. All fonts are visible to and accessible by every application. And there is no way to find out if a font is an app font and whose process' app font it is. If a font with a certain family name is already loaded on fbserv, no other application can load its font with the same family name. If two applications access the same font, bad things can happen (details: QTBUG-16514). This patch works around naming collisions on the fbserv. It also prevents Qt applications from using other Qt applications' app fonts. It does so by "marking" the name of the temporary ttf file before the file gets loaded by fbserv. All font name strings in the font's 'name' table get a marker string appended. The marker is composed by a "Q", the uid3, and on Symbian^3|PR1&below the pid. The marker length is four characters. When the QFontDatabase is populated, all own app font names are cleand from the marker, so that the Qt app can use the original font name. Other applications' app fonts are detected and filtered out of the own font database. Symbian's font Api supports only 24 characters as names for font families. The name marker reduces the effective characters to 20. The reduced name length is documented for QFontDatabase::addApplication[FontFromData] as a note. Since the app font feature is much safer now, it got re-enabled for Symbian^1 and below by reverting 25ac59fcf1bb03c9af9a2c967218c96c7c77361a . Task-number: QTBUG-16514
| * | Do not load aplication fonts on Symbian^1 and belowAlessandro Portale2011-01-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | read http://bugreports.qt.nokia.com/browse/QTBUG-16514 for a recipy to reboot the phone just by handling with fonts. Symbian^1 is vulnerable, and Symbain^3 prevents a phone reboot. Therefore, I prefer to disable the app font feature for Symbian^1, until QTBUG-16514 us properly handled. Task-Number: QTBUG-16514
| * | Supporting Qt application fonts on SymbianAlessandro Portale2011-01-192-22/+223
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch finally implements the missing application font support on Symbian. QFontDatabase's addApplicationFont[FromData], applicationFontFamilies and removeApplicationFont are now functional and allow an application to load, use and unload fonts at run-time. The underlying Symbian API comes with some restrictions/specialties. Most of them are worked around in this patch, the missing ones are left as part of QTBUG-16514: - The font file must be a file, not a memory buffer. Web fonts and qrc fonts come as memory buffers. These buffers are saved to a temporary .ttf file and the file is loaded by the underlying Symbian API. The temporary file can only be deleted after the font is unloaded. - The font file must be in a public location in order to be loadable by Symbian. It can for example not reside in the private application directory. Therefore, all application fonts (also those that are on the file system) become a temporary .ttf file in c:\temp\. - Symbian3/PR2 will come with a font table API which provides direct access to font tables. Symbian3/PR1 and below are missing this API, therefore, an own TFontStore is (ab)used to read font tables out of a font. This patch is considering both code paths in several occasions, making the Qt Symbian font implementation significantly less maintainable. - The fonts are loaded into Symbian's central font server. Loaded fonts from different processes can have colliding font typeface names (not file names) on that server. The server does not separate loaded fonts by their origin processes. Working around such collisions is part of QTBUG-16514. The number of fonts loadable at the same time by a Qt application is limited to the random value 5. Just to prevent abuse of the font server's memory. As usual, this patch was looked at by colleagues, and it was adjusted according to the feedback. But since the bus factor for the interaction of Qt's and Symbian's font systems is 1, I reviewed this patch, myself. Task-Number: QTBUG-6611 Autotest: tst_QFontDatabase::addAppFont
* | Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into qtquick11Martin Jones2011-01-1996-112/+112
|\ \ | |/