| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change 04d18b38 fixed the windows and ft font engines so that the height
reported in QFontMetrics is now correct, but this make vertical text
centering one off as the platform defaults is to round down rather than
up when the vertical position of the text is in the middle of a pixel.
When this was fixed in change 1de8a5b, the vertical centering broke on
Mac, since it still reported a too great font height. This patch applies
the same hack to the mac font engines to report the correct font
height.
Task-number: QTBUG-6770
Reviewed-by: joerg
|
|
|
|
| |
Reviewed-by: Eskil
|
|\ |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Block changes in different selections happens quite frequently with
Qt Creator, e.g. when renaming local variables. The desired behaviour
which the tst_QTextCursor::cursorPositionWIthBLockUndoAndRedo() tests,
is like this: after an undo, the cursor should be where it was when
the block operation started. After a redo, the cursor should be
where it was after the block operation ended.
Reviewed-by: Simon Hausmann
|
| |/
| |
| |
| |
| |
| |
| |
| | |
In Symbian^3, public and platform headers have been split. Since we're
using a platform header, we need to include the new header file on
Symbian versions where the new header structure is in use
Reviewed-by: TrustMe
|
|/
|
|
| |
Reviewed-by: Eskil
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The line separator code point has no glyph in any font, something we
would detect by running through a complete font merging loop and trying
all fonts in the system on X11. This would cause the memory consumption
to sky rocket the first time you added text with line breaks to an
application, and it was an unnecessary performance hit. Now we special
case the line separator and do no attempt to search for it in the
fonts.
Task-number: QTBUG-4537
Reviewed-by: Simon Hausmann
|
|\ |
|
| |\ |
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This happens only when there is a single japanese character entered &
the suggested text is same as the one already displayed. In this case,
black background was not drawn correctly.
Reviewed-by: Simon Hausmann
Reviewed-by: axis
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If two QInputMethodEvent("preedittext", attributes) or more are send in a row, textedit is drawn empty.
Event creates lines based on isGettingInput flag and clears line every time there is preedit text.
On 2nd event lines are cleared but not created since e->preeditString() != cursor.block().layout()->preeditAreaText() set isGettingInput to zero.
When draw begins line count is checked. If no lines return. Moved layout->setPreeditArea() under if (isGettingInput) so pre-edit text is set only when text really changes.
http://bugreports.qt.nokia.com/browse/QTBUG-4696
Task-number:QTBUG-4696
Reviewed-by:Markku Luukkainen
Merge-request: 2132
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
| |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-5542
Reviewed-by: Trust-me
We should not assume that the alignment only has a horizontal part so
the export should take care to fish out the relevant bits from the flags
only.
|
| |/
|/|
| |
| |
| |
| |
| | |
Commit 6ef5b4485b9fe5a9d25d2d9b5e67f110fb728a8b broke compilation on
Windows CE by moving code out from a #ifndef Q_WS_WINCE block.
Reviewed-by: Rohan McGovern
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
If the user enters a valid page range, which lies outside of the actual
number of printable pages, we can't detect that until the document
has been paginated.
Task-number: QTBUG-6051
Reviewed-by: Kim
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since .otf fonts are not considered truetype fonts, they take the
code paths intended for non-outline fonts. When calculating the bounding
box of a glyph, this would mean we'd find the largest possible bounding
rect of any glyph in the font, while the other metrics, such as the GPOS
tables used to position diacritics in relation to base glyphs, are
positioning the actual outline of the glyph. The result was that certain
diacritics that depended on the opentype positioning would not be shown on
Windows at all, as they would be positioned based on the wrong left bearing
and height when drawn into the glyph cache.
The fix is to find the tight bounding rect of the outline whenever
possible and fall back to the old code when this fails. I've also added
the left bearing of the glyph to the bounding box in the fallback case,
as we did not respect this before and would misplace glyphs that has
a bearing.
Task-number: QTBUG-5860
Reviewed-by: Trond
|
|
|
|
|
|
| |
Task-number: QTBUG-5963
Reviewed-by: Oswald Buddenhagen
Reviewed-by: Eskil
|
|
|
|
|
|
|
|
|
|
| |
The test I wrote was not testing if calling undo/redo had any effect
on emitting undoCommandAdded(), added these test cases and fixed the
QTextDocumentPrivate::endEditBlock so we now again emit only when an
undo command is added, not also on calling undo or redo.
Reviewed-by: mae
Reviewed-by: Samuel Rødal
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QTextFormatCollection currently has two problems:
- looking for the index of a QTextFormat is linear, this can take 25%
cpu when loading large documents in kword
- the hash function for QTextFormat is inadequate. Not all values are
treated specially. E.g. each QBrush instance has the same hash value
at the moment.
These patches speed up loading of a large text document in KWord from 9
to 7 seconds.
This fixes this by using QMultiHash to group the QTextFormat instances
by hash and only loop through that list when looking up values. It also
improves the hash function for QTextFormat.
Merge-request: 1623
Reviewed-by: Olivier Goffart <ogoffart@trolltech.com>
|
| |\ |
|
| | |\
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/gui/painting/qbrush.cpp
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The font comparison (operator==) didn't check the capital attribute, which is
the one responsible for this variant. Now it does. Auto-test updated.
Reviewed-by: Samuel
Reviewed-by: Olivier
|
|\ \ \ \
| |/ / /
| | | |
| | | |
| | | | |
Conflicts:
dist/changes-4.6.0
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
The word 'module' was missing.
Reviewed-By: TrustMe
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Workaround: fntstore.h has an inlined function
'COpenFont* CBitmapFont::OpenFont()' that returns a private data member.
The header will change between minor SDK versions, thus break BC. But
Qt has to build on any SDK version and run on other versions of Symbian
OS. Also Qt does not want to deliver that BC to Qt based apps.
This hack performs the needed pointer arithmetic to get the right
COpenFont* pointer, no matter if the 'Flexible Memory Model' is already
supported or not.
The author is not proud of this commit.
Task-number: QT-2250
Reviewed-by: Iain
Reviewed-by: Shane Kearns
modified: src/gui/text/qfontdatabase_s60.cpp
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QPaintDevice and QImage used the functions numColors(), setNumColors(),
and numBytes(). However, this is not consistent with the rest of the Qt
API which uses *Count() and set*Count().
Removed all usage of these functions inside Qt and test-cases.
Reviewed-by: Andreas Aardal Hanssen
|
| |\ \ |
|
| | |\ \
| | | |/
| | | |
| | | |
| | | | |
Conflicts:
dist/changes-4.6.0
|
| | |\ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This fixes the issue in the itemviews that the selection would not
change when clicking on rich text labels.
Task-number: QTBUG-4516
Reviewed-by: ogoffart
|
| | |\ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We cannot simplify spaces because a font may have several spaces in
its name.
If we only add spaces when needed when merging tokens, we don't need
to simplyfy the string later
The CSS tokenizer will already make sure that spaces are removed if
there is no quotes (btw, the CSS specification says that there must
be quotes if there is spaces, but we tollerate if there is no quotes)
Reviewed-by: Jocelyn Turcotte
Task-number: QTBUG-4344
Task-number: 258586
|
| |\ \ \ \ \
| | | |_|/ /
| | |/| | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
There is an optimization in QTextControl, that it only requests
updates for single blocks if only a single block was changed. This
update was requested with the block's bounding rectangle.
In the case of disabled line wrapping in combination with a very long
line, a block change can result in a narrower block bounding rectangle.
This then resulted in pixel on the screen not being redrawn properly.
The fix enlarges the requested update rectangle horizontally.
The bug was discovered during inhouse Qt Creator testing.
Reviewed-by: Oswald Buddenhagen
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
QFxTextEdit, as well as systems with keypad navigation, needs the text
control to ignore navigation events that have no effect (like hitting
the right navigation key at the end of the text.) Previously, we would
only support this for keypad navigation. This patch introduces a flag
that you can set to tell the QTextControl to ignore these events. If
the flag is not explicitly set, behavior should remain as before.
The if-test has been refactored to make it more readable.
Done-with: Alan Alpert
Reviewed-by: Samuel
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We need to copy the abstract text layout's custom object handlers as
well when we temporarily use a different QTextDocument.
Task-number: QTBUG-5397
Reviewed-by: Simon Hausmann
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
QPen does not have a constructor which only takes a single QBrush.
Reviewed-by: Gunnar
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Reviewed-by: Simon Hausmann
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Reviewed-by: Eskil
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Also removed a redundant setBrush(), as it will be followed by
painter->restore() a few lines below.
Reviewed-by: Eskil
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Missing comma in qfontdatabase.cpp
Reviewed-by: Gunnar
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Enables N'Ko support in Qt, after having now a harfbuzz version
that supports it.
Task-number: QTBUG-1042
Reviewed-by: Gunnar
|
|\ \ \ \
| |_|_|/
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Previously we didn't update the editor contents if the new preedit
string was empty. However, it could be empty because the user just
erased it, so the bug was fixed by checking whether the preedit
string in the event and in the editor are different.
RevBy: Denis Dzyubenko
|
|\ \ \ \
| |/ / / |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
fontDef.pixelSize is a qreal now and we should round it after
multiplication to avoid an accuracy loss.
Reviewed-by: mae
|