View Single Post
Old 03-25-2016, 03:22 AM   #30
sdjskr
Junior Member
sdjskr began at the beginning.
 
Posts: 8
Karma: 10
Join Date: Mar 2016
Device: ASUS ME70CX
Wink Hi KevinH,

Quote:
Originally Posted by KevinH View Post
Hi sdjskr

I spent some time trying to track this down. I simply can not recreate this at all. When you hit return the file is getting a simple carriage return linefeed pair as expected. No strange chars are being generated.

It could be a lost focus issue. So when the bug happens in BookView, please try clicking the "<>" icon to switch to CodeView and then back? Does the cursor come back?

If not, please try clicking the "<>" icon again to switch to CodeView and then make some small meaningless change in CodeView and then back to BookView? Does this make the cursor return?

If not caused by the widget losing focus, I did find some Qt code for QWebPage that had the following method:

Code:
void QWebPagePrivate::inputMethodEvent(QInputMethodEvent *ev)
that shows when an QinputMethodEvent has a cursor attribute with 0 length it can actually make the cursor invisible:

Code:
case QInputMethodEvent::Cursor: {
            frame->selection()->setCaretVisible(a.length); //if length is 0 cursor is invisible
So if not focus related it appears that somehow your input method is generating events for the cursor with 0 length attributes that are making the cursor invisible. I am just not sure why. Your video shows that the cursor position is still kept, and works but that the cursor itself was simply made invisible.

Since it appears that other Windows users can not recreate your bug either, my guess it is some conflict between other Windows system software you are using and the Qt library that comes with Sigil.

Any bug would be inside Qt and not something Sigil could fix. That said, we may be able to intercept and filter out that event if we can figure out what is generating it.

KevinH
Hi, KevinH. Thank you for the study to nail this issue down.

Quote:
It could be a lost focus issue. So when the bug happens in BookView, please try clicking the "<>" icon to switch to CodeView and then back? Does the cursor come back?


As you can see in this video, the cursor comes back after switching between two VIEWs. But, it goes away in BookView as soon as I press Space bar or Enter while typing Korean.

And I agree with your point that the cursor still exists, but not showing or losing focus, because I can still type Korean without the cursor.

My guess is that the issue is somewhat related to QWebView that is deprecated in Qt 5.6 now. I know Qt 5.4's QWebView was used to create Sigil. I've found some people having discussion of the topic. They are saying the disappearing caret, commonly occurred to one who is using QWebView. They are also talking about Sigil.

link

Which means, the cursor problem is not my own issue, some other Korean using Sigil is having the same problem.

Anyway, I'm certain there must be some method to work around. I can try your newly compiled version applied with your idea for Windows 10 64bit on my machine. You can just send it to me at bc399@daum.net.

And I am expecting some refreshed manual to compile the source code from Sigil in Windows environment. Someone promised it. I also want to find some clue to resolve this issue.
sdjskr is offline   Reply With Quote