Bug 416508 - cursor moving further and further away from last typed character
Summary: cursor moving further and further away from last typed character
Status: RESOLVED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-01-20 19:36 UTC by victor03303
Modified: 2022-08-27 01:09 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description victor03303 2020-01-20 19:36:06 UTC
SUMMARY

STEPS TO REPRODUCE
1. make sure yakuake boots automatically alongside with Lubuntu
2. make the yakuake dropdown terminal appear
3. start typing a longer sized command
4. double click on random words and watch them jumping away

OBSERVED RESULT
https://drive.google.com/open?id=1ldbBNmIhWHmw3QzoUyjqVOS6dyDuyS7O

the cursor moves further and further from last typed character
after a word has been double clicked on it jumps to the left
 (no idea what happens in languages written from left to right)

EXPECTED RESULT
the block cursor should remain +1 place after last typed character
moving the block cursor using the arrow keys shouldn't influence the typed character's position in the terminal
double clicking on words shouldn't influence their location in the terminal

SOFTWARE/OS VERSIONS
Windows: definitely not ;)
Linux/KDE Plasma: Lubuntu 19.10
Qt Version: 5.12.4
LXQT version: 0.14.1

Yakuake version: 19.08.1
Comment 1 victor03303 2020-01-20 19:38:54 UTC
here
(no idea what happens in languages written from left to right)
i meant 
(no idea what happens in languages written from right to left)
sorry
Comment 2 Eike Hein 2020-02-02 13:32:43 UTC
The terminal area in Yakuake is provided by Konsole.
Comment 3 Justin Zobel 2020-11-05 00:15:45 UTC
Thanks for the report, I've just tested on yakuage from git master and I cannot reproduce this.

Are you able to please retest and confirm if this is an issue, thanks.

If it is still occurring can you please upload a new video as the original link says the video is in your Google Drive bin.
Comment 4 victor03303 2020-11-05 14:26:11 UTC
(In reply to Eike Hein from comment #2)
> The terminal area in Yakuake is provided by Konsole.

Excuse me. Never noticed someone replied. 
Do you mean that this report is filed in a wrong place?
Comment 5 victor03303 2020-11-05 14:33:00 UTC
(In reply to Justin Zobel from comment #3)
> Thanks for the report, I've just tested on yakuage from git master and I
> cannot reproduce this.
> 
> Are you able to please retest and confirm if this is an issue, thanks.
> 
> If it is still occurring can you please upload a new video as the original
> link says the video is in your Google Drive bin.

Since the time I reported it I never expected someone would still look at this which is why I deleted it. But thank you!

I made a new video. Make sure to select 1018p while playing.
https://drive.google.com/file/d/1zOtbwsUQMRuA43SWbUR6l8aN6zt5m51g/view?usp=sharing

Now I'm on Lubuntu 20.10, LXQt 0.15.0, Qt version 15.4.2 
But it's still exactly the same.
Comment 6 Bug Janitor Service 2020-11-20 04:33:48 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 7 victor03303 2020-11-21 20:32:35 UTC
One could watch it happen
Comment 8 Bug Janitor Service 2022-08-06 18:51:41 UTC
A possibly relevant merge request was started @ https://invent.kde.org/utilities/konsole/-/merge_requests/722
Comment 9 Kurt Hindenburg 2022-08-27 01:09:59 UTC
Git commit 76f879cd70fb494ab2334d2660b34679546f3d9d by Kurt Hindenburg, on behalf of Matan Ziv-Av.
Committed on 26/08/2022 at 19:24.
Pushed by hindenburg into branch 'master'.

Draw characters in exact positions

QT can't be made to draw monospaced text (if the font does not cooperate),
so avoid combining characters, using a QPainter::drawText() call for each
character.

For bidi text support this change requires konsole to reorder and reshape
the characters. This is done using the ICU library (which QT also uses).

This change allows for some improvements related to text rendering:

- More precise bidi reordering, which is no longer changed by characters'
  attributes and selection.
- underlines drawn separately from the text, allowing for differing
  underline modes (double, curly, dashed, dotted, colored).
- Overriding font for emoji characters.

This commit fixes a few bugs and addresses a lot more:

Feature requests: More standard conforming RTL and various underlines:
Related: bug 403729, bug 387811, bug 452087, bug 425973, bug 430822, bug 442742, bug 441037, bug 430822, bug 440070, bug 450017, bug 445846, bug 453086, bug 381593, bug 451716

Using non-monospace font:



Emoji:

Regression: devanagari rendering

M  +2    -0    CMakeLists.txt
M  +1    -0    src/CMakeLists.txt
M  +47   -25   src/FontDialog.cpp
M  +2    -1    src/FontDialog.h
M  +127  -23   src/Screen.cpp
M  +18   -5    src/Screen.h
M  +28   -13   src/Vt102Emulation.cpp
M  +0    -29   src/autotests/CharacterTest.cpp
M  +0    -1    src/autotests/CharacterTest.h
M  +1    -1    src/autotests/TerminalCharacterDecoderTest.cpp
M  +119  -29   src/characters/Character.h
M  +1    -1    src/characters/Hangul.cpp
M  +5    -4    src/decoders/HTMLDecoder.cpp
M  +1    -1    src/decoders/PlainTextDecoder.cpp
M  +3    -0    src/profile/Profile.cpp
M  +29   -0    src/profile/Profile.h
M  +101  -6    src/terminalDisplay/TerminalDisplay.cpp
M  +7    -0    src/terminalDisplay/TerminalDisplay.h
M  +42   -0    src/terminalDisplay/TerminalFonts.cpp
M  +12   -0    src/terminalDisplay/TerminalFonts.h
M  +542  -269  src/terminalDisplay/TerminalPainter.cpp
M  +40   -13   src/terminalDisplay/TerminalPainter.h
M  +2    -0    src/widgets/EditProfileAdvancedPage.ui
M  +113  -3    src/widgets/EditProfileAppearancePage.ui
M  +61   -3    src/widgets/EditProfileDialog.cpp
M  +6    -1    src/widgets/EditProfileDialog.h

https://invent.kde.org/utilities/konsole/commit/76f879cd70fb494ab2334d2660b34679546f3d9d