hanmyohtwe / waitzar

Automatically exported from code.google.com/p/waitzar
Other
0 stars 0 forks source link

"PositionAtCaret" should not be used to lock the windows together. Seperate the two! #177

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Switch to Shan. Now switch immediately back to Myanmar. Type a letter ("k"). 
The main window will show for about 3 seconds and then finally repaint properly.

Low priority (few users switch, it doesn't crash) but I want to trace this in 
debug mode just in case it's an easy fix.

Original issue reported on code.google.com by seth.h...@gmail.com on 12 Dec 2010 at 3:10

GoogleCodeExporter commented 8 years ago
This doesn't occur with breakpoints set. Fun to debug....

Original comment by seth.h...@gmail.com on 12 Dec 2010 at 4:24

GoogleCodeExporter commented 8 years ago
Sadly, it now seems to happen with ANY change (encoding, lang, input).

Original comment by seth.h...@gmail.com on 12 Dec 2010 at 4:26

GoogleCodeExporter commented 8 years ago
Ok, I tracked the SVN for this down. It's SO weird. Basically, in the "move" 
function, if you even _access_ "sentenceWindow" before "mainWindow" (like to 
check a boolean flag) the program hangs.

I fixed this, but am leaving this bug open, since the behavior is so strange. 
Anyway, we shouldn't really be using "positionAtCaret()" to glue the windows 
together anyway, so I'm pretty confident this is just old+new code triggering a 
weird dependency problem. But it's so.... odd to have it pop up under these 
conditions. 

Original comment by seth.h...@gmail.com on 12 Dec 2010 at 5:28

GoogleCodeExporter commented 8 years ago

Original comment by seth.h...@gmail.com on 14 Dec 2010 at 9:06