summaryrefslogtreecommitdiffstats
path: root/src/gui/text
Commit message (Collapse)AuthorAgeFilesLines
* Fixed a problem with disappearing borders in a QTextFrame.Trond Kjernåsen2009-06-111-18/+18
| | | | | | | | | The border was always drawn before the background, and if there were both a border and background brush set, the background ended up being drawn ontop of the border. Task-number: 255868 Reviewed-by: Samuel
* Fixed text drawing on Windows in 16 bit mode.Trond Kjernaasen2009-06-052-13/+16
| | | | | | | | | | | There were several problems with antialiased text in 16 bit mode under Windows. No gamma correction was done, yet we prepared the cached glyphs for gamma correction. The mask format we rendered the glyphs into was also set to the desktop depth, which implied that information was lost and the text looked rather odd. Reviewed-by: Samuel BT: yes
* BT: Remove duplicate code and fix font parsing.Norwegian Rock Cat2009-06-022-9/+2
| | | | | | | | | | | QFont has a feature that you can pass a comma-separated list and it will walk through the list and match the font that it hits first. There's a nice static function that X11 and Windows uses, but the Mac was using an older copied version of it. This old version didn't handle quoting which is what happens in the style sheet. So, using the same code makes everything work well. As a bonus, Creator looks correct again. Reviewed-by: Simon Hausmann
* BT: Fixed GL textdrawing in the Boxes demo.Trond Kjernaasen2009-05-261-3/+3
| | | | | | | | | | | | Reworked the 85f98acaa3a38079071bea711e43c9a86edec1f6 fix, since it broke glyph positioning in the GL engine under Windows. Instead of changing the glyph cache margin, which impacts where the glyph is positioned, we just make the image the glyph is drawn into 4 pixels bigger in width/heigth. The margin in QImageTextureGlyphCache needs to be reworked.. Task-number: 254450 Reviewed-by: Eskil
* Doc: Miscellaneous documentation fixes for Qt 4.5.x and later.David Boddie2009-05-251-6/+6
| | | | Reviewed-by: Trust Me
* qdoc: Added some missing qdoc comments.Martin Smith2009-05-252-11/+14
| | | | Task-number: 252489
* Fixed potential bug caused by change b89efc8e7f32.Samuel Rødal2009-05-221-1/+1
| | | | | | | If ensureSpace causes the layoutData to reallocate then the initialGlyphs pointers will no longer be valid. Reviewed-by: Simon Hausmann
* Fixed text shaping bugs with ligatures and multiple font engines.Samuel Rødal2009-05-221-14/+26
| | | | | | | | If Harfbuzz shaping adds or merges glyphs we need to move the remaining glyphs in the glyph layout to compensate. Task-number: 253783 Reviewed-by: Simon Hausmann
* Fixed an issue with text drawing to QImages on Mac/Cocoa.Trond Kjernåsen2009-05-221-1/+3
| | | | | | | | | | We currently don't support subpixel hinting when drawing text to a QImage on Mac. The alpha map that is returned by the font engine is a plain 8 bit gray mask, which means we have to switch off subpixel hinting when we draw the glyph for caching. Task-number: 249178 Reviewed-by: Samuel
* Fix some typos in the documentation.Frederik Schwarzer2009-05-182-2/+2
| | | | | | Usually, "the the" is not proper English Reviewed-By: Thiago Macieira
* QCss: font-family handle fallback font specsOlivier Goffart2009-05-181-7/+12
| | | | | | | | | | | | if one specify more than one parameter in font-family, e.g., font-family: Verdana, Arial Qt should fallback on the second font if the first cannot be found. QFont::setFamily handle the case when the family name contains a comas, so we do not need to handle that specially in the css parser code. Task-number: 252311 Reviewed-by: Thomas Zander
* Fixed an issue with text drawing under Windows.Trond Kjernaasen2009-05-141-3/+3
| | | | | | | | | | Some text drawn with OpenType fonts where cut off by a pixel or two under certain circumstances. This adds an additional 2 pixel pad margin to the glyph cache entries. The padding behaves slightly different when ClearType is enabled/disabled, hence the general 2 pixel padding. Task-number: 246196 Reviewed-by: Samuel
* Made QFontEngineFT compile on 64-bit platforms with legacy headers.Samuel Rødal2009-05-111-1/+1
| | | | | | | | | In older Freetype headers FT_LCD_FILTER_DEFAULT is apparently defined to be ((const FT_Byte*)(void*)(ft_ptrdiff_t)1), which leads to a compile error due to precision loss when casting to int. Task-number: 253186 Reviewed-by: Trond
* Clarifying docs for QTextTable::splitCell()Morten Engvoldsen2009-05-111-1/+6
| | | | | | | | Clarifying details about QTextTable::splitCell() regarding splitting and merging over several rows and columns Task-number:193732 Rev-by: Geir Vattekar
* Prevented asynchronous access to non-thread safe libfontconfig API.Samuel Rødal2009-05-081-11/+32
| | | | | | | | We need to protect calls to FcCharSetHasChar with the font database mutex. Task-number: 241361 Reviewed-by: Simon Hausmann
* Fix reentrency of the QCSS engine.Olivier Goffart2009-05-081-10/+6
| | | | | | | | | QTextDocument which is suposed to be reentrant may use the CSS Parser in different threads. The way the indexOfId was computed is not thread safe. Insert the pre-computed value instead Reviewed-by: Thierry
* Compiler warnings (Mac/Carbon)Bjoern Erik Nilsen2009-05-071-1/+1
| | | | Reviewed-by: nrc
* Re-enabled antialiasing for large font sizes in OpenGL paint engine.Samuel Rødal2009-05-063-4/+45
| | | | | | | | | | | | In 4.4 alphaMapForGlyph() would return valid images for any font size, but this was changed in 4.5, forcing us to use the path fallback instead. This lead to non-antialiased fonts when not using a multisample-enabled GL format. This patch re-introduces the alphaMapForGlyph() fallback in QFontEngine from 4.4 which uses the raster paint engine to draw the glyph. Task-number: 247083 Reviewed-by: Trond
* Doc: Added links to Text Object Example in QTextDocument and QTextObjectGeir Vattekar2009-05-062-2/+2
| | | | Task-number: 244858
* Doc: Said that QTextCursor is an implicitly shared class inGeir Vattekar2009-05-061-1/+4
| | | | | | QTextCursor::operator= Task-number: 247955
* Extend change 759338df758ad16cdfd9521b270f7e379bbfa57c to cover extramae2009-05-051-14/+25
| | | | | | | | | | selections with different foreground but no background The main concern is to avoid double painting. With anti-aliasing turned on by default, we can not draw a piece of text on top of the same piece of text without artefacts. Task-number: 252310
* QTextEdit::ExtraSelection failure with style sheetsmae2009-05-052-6/+39
| | | | | | | | | | the feature has to handle text with and without background, and extra selections with and without background, or even only with underline style. Trouble is that you sometimes want to accumulate styles, for example spell checking wiggly underline plus search result highlights or background markup from the css stylesheet. Task-number: 252310
* Fix a crash in case of setting invalid point sizeJarek Kobus2009-04-291-2/+8
| | | | | | | Asserts are replaced with warnings and the call is ignored. Task-number: 252414, 252416, 252502 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Properly support the "prefer antialias" font styleGunnar Sletta2009-04-201-3/+9
| | | | | | | | | | Since the introduction of the texture glyph cache we rendered these fonts as 8-bit gray masks which looked bad and cut off a few pixels for thin glyphs. Changed the preferred format of the font engine to be Raster_RGBMask. Task-number: 248141 Reviewed-by: Eskil B
* Fixing some CoreText errors.Norwegian Rock Cat2009-04-022-14/+19
| | | | | | | | | | | | Apparently CoreText is too good for us and always gives us fractional information. Which would be food for design metrics, but not good for drawing to the screen. The upshot of it is that we do the ceiling of every value we get. This is as stop gap solution for the moment. Things in Creator should look better now. Also added the ability to disable kerning. Reviewed-by: Simon Hausmann
* compile on Linux.jasplin2009-03-311-1/+1
| | | | Reviewed-by: Samuel
* Fix crash when accessing newly constructed QTextObjects.Benjamin Poulain2009-03-267-10/+26
| | | | | | | | | The pieceTable member was only initialized by QTextDocumentPrivate _after_ the call to createObject. This patch initializes it at construction time. Task-number: 246138 Reviewed-by: Simon Hausmann
* alphaMask needs to be const, because first bytesPerLine() is called and then ↵Alessandro Portale2009-03-251-1/+1
| | | | bits(). The non-const bits() may detach and realign the data, so that the previous result of bytesPerLine() ist invalid. On S60, we actually had a 'skew' effect because of that.
* Long live Qt 4.5!Lars Knoll2009-03-2390-0/+73025