Review Request 127843: Properly remove composed characters

Dominik Haumann dhaumann at kde.org
Sat May 7 09:40:15 UTC 2016



> On May 5, 2016, 10:07 a.m., Jan Grulich wrote:
> > Looks that review board cannot handle indic characters. I posted them here: https://paste.kde.org/piptzo584
> 
> Dominik Haumann wrote:
>     I guess backspace should remove the entire character, i.e. as much as when navigating with the cursor, right?
>     
>     There is also a function called bool KTextEditor::Document::isValidTextPosition(). This function returns false, if you are inside a surrogate character, i.e. two 16bit QChars give one 32bit character. But as I understand, this would not help here?

Answering myself: isValidTextPosition() is already used in that context, so that does obviously not help...


- Dominik


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/127843/#review95199
-----------------------------------------------------------


On May 5, 2016, 10:53 a.m., Jan Grulich wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/127843/
> -----------------------------------------------------------
> 
> (Updated May 5, 2016, 10:53 a.m.)
> 
> 
> Review request for Kate, KDE Frameworks, Christoph Cullmann, and Dominik Haumann.
> 
> 
> Repository: ktexteditor
> 
> 
> Description
> -------
> 
> When using Indic locales composed characters are not properly removed. Pressing "delete" or "backspace" should remove the entire composed character and not only one base character. You can see how it should behave when using another text editor (e.g. libreoffice)
> 
> Can be tested with these words: ?????????? or ??????????? or ????????
> 
> Technical details:
> I'm not really sure whether exporting current text layout is the right way to do this, I found that this is used when calling moveChar() which moves the cursor exactly by one composed character so I was trying to find a way to do it similarly.
> 
> 
> Diffs
> -----
> 
>   src/document/katedocument.cpp 73778a1 
>   src/view/kateview.h 08db0df 
>   src/view/kateview.cpp fda6b2d 
> 
> Diff: https://git.reviewboard.kde.org/r/127843/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Jan Grulich
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20160507/feaffb76/attachment.html>


More information about the Kde-frameworks-devel mailing list