summaryrefslogtreecommitdiffstats
path: root/src/gui/text
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'qt/dev' into dev-highdpiPaul Olav Tvete2015-06-0926-87/+167
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qsimpledrag.cpp src/gui/kernel/qwindowsysteminterface.cpp src/gui/kernel/qwindowsysteminterface_p.h src/plugins/platforms/xcb/qxcbwindow.cpp Change-Id: Icd887552ade61d6a2b2527383970f7145aa00faf
| * doc: Remove uses of \mainclassMartin Smith2015-06-053-3/+0
| | | | | | | | | | | | | | | | This qdoc command is deprecated. Task-number: QTBUG-46476 Change-Id: Iee36f91bdcf500c2e88022a5f8a9c3accc6048c2 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * Merge "Merge remote-tracking branch 'origin/5.5' into dev" into refs/staging/devSimon Hausmann2015-06-0410-60/+39
| |\
| | * Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-0310-60/+39
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qnamespace.qdoc src/corelib/io/qwindowspipereader.cpp src/corelib/io/qwindowspipereader_p.h src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/plugins/platforms/xcb/qxcbconnection.h tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp tests/auto/tools/qmake/tst_qmake.cpp tests/manual/touch/main.cpp Change-Id: I917d694890e79ee3da7d65134b5b085e23e0dd62
| | | * Don't assign iterator to const_iteratorSérgio Martins2015-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It should also be possible to use QT_STRICT_ITERATORS in Qt's own code base Change-Id: I0914db480d4d2b06e71e3a2588163efdd3ff6d27 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | | * Better match thin font stylesAllan Sandfeld Jensen2015-05-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A style name 'Extra Thin' or 'Thin Italic' should be parsed as Thin font weight. Change-Id: I8acebed7330c23231b3742d887081d8b3d0aeb19 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | | * Fix overcaching the fallback families list for a requested familyKonstantin Ritt2015-05-131-15/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cached list didn't take fontStyle, styleHint and script into account. As long as QFontCache isn't explicitly disabled, loadEngine() rarely called for the same family, foundry, style and size - so avoid caching anything here at all. Change-Id: I7779bf33fc074edc00799f9a39d67327f8c88ccc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | | * Simplify QFontDatabase::findFont()Konstantin Ritt2015-05-133-19/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFontDatabase::load() is the only caller that passes non-null QFontPrivate* to QFontDatabase::findFont(), to adjust the pointSize with regards to the font's dpi; do that right in QFontDatabase::load(). The `multi` param's meaning is, in fact, an absence of the QFont::NoFontMerging flag, so prefer the latter and prevent ambiguity in the future. Change-Id: Icc7751044e454ca438e7627364faa415287bf1ae Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | | * [QFontDatabase::findFont] Get rid of the refactoring leftoversKonstantin Ritt2015-05-131-13/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic this code was aimed for has been covered by a more complete solution in QFontDatabase::load() years ago; simply drop the dead code. Change-Id: Id8860353ff4f4d2f1529aa89810d6c5725e97d24 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | | * QTextTable/QTextDocumentLayout: remove dead codeDavid Faure2015-05-062-8/+0
| | | | | | | | | | | | | | | | | | | | Change-Id: I3eb72a43129c58574036b6ca8c8c8413ca24b43a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | | * Make data tables const.Volker Krause2015-05-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moves some of them to the .rodata section, the rest at least to .data.rel.ro[.local]. Change-Id: I85676ddf22b0c0097f3f0dce4c3dc018dc29d045 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | | * Add noexcept to move constructors and assignment operatorsAllan Sandfeld Jensen2015-05-042-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the noexcept attribute to all move constructors and assignment operators in QtGui that didn't already have it. Change-Id: Idcdf79ae8349b8793e7394b5ae7c08e6111fbc9a Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * | | De-duplicate vtables, part II: exported public classesMarc Mutz2015-06-032-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By making the destructor (usually the first non-inline, non-pure, virtual function, and therefore the trigger for most compilers to emit the vtable and type_info structures for the class in that TU) out-of-line, vtables and, more importantly, type_info structures for the class are pinned to a single TU. This prevents false negative dynamic_cast and catch evaluation. In this second and last batch, we de-inline destructors of exported public classes. Since they are already exported, users of these classes are unaffected by the change, but since it's public API, and the dtors may have been de-virtualized and inlined into application code, we need to avoid adding code to the out-of-line destructor until Qt 6. Change-Id: Ieda9553cb4b0dae7217c37cc7cde321dd7302122 Reported-by: Volker Krause <volker.krause@kdab.com> Task-number: QTBUG-45582 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | | QStaticTextUserData: declare dtor out-of-line and export classMarc Mutz2015-06-032-2/+7
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | De-duplicates vtables and enables RTTI on this class hierarchy. Export, as QOpenGLStaticTextUserData (QtOpenGL) inherits it. Change-Id: I0662870538c35f23baf6bde4594ec8b9055efae7 Reported-by: Volker Krause <volker.krause@kdab.com> Task-number: QTBUG-45582 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | QAbstractTextDocumentLayoutPrivate: declare dtor out-of-line and export classMarc Mutz2015-06-012-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | De-duplicates vtables and enables RTTI on this class hierarchy. Export, as QPlainTextDocumentLayoutPrivate (QtWidgets) inherits it. Change-Id: I8aee43b43898a72430d8bc1247ea76c7d4e9031d Reported-by: Volker Krause <volker.krause@kdab.com> Task-number: QTBUG-45582 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * | src/gui/text/text.pri: add missing header qabstracttextdocumentlayout_p.hMarc Mutz2015-06-011-0/+1
| | | | | | | | | | | | | | | | | | Change-Id: Ia825ef6d932fbd45ceaf8c54a3207f207fa40994 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * | Fix users of QTextLayout::additionalFormats to use the new APIMarc Mutz2015-05-304-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTextLayout::additionalFormats setters and getters using QList<FormatRange> have been deprecated; port to the QVector versions. Moved op== definition for FormatRange needed in tst_qsyntaxhighlighter.cpp to a friend declaration in FormatRange itself, because MSVC 2008 doesn't find it otherwise. Change-Id: Ibab6589df057f02377d895079b56395859e3401e Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * | QTextLayout: replace a use of an inefficient QList with QVectorMarc Mutz2015-05-294-11/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QTextLayout::FormatRange is larger than void* and thus should not be held in QList. Use a QVector instead. Other parts of Qt already hold FormatRanges in QVectors, so this also makes handling FormatRanges more consistent. To avoid ugly names for the getter which doesn't overload on return type alone), rename the set of function to format (from additionalFormats). [ChangeLog][QtGui][QTextLayout] Added QVector-based alternatives setFormat(), format(), and clearFormat() to setAdditionalFormats(), additionalFormats(), and clearAdditionalFormats(), resp. Change-Id: Ie04a561b43c91c3b2befb3cac2981821f84d5f77 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * | Q*GlyphCache: de-inline dtor and export vtableMarc Mutz2015-05-263-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The destructor is the first virtual method. By not defining it out-of-line, we provoke multiple copies of vtables, not all of which can be merged by the linker. If the linker fails, RTTI such as dynamic_cast and catch-blocks involving the type will not work. Additionally, QFontEngineGlyphCache was not exported, and therefore also not its vtable, making it impossible for users outside of QtGui to get a unique RTTI for the class. Change-Id: Ib265945934216bb609629431eb4c71996d4fd39d Reported-by: Volker Krause <volker.krause@kdab.com> Task-number: QTBUG-45582 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | | Merge branch 'wip/highdpi' of git://code.qt.io/qt/qtbase into dev-highdpiPaul Olav Tvete2015-05-1312-72/+28
|\| | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/xcb/qxcbscreen.cpp src/plugins/platforms/xcb/qxcbwindow.cpp
| * | Merge remote-tracking branch 'origin/5.5' into HEADSimon Hausmann2015-05-043-41/+11
| |\| | | | | | | | | | Change-Id: I487a4b7c05687a10c498ac219c31367d4db6fbc0
| | * Fix undefined behavior in left-shifting into negativeThiago Macieira2015-05-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's undefined behavior to left or right-shift a signed integer such that the sign changes. Since SymbolCsbBit is 31, make sure we use unsigned numbers. Found by ICC qplatformfontdatabase.cpp(614): error #68: integer conversion resulted in a change of sign Change-Id: Idf715b895bac4d56b4afffff13da78d294b1248e Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * [QFontDatabase] Get rid of QtFontEncodingKonstantin Ritt2015-05-011-30/+8
| | | | | | | | | | | | | | | | | | | | | | | | This one has not been unsed for ages (since Qt3?). Change-Id: Iaf514db1b698b34a303f34c150b72db989eb176c Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * [QFontDatabase] Drop QtFontDesc's familyIndex memberKonstantin Ritt2015-05-011-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | Many times set but never used. Change-Id: I297f21d4b9878e5f9559a2dfdb2d3de34107bb7d Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * [QFontDatabase] Get rid of some dead codeKonstantin Ritt2015-05-011-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Checking if `db->count == 0` inside the `for (int x = 0; x < db->count; ++x)` loop makes absolutely no sense; 2. The family gets loaded just a line above (ensurePopulated()). Change-Id: I72dbd42565c4f5a5d9ff8879f10ee0ece7298fa7 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * Optimize QFont::resolve(const QFont &other)Konstantin Ritt2015-05-011-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | When resolve_mask is 0, the font inherits just everything, and there is no need in checking for any resolved attributes; the resolved font always inherits dpi, so do not check it either. Change-Id: Ie5d7ced0859d46a9237447e29051a22569480a51 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-228-29/+14
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/gui/painting/qdrawhelper.cpp src/plugins/platforms/xcb/qxcbnativeinterface.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/plugins/platforms/xcb/qxcbwindow.h src/testlib/qtestblacklist.cpp src/tools/qdoc/node.cpp src/tools/qdoc/node.h tests/auto/gui/painting/qcolor/tst_qcolor.cpp Change-Id: I6c78b7b162001712d5774293f501b06b4ff32684
| | * [QTextCursor] Better use of the cached whiteSpace attributeKonstantin Ritt2015-04-154-24/+8
| | | | | | | | | | | | | | | | | | | | | | | | In compare to QTextEngine::atSpace(), this also handles the less-common "white spaces" and the exceptional control codes. Change-Id: I52878932926b7f9fe36c9dd01007963b9691fbf0 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * Fix trivial copy-paste typo in QTextBlock::previous() docuKonstantin Ritt2015-04-151-1/+1
| | | | | | | | | | | | | | | Change-Id: Ia5d260af00aecf40400653e41248b5dd5f074b74 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * Improve QTextDocument::toPlainText doc related to inline imagesAlessandro Portale2015-04-102-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Embedded objects, such as images, are represented by a Unicode value U+FFFC (OBJECT REPLACEMENT CHARACTER)." Also updated the QTextImageFormat docs with the same wording. Task-number: QTBUG-44538 Change-Id: I64dd5f5be4a0ecc64b30758a72f8b4281c17924b Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * [QtFontFamily] Get rid of unused memberKonstantin Ritt2015-04-081-2/+0
| | | | | | | | | | | | | | | | | | Change-Id: I8c70995767bfb5fdbd6e9e9464029beeccf41f53 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * | Remove <qhash.h> where it's not usedMarc Mutz2015-04-202-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | To avoid source-incompatibilites, wrap in QT_DEPRECATED_SINCE(5, 5) in public headers. Change-Id: I6117e8a6b11200d2f1a0a94a0e87d5c27538218e Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | Replace <qhash.h> with <qhashfunctions.h> where applicableMarc Mutz2015-04-201-1/+1
| |/ | | | | | | | | | | | | | | To avoid source-incompatibilites, wrap in QT_DEPRECATED_SINCE(5, 5) in public headers. Change-Id: Ic3398f4f330e15a3b55065858add26b90fd70e6c Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* / Use qreal for devicePixelRatio everywhereMorten Johan Sørvig2015-04-152-2/+5
|/ | | | | | | | | QPaintDevice::devicePixelRatio() -> devicePixelRatioF() Implement PdmDevicePixelRatioScaled for QPaintDevice subclasses. Remove instances of casting to int. Change-Id: I6e769d21e889bf8f88aedc1c49b53fef20a6709c
* [QFontEngineFT::loadGlyph] Fix reversed condition.Friedemann Kleint2015-04-081-6/+6
| | | | | | | | | | Introduced by 237cb0d082b5518cecf42f1a2186134799de745e (Consolidate paths for fetchMetricsOnly cases). Task-number: QTBUG-45444 Change-Id: Icd642c09490f1cfc5804313d60d467290ae599ba Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* [QFontEngineFT::loadGlyph] Consolidate paths for fetchMetricsOnly casesKonstantin Ritt2015-04-072-25/+27
| | | | | | | | | Use GlyphInfo as a temporary buffer for storing the glyph metrics and go through the same code for fetchMetricsOnly and !fetchMetricsOnly. Change-Id: If8bb85056e5f09588cc3956b43dc51a54d5aecfe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* [QFontEngineFT] Move code around to improve readability (no-op)Konstantin Ritt2015-04-071-21/+14
| | | | | | | | Move some variables initialization closer to the usage context. Change-Id: I0f1de0ddc9f0fbe3ec4a56455ccc14f9e8d94e5a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* [QFontEngineFT] Avoid double-negation of info.xKonstantin Ritt2015-04-071-4/+4
| | | | | | | | Make it consistent with fetchMetricsOnly path. Change-Id: I6a2d2568d5579255582217515a4e598722547c60 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* [QFontEngineFT] Guarantee correct metrics for alphamap and its bounding boxKonstantin Ritt2015-04-071-38/+8
| | | | | | | | ...for both cached and non-cached modes, by disabling hinting for transformed glyphs in loadGlyphFor(). Change-Id: I13766a653ebd72cbed0f5c38ca3536d042aed762 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* [QFontEngineFT] Consolidate .*lpha.*MapForGlyph() behaviorKonstantin Ritt2015-04-071-71/+52
| | | | | | | ...and decrease code duplication. Change-Id: I5eb3c0694dde9030405a3bd3d410ff9784ed7717 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Liang Qi2015-03-311-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: mkspecs/android-g++/qmake.conf qmake/generators/unix/unixmake2.cpp src/gui/image/qimage_conversions.cpp Change-Id: Ib76264b8c2d29a0228438ec02bd97d4b97545be0
| * Avoid using the current frame as the previous in layoutAllan Sandfeld Jensen2015-03-181-1/+1
| | | | | | | | | | | | | | | | | | When continuing a previous layout, we would in some cases add a wrong margin because we would treat the current frame as preceding itself. Task-number: QTBUG-42269 Change-Id: Idf00fadbed890ce34b073cf670cc9b8e1d4b0d5d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Use QDebugStateSaver to restore space setting in stream operators.Friedemann Kleint2015-03-301-2/+4
| | | | | | | | | | | | | | | | Returning dbg.space() breaks formatting on streams that already have nospace() set. Change-Id: I55e38b018679a67eb40be6b4664505483a3a7d8e Reviewed-by: David Faure <david.faure@kdab.com>
* | Fix "'QCss::Property' is not a class or namespace"Andrew Knight2015-03-301-11/+11
| | | | | | | | | | | | | | | | | | | | | | As reported by GCC 4.9.2 x86_64-linux-gnu. The error message is correct; QCss::Property is the name of an enum. Change-Id: I9fb29d39ac11a644b7b08227f102594b3f3017f0 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Debao Zhang <hello@debao.me> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Update Unicode data up to v7.0Konstantin Ritt2015-03-272-2/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Two newly adopted currency symbols: the Azerbaijan manat and the Russia ruble * Pictographic symbols (including many emoji), geometric symbols, arrows, and ornaments originating from the Wingdings and Webdings sets * Twenty-three new lesser-used and historic scripts extending support for written languages of North America, China, India, other Asian countries, and Africa * Letters used in Teuthonista and other transcriptional systems, and a new notational set, Duployan For more details, see http://www.unicode.org/versions/Unicode7.0.0/ The Properties struct's .*Diff members were narrowed down to signed 15 bits and the unicodeVersion has been expanded to 8 bits. [ChangeLog][QtCore] Unicode data updated to v.7.0 Change-Id: I93ab6f79fa3b05f61abc7279f1d046834c1c1a0b Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Fix soft-hyphen appearance at line-breakKonstantin Ritt2015-03-261-0/+13
| | | | | | | | | | | | | | | | | | | | Replace it with '-' and set dontPrint to true; later we unset the dontPrint flag if soft-hyphen appears at the end of a line after line breaking. Task-number: QTBUG-44234 Change-Id: I05b69bcbbe07e1ee8a5d35d24372356ce8ab9db8 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Set dontPrint flag for the respective glyphKonstantin Ritt2015-03-261-15/+14
| | | | | | | | | | | | | | | | The str_pos variable hasn't been incremented prior to string[str_pos]. Ouch! Change-Id: I54a160c26e23821037bf6ee8aea3e0a94a5e71f9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Better detection of Symbol fontsKonstantin Ritt2015-03-261-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | > Symbol character sets have a special meaning. > If the symbol bit (31) is set, and the font file contains a 'cmap' > subtable for platform of 3 and encoding ID of 1, > then all of the characters in the Unicode range 0xF000 - 0xF0FF > (inclusive) will be used to enumerate the symbol character set. If we detected the font has a symbol character set, report no other writing systems support. Change-Id: I1030f3339c166ffd03c7caee1b1b26010dfdc314 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Detect Thai writing system support from the font's Code Page BitfieldsKonstantin Ritt2015-03-261-0/+6
| | | | | | | | | | | | | | https://msdn.microsoft.com/en-us/library/windows/desktop/dd317754(v=vs.85).aspx Change-Id: I893746210dc71b9de6f6c064fd9fcaf6340e3c71 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Ensure that CSS rules are inherited from the parent tagsAndy Shaw2015-03-253-66/+233
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When CSS is set in a head tag then it was not being inherited by the child tags when the CSS specification indicates that the properties are in fact inherited. This ensures that those properties are inherited and the non inheritable ones are unchanged. A test is added to cover the different situations with inheritance and a fix is done for the QTextDocumentFragment test which was passing despite having incorrect defaults. Task-number: QTBUG-28770 Task-number: QTBUG-34153 Change-Id: I55966240845a885852a04ecb82c61926dea9f800 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>