Non-breaking space has fixed width - if you use non breaking space in text which justified alignment, very often occure design disproportion between standard (variable-width) space and non-breaking (fixed-width) space.
Non-breaking space should has variable-width by default.
Function of Non-breaking space with fixed width could be saved and entered by another keyboadrd shortcut.
Problem does not occure when you use text alignment to left/cenet/right - only when use justified alignment.
Problem occured on all (Win/Mac/Linux) platforms.
Created attachment 62223 [details]
Improper handling of u+2060 in line breaking algorithm
In the attached file any attempt to add some spaces in the second line (apart from in the first word) results in moving additional material from the third line back to the second.
Instead of changing the current behaviour of the u+00a0 character, it may be considearable to use u+2060 + u+0020 (zero-width-word-joiner plus ordinary space). Unfortunately, the algorithm currently implemented for placing ilne breaks inside a paragraph, behaves oddly in this situation.
This is probably because the usage of u+2060 character is regarded th the final stage of the algorithm loop, and does not take into account the possibility of succeeding space.
See i18npool/source/breakiterator/breakiterator_unicode.cxx file in the source tree, method BreakIterator_Unicode::getLineBreak(), lines 405--420.
*** This bug has been marked as a duplicate of bug 41652 ***
(In reply to comment #1)
> Created attachment 62223 [details]
> Improper handling of u+2060 in line breaking algorithm
This seems like a separate issue and should probably be filed as a new bug.
Filed as https://bugs.freedesktop.org/show_bug.cgi?id=57652