Bug 399227

Summary: Text Tool does not save any SVG information or Multi-Line
Product: [Applications] krita Reporter: sovrack
Component: Tool/TextAssignee: Dmitry Kazakov <dimula73>
Status: RESOLVED FIXED    
Severity: normal CC: halla, sovrack, yncke
Priority: NOR    
Version: 4.1.3   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: example of the bug
In regards to the color bug

Description sovrack 2018-09-29 21:32:55 UTC
Created attachment 115318 [details]
example of the bug

SUMMARY
The text tool still does not work at all for comic creation, as nothing can be edited without it reverting to one long line of text. It also does not save the color of what it was previously. Editing text also gives it a black line around the text by default, to fix this one has to click on it and then the "Remove Line" button in "Tool Options".

STEPS TO REPRODUCE
1. Make any text with atleast two lines.
2. Use any effect; such as changing the color, or font of a few words; and the 
information will not be saved when going back to edit it later.
3. I have listed multiple examples of it in the images.

OBSERVED RESULT


EXPECTED RESULT


SOFTWARE VERSIONS
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
Comment 1 sovrack 2018-09-29 21:33:57 UTC
Created attachment 115319 [details]
In regards to the color bug
Comment 2 Halla Rempt 2018-10-01 08:32:35 UTC
Hi, 

Could you test with the latest nightly master build? The report says your OS is linux, so that would be https://binary-factory.kde.org/job/Krita_Nightly_Appimage_Build/ . If that's wrong and you're on Window, please check https://binary-factory.kde.org/job/Krita_Nightly_Windows_Build/ . If you can still reproduce it, Dmitry asks whether you could make a screen recording to show the problem -- that would be helpful to him.
Comment 3 Dmitry Kazakov 2018-10-01 08:33:50 UTC
Okay, no video needed. I managed to reproduce it finally.
Comment 4 Halla Rempt 2018-10-02 12:51:08 UTC
*** Bug 399288 has been marked as a duplicate of this bug. ***
Comment 5 Dmitry Kazakov 2018-10-02 16:47:46 UTC
Git commit bde1adee05bd82297570344af8bc39238d1ac2bb by Dmitry Kazakov.
Committed on 02/10/2018 at 16:12.
Pushed by dkazakov into branch 'master'.

Fix removing extra whitespace at the connection of two xml markup tags

Basically, now we handle all the markup instead of delegating that to Qt.
It fixes the problem of eating elements like 'aaa<tspan> </tspan>bbb'.
Now we traverse the DOM tree extensively to handle that correctly.

M  +2    -3    libs/flake/KoMarkerCollection.cpp
M  +3    -4    libs/flake/KoSvgPaste.cpp
M  +2    -3    libs/flake/resources/KoGamutMask.cpp
M  +2    -3    libs/flake/resources/KoSvgSymbolCollectionResource.cpp
M  +37   -0    libs/flake/svg/SvgParser.cpp
M  +5    -0    libs/flake/svg/SvgParser.h
M  +3    -2    libs/flake/tests/SvgParserTestingUtils.h
M  +1    -2    libs/flake/tests/TestKoDrag.cpp
M  +64   -0    libs/flake/tests/TestSvgText.cpp
M  +1    -0    libs/flake/tests/TestSvgText.h
M  +-    --    libs/flake/tests/data/svg_render/load_text_outline.png
M  +-    --    libs/flake/tests/data/svg_render/load_text_outline_converted_to_path.png
M  +-    --    libs/flake/tests/data/svg_render/load_text_right_to_left.png
A  +-    --    libs/flake/tests/data/svg_render/load_text_whitespace.png
M  +73   -22   libs/flake/text/KoSvgTextChunkShape.cpp
M  +4    -3    libs/flake/text/KoSvgTextShapeMarkupConverter.cpp
M  +6    -6    libs/store/KoXmlWriter.cpp
M  +1    -1    libs/store/KoXmlWriter.h
M  +2    -3    libs/ui/flake/kis_shape_layer.cc

https://commits.kde.org/krita/bde1adee05bd82297570344af8bc39238d1ac2bb
Comment 6 Dmitry Kazakov 2018-10-02 16:47:46 UTC
Git commit 79600d5811b8a4cb17823617d20260fde4296c98 by Dmitry Kazakov.
Committed on 02/10/2018 at 16:12.
Pushed by dkazakov into branch 'master'.

Fix collapsing multiline text because of extra markup appearing in the line

M  +3    -1    libs/flake/text/KoSvgTextShapeMarkupConverter.cpp

https://commits.kde.org/krita/79600d5811b8a4cb17823617d20260fde4296c98
Comment 7 Dmitry Kazakov 2018-10-02 19:27:07 UTC
Git commit 3986931cbabb1fe072a5dbc2ac9433a6892a6b9f by Dmitry Kazakov.
Committed on 02/10/2018 at 17:19.
Pushed by dkazakov into branch 'krita/4.1'.

Fix collapsing multiline text because of extra markup appearing in the line

M  +3    -1    libs/flake/text/KoSvgTextShapeMarkupConverter.cpp

https://commits.kde.org/krita/3986931cbabb1fe072a5dbc2ac9433a6892a6b9f
Comment 8 Dmitry Kazakov 2018-10-02 19:27:07 UTC
Git commit 6ea4a076d92c7b2a2819a416143578b47392f6c0 by Dmitry Kazakov.
Committed on 02/10/2018 at 17:18.
Pushed by dkazakov into branch 'krita/4.1'.

Fix removing extra whitespace at the connection of two xml markup tags

Basically, now we handle all the markup instead of delegating that to Qt.
It fixes the problem of eating elements like 'aaa<tspan> </tspan>bbb'.
Now we traverse the DOM tree extensively to handle that correctly.

M  +2    -3    libs/flake/KoMarkerCollection.cpp
M  +3    -4    libs/flake/KoSvgPaste.cpp
M  +2    -3    libs/flake/resources/KoSvgSymbolCollectionResource.cpp
M  +37   -0    libs/flake/svg/SvgParser.cpp
M  +5    -0    libs/flake/svg/SvgParser.h
M  +3    -2    libs/flake/tests/SvgParserTestingUtils.h
M  +1    -2    libs/flake/tests/TestKoDrag.cpp
M  +64   -0    libs/flake/tests/TestSvgText.cpp
M  +1    -0    libs/flake/tests/TestSvgText.h
M  +-    --    libs/flake/tests/data/svg_render/load_text_outline.png
M  +-    --    libs/flake/tests/data/svg_render/load_text_outline_converted_to_path.png
M  +-    --    libs/flake/tests/data/svg_render/load_text_right_to_left.png
A  +-    --    libs/flake/tests/data/svg_render/load_text_whitespace.png
M  +73   -22   libs/flake/text/KoSvgTextChunkShape.cpp
M  +4    -3    libs/flake/text/KoSvgTextShapeMarkupConverter.cpp
M  +6    -6    libs/store/KoXmlWriter.cpp
M  +1    -1    libs/store/KoXmlWriter.h
M  +2    -3    libs/ui/flake/kis_shape_layer.cc

https://commits.kde.org/krita/6ea4a076d92c7b2a2819a416143578b47392f6c0