summaryrefslogtreecommitdiff
path: root/pango/break.c
Commit message (Collapse)AuthorAgeFilesLines
* Update Line Breaking to Unicode 13Peng Wu2021-05-051-20/+4
| | | | (cherry-picked from commit 23b6d06e)
* Update Grapheme and Word Boundary to Unicode 13Peng Wu2021-05-051-6/+13
| | | | (cherry-picked from commit 631775d8)
* break: Don't determine types more than onceMatthias Clasen2019-10-121-3/+5
| | | | | | We determined the category early on, don't do the same work again later by calling isdigit or isletter wrappers.
* Ensure arguments name match the documentationEmmanuele Bassi2019-08-021-2/+2
| | | | Otherwise the introspection scanner will be majorly confused.
* Annotate implicit fallthroughMatthias Clasen2019-08-011-0/+1
| | | | This triggers compiler warnings.
* Fix a crash with line break controlMatthias Clasen2019-07-271-1/+1
| | | | | We were forgetting to copy allow-break attributes, causing them to be prematurely freed. Oops.
* Add a missing Since tagMatthias Clasen2019-07-201-0/+2
|
* break: Implement allow-breaksMatthias Clasen2019-07-201-9/+87
| | | | | | | | | We implement this in pango_tailor_break(), after the script-specific breaking. When line breaks are forbidden in a range, we remove line and char break opportunities inside the range.
* Add an offset argument to pango_tailor_breakMatthias Clasen2019-07-201-0/+2
| | | | | | Without this, it is not possible to interpret attributes, whose offsets are relative to the beginning of the paragraph.
* Fix compiler warningsMatthias Clasen2019-07-181-1/+1
|
* Fix a compiler warningMatthias Clasen2019-07-171-1/+0
|
* Deprecate pango_breakMatthias Clasen2019-07-161-9/+9
| | | | | To break correctly, use pango_default_break and pango_tailor_break.
* Add pango_tailor_breakMatthias Clasen2019-07-161-16/+42
| | | | | | This function lets you apply language-specific tailoring on top of breaks produced by pango_default_break.
* Merge branch 'kill-lang-engine' into 'master'Matthias Clasen2019-07-091-50/+16
|\ | | | | | | | | Remove lang engine use See merge request GNOME/pango!73
| * Remove language engine remnantsMatthias Clasen2019-07-091-40/+0
| | | | | | | | | | Drop all internal use of language engines. The lang_engine field in PangoAnalysis is now unused.
| * break: Call break_script directlyMatthias Clasen2019-07-091-11/+17
| | | | | | | | No need to go through the engine api anymore.
* | Revert "break: Mark breaks induced by soft hyphens"Matthias Clasen2019-07-091-8/+1
|/ | | | This reverts commit 50b1e8532c5211cebd3cea935f9ac91a087d5c35.
* break: Mark breaks induced by soft hyphensMatthias Clasen2019-07-071-1/+8
| | | | | | Use a bit in PangoLogAttr to mark line breaks that are due to soft hyphens; we want to insert hyphens here later, if the break is taken.
* Respect Dependent Vowels for Indic languagePeng Wu2019-04-091-63/+7
| | | | For Dependent Vowels, the grapheme needs to be deleted by character.
* Fixes emoji backspace deletion behaviorPeng Wu2019-04-021-1/+2
|
* Clarify docs around text inputMatthias Clasen2018-12-121-3/+3
| | | | | | | Make it clear that all text input must be valid UTF-8, except in the case pango_layout_set_text, which we now officially document as accepting and handling invalid input.
* pango/break.c: Declare variables at top of blockChun-wei Fan2018-12-041-1/+4
| | | | This ensures everything build with pre-C89 compilers.
* Update Line Break to Unicode 11Peng Wu2018-11-201-5/+3
|
* Update Word Boundary to Unicode 11Peng Wu2018-11-201-1/+14
|
* Update Grapheme Boundary to Unicode 11Peng Wu2018-11-201-96/+33
|
* Fix is_char_break issue in pango_default_break functionPeng Wu2017-11-151-6/+4
| | | | | | For most cases, the is_char_break variable should be TRUE. https://bugzilla.gnome.org/show_bug.cgi?id=789625
* Update pango_default_break function for Line BreakPeng Wu2017-10-271-459/+421
| | | | | | Support Line Break of Unicode 9.0. https://bugzilla.gnome.org/show_bug.cgi?id=788115
* Fix pango_default_break function for sentence start/endPeng Wu2017-08-301-10/+29
| | | | | | Skip the space characters in sentence start/end. https://bugzilla.gnome.org/show_bug.cgi?id=785978
* Fix backspacing for more Emoji sequencesMatthias Clasen2017-08-171-1/+4
| | | | | | | Behdad pointed out that I didn't get it right for flags and for sequences ending in a skin tone modifier. Fix that.
* Fix backspace-deletes-character for EmojiMatthias Clasen2017-08-151-3/+11
| | | | | | | | We want to delete the entire cluster if it is an Emoji. To do so, look at prev_GB_type to find Emoji. This fixes backspacing for sequences like "man health worker" or "family: man, woman, boy, girl".
* break: Stop lumping ZWJ with ExtendMatthias Clasen2017-08-151-11/+26
| | | | | | | | | | ZWJ is treated as its own class in TR29, and us lumping them together and then manually checking wc == 0x200d in various places was causing us to inadvertedly inserting grapheme breaks in the middle of Emoji ZWJ sequences where they are not suppose to be. Add test cases to verify this.
* break.c: Fix indentation a bitMatthias Clasen2017-08-151-97/+96
| | | | | Messed up whitespace makes this unwieldy function even harder to read.
* Update pango_default_break function for Sentence BoundaryPeng Wu2017-07-311-443/+305
| | | | | | | Re-write the code for Sentence Boundary, and use the code style like Grapheme Boundary and Word Boundary. https://bugzilla.gnome.org/show_bug.cgi?id=782813
* Update pango_default_break function for Word BoundaryPeng Wu2017-07-311-16/+59
| | | | | | | Improve Word Boundary Rule for Hebrew_Letter, Single_Quote, Double_Quote and Regional Indicator. https://bugzilla.gnome.org/show_bug.cgi?id=782813
* Update pango_default_break function for Emoji ZWJ sequencePeng Wu2017-07-311-1/+116
| | | | | | Support Grapheme Boundaries Rule GB10, GB11, GB12 and GB13. https://bugzilla.gnome.org/show_bug.cgi?id=782813
* Avoid deprecation warningsMatthias Clasen2016-08-291-0/+2
| | | | | Now that we're using new-style deprecations, we have to fight a little harder to get rid of them inside pango.
* Avoid some overhead in pango_default_breakMatthias Clasen2015-09-131-4/+14
| | | | | We already have the Unicode type, so we can determine isspace without doing the full type determination again.
* Use g_unichar_get_script directlyMatthias Clasen2015-09-121-1/+1
| | | | Instead of going through a wrapper.
* Revert "Use UTF-8 pragma for MSVC"Behdad Esfahbod2015-04-141-4/+0
| | | | | | | This reverts commit c8b1d5bea67155ae51cb9a145d43df79a52faeb4. See discussion: https://bugzilla.gnome.org/show_bug.cgi?id=747772
* Use UTF-8 pragma for MSVCBehdad Esfahbod2015-04-131-0/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=747772
* MinorBehdad Esfahbod2015-04-061-1/+1
|
* Fix regression after 137832fa931e875b900dedd1c8909b46d1f7e8adBehdad Esfahbod2015-04-061-2/+2
|
* Fix tailoring of run boundary break propertiesBehdad Esfahbod2015-04-061-6/+7
| | | | I have no idea how this was never caught before.
* [modules] Move language modules in source tree and remove modules/Behdad Esfahbod2015-04-041-12/+74
| | | | | | | This should complete the kill-modules effort. What is left is leftover removal and unbreaking stuff. Bug 733882 - Kill Pango modules, engines, and config files
* [break] Call language engine on each script changeBehdad Esfahbod2015-04-041-27/+4
| | | | In preparation for merging all language engines into one.
* Avoid uninitialized memoryMatthias Clasen2015-02-101-0/+1
| | | | | | | | pango_default_break() was not clearing the is_char_break field, causing unwanted breaks in the middle of clusters, occasionally. Patch by Gene Hightower, https://bugzilla.gnome.org/show_bug.cgi?id=744118
* Add many missing nullability annotations.Evan Nemerson2014-10-161-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=731022
* Bug 700577 - Support invalid UTF-8 chars in pango_find_paragraph_boundary()Behdad Esfahbod2013-05-271-1/+1
|
* don't break words between a letter adjacent to a numberJosé Aliste2013-05-021-17/+2
| | | | | | | Newer Unicode specs (6.2 for instance) say that one should not break between letter or numbers that are adjacent. This also makes us to match word selection with many text capable apps.
* Fix grapheme boundaries of surrogates and unassigned default ignorablesBehdad Esfahbod2012-12-021-0/+10
|