On Fri, May 18, 2007 at 12:38:19PM +0200, Abdelrazak Younes wrote:
> Martin Vermeer wrote:
> >On Fri, May 18, 2007 at 09:58:59AM +0200, Abdelrazak Younes wrote:
> >>Martin Vermeer wrote:
> >
> >...
> >
> >>>>>Another scenario: I am typing on my Nokia 770 Internet tablet 
> >>>>>over a
> >>>>>vnc connection. It does 'word completion', which is like very 
> >>>>>fast typing... and indeed, in LyX 1.4 characters get lost :-(
> >>>>>
> >>>>Fine, this is a case I haven't realized.
> >>>>Here it depends on the value isAutoRepeat() returns.
> >>>>When it is true it is possible that the keys are lost,
> >>>>but I assume that for lyx/Qt the word completion looks
> >>>>like a user input, then it should work.
> >>>Eh, what I meant was that _even without your patch_ LyX is 
> >>>dropping characters on the floor. Not good.
> >>Maybe this tablet uses Input Methods? In which case, 1.5 will be 
> >>better here. Try it.
> >
> >I did, and it is even worse, in an amusing way: if I type 'app', 
> >the
> >Nokia offers 'ropriate' and what gets inserted into LyX is
> >'aprropiate' -- the r has changed place ?!? Repeatable. Every time
> >I try. But when inserting into vim over ssh, e.g., (what I am 
> >doing now)
> >this does not happen.
> >
> >BTW what do you mean by 'input methods? Here I have a choice of 
> >virtual
> >keyboard and handwriting recognition. How is that relevant?
> 
> Input methods are used in the CJK world to help the writing. The 
> technique is very similar to autocompletion method. Try '-dbg key' 
> to see if it used. If yes, you should see things like 
> "preeditString = xxx" and "commitString = xxx".

Did that; not seeing them -- but see below.

> Abdel.
> 
> Maybe you could try to put some

Yes, maybe I could...  instead, I used '-dbg key' and entered
the strings 'appropriate' and 'laboratories' into an empty file.
by typing 'app' and 'lab' + completions.

What I got was 'apprropiate' and 'laboorraties'. The letters
that are present in duplicate in the completion string, are moved
to the front. Inspecting the debug output (attached) shows, that these
duplicate letters have 'isAutoRepeat=1' set...

Does this ring a bell?

- Martin 

virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=a isAutoRepeat=0 key=65
Setting key to 65, a
KeySym is a
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][A]
SelfInsert arg[`a']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=p isAutoRepeat=0 key=80
Setting key to 80, p
KeySym is p
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][P]
SelfInsert arg[`p']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=p isAutoRepeat=0 key=80
Setting key to 80, p
KeySym is p
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][P]
SelfInsert arg[`p']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=r isAutoRepeat=0 key=82
Setting key to 82, r
KeySym is r
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][R]
SelfInsert arg[`r']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=r isAutoRepeat=1 key=82
Setting key to 82, r
KeySym is r
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][R]
SelfInsert arg[`r']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=o isAutoRepeat=0 key=79
Setting key to 79, o
KeySym is o
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][O]
SelfInsert arg[`o']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=p isAutoRepeat=0 key=80
Setting key to 80, p
KeySym is p
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][P]
SelfInsert arg[`p']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=i isAutoRepeat=0 key=73
Setting key to 73, i
KeySym is i
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][I]
SelfInsert arg[`i']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=a isAutoRepeat=0 key=65
Setting key to 65, a
KeySym is a
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][A]
SelfInsert arg[`a']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=t isAutoRepeat=0 key=84
Setting key to 84, t
KeySym is t
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][T]
SelfInsert arg[`t']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=e isAutoRepeat=0 key=69
Setting key to 69, e
KeySym is e
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][E]
SelfInsert arg[`e']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=  isAutoRepeat=0 key=32
Setting key to 32,  
KeySym is space
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][Space]
SelfInsert arg[` ']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=l isAutoRepeat=0 key=76
Setting key to 76, l
KeySym is l
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][L]
SelfInsert arg[`l']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=a isAutoRepeat=0 key=65
Setting key to 65, a
KeySym is a
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][A]
SelfInsert arg[`a']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=b isAutoRepeat=0 key=66
Setting key to 66, b
KeySym is b
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][B]
SelfInsert arg[`b']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=o isAutoRepeat=0 key=79
Setting key to 79, o
KeySym is o
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][O]
SelfInsert arg[`o']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=o isAutoRepeat=1 key=79
Setting key to 79, o
KeySym is o
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][O]
SelfInsert arg[`o']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=r isAutoRepeat=0 key=82
Setting key to 82, r
KeySym is r
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][R]
SelfInsert arg[`r']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=r isAutoRepeat=1 key=82
Setting key to 82, r
KeySym is r
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][R]
SelfInsert arg[`r']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=a isAutoRepeat=0 key=65
Setting key to 65, a
KeySym is a
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][A]
SelfInsert arg[`a']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=t isAutoRepeat=0 key=84
Setting key to 84, t
KeySym is t
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][T]
SelfInsert arg[`t']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=i isAutoRepeat=0 key=73
Setting key to 73, i
KeySym is i
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][I]
SelfInsert arg[`i']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=e isAutoRepeat=0 key=69
Setting key to 69, e
KeySym is e
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][E]
SelfInsert arg[`e']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=s isAutoRepeat=0 key=83
Setting key to 83, s
KeySym is s
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][S]
SelfInsert arg[`s']
virtual void lyx::frontend::GuiWorkArea::keyPressEvent(QKeyEvent*) count=1 
text=  isAutoRepeat=0 key=32
Setting key to 32,  
KeySym is space
isOK is 1
isMod is 0
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
action first set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, 
lyx::key_modifier::state)action now set to [85]
void lyx::LyXFunc::processKeySym(lyx::KeySymbolPtr, lyx::key_modifier::state) 
Key [action=85][Space]
SelfInsert arg[` ']
Save changed document?
----------------------------------------
The document newfile11.lyx has unsaved changes.

Do you want to save the document or discard the changes?
Assuming answer is &Save
&Discard
&Cancel

Reply via email to