On Sun, 1 Apr 2012 19:23:06 +0900 Kim Shinwoo <[email protected]> said:
i'm looking at _ecore_win32_window_procedure().
for WM_KEYDOWN + WM_SYSKEYDOWN
_ecore_win32_event_handle_key_press(data, 1);
and for WM_CHAR + WM_SYSCHAR
_ecore_win32_event_handle_key_press(data, 0);
these are the ONLY 2 places int he ecore_win32 code i find that call this.
(quick grep).
for the 2nd we are ok - is_keystroke is 0 so your new code is never triggered,
so we get a key down only as before. for the 1st we now get a key down
immediately followed by a key up. can ou walk me through the windows event
order when you get key repeats?
in x11 it's easy. you get:
down, up, down, up, down, up...
always the same # of downs and ups. you can guess its a key repeat *IF* the
timestamp of the next key down == timestamp of the same key up before it. now
walk me through the windows input events. i dont see you using
_ecore_win32_event_keystroke_get() to decide this is_keystroke valued. its
hardcoded still given your patch.
> Yes, you are right, but there is something different..
>
> The _ecore_win32_event_keystroke_get(); rules adding KEY_UP/DOWN
> events by its return value.
> If the key which occurs WM_KEYDOWN and WM_CHAR messages is pressed,
> the _ecore_win32_event_keystroke_get(); returns 0
> So, down + up event occur not the down, down + up.
>
> WM_CHAR message
> Posted to the window with the keyboard focus when a WM_KEYDOWN message
> is translated by the TranslateMessage function. The WM_CHAR message
> contains the character code of the key that was pressed.
>
> Umm.. but the wrong smell is from WM_KEYUP message. We can see.. down + up,
> up. Then see you with revised patch. Thanks for your response.
>
>
> 2012/3/30 Carsten Haitzler <[email protected]>:
> > On Fri, 30 Mar 2012 00:00:09 +0900 Kim Shinwoo <[email protected]>
> > said:
> >
> > well i meant - the is_keystroke param. looking at the events, WM_KEYDOWN and
> > WM_SYSKEYDOWN set it to 1, WM_CHAR and WM_SYSCHAR set it to 0 - is this
> > correct. windows sends the first 2 events ona key press and the 2nd 2 on a
> > release? because if this is the case you now get down (no up) on the first
> > pair, and down + up on the 2nd. so u see down, down, up... that smells
> > wrong to me... :/
> >
> >> Umm.. because the key event works like that on the Ubuntu.
> >> You can check by adding two callbacks to one object for key_down and
> >> key_up. When you hold down the key which makes WM_CHAR/SYSCHAR message,
> >> both callbacks will be called. And the is_keystroke is true, if
> >> WM_CHAR/SYSCHAR message fires.
> >>
> >> 2012년 3월 29일 목요일에 Carsten Haitzler<[email protected]>님이 작성:
> >> > On Wed, 28 Mar 2012 16:16:54 +0900 Kim Shinwoo <[email protected]>
> >> said:
> >> >
> >> > what is this is_keystroke stuff an why should it fire a key up (on
> >> wince/32)
> >> > during a key press?
> >> >
> >> >> ah.. yes, you right the patch to fire the key-up event no the mouse-up
> >> >> event. :)
> >> >>
> >> >> 2012/3/28 Vincent Torri <[email protected]>:
> >> >> > On Wed, Mar 28, 2012 at 4:23 AM, Kim Shinwoo <[email protected]>
> >> wrote:
> >> >> >> Dear All, Hello.
> >> >> >>
> >> >> >> Please review the previous patch first which is related with the WIN
> >> key.
> >> >> >
> >> >> > it's already in svn :-)
> >> >> >
> >> >> >> Even though there is no answer to the previous question, I have made
> >> >> >> and attached a patch to fire the mouse-up event when you hold down
> >> >> >> keys which make WM_CHAR and WM_SYSCHAR.
> >> >> >> Please review the patch and give any feedbacks. Thanks. ;)
> >> >> >
> >> >> > hmm, you're talking about mouse up but the event is a keyboard one
> >> >> >
> >> >> > Vincent
> >> >> >
> >> >> >
> >> ------------------------------------------------------------------------------
> >> >> > This SF email is sponsosred by:
> >> >> > Try Windows Azure free for 90 days Click Here
> >> >> > http://p.sf.net/sfu/sfd2d-msazure
> >> >> > _______________________________________________
> >> >> > enlightenment-devel mailing list
> >> >> > [email protected]
> >> >> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >> >>
> >> >>
> >> ------------------------------------------------------------------------------
> >> >> This SF email is sponsosred by:
> >> >> Try Windows Azure free for 90 days Click Here
> >> >> http://p.sf.net/sfu/sfd2d-msazure
> >> >> _______________________________________________
> >> >> enlightenment-devel mailing list
> >> >> [email protected]
> >> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >> >>
> >> >
> >> >
> >> > --
> >> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> >> > The Rasterman (Carsten Haitzler) [email protected]
> >> >
> >> >
> >
> >
> > --
> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> > The Rasterman (Carsten Haitzler) [email protected]
> >
>
--
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler) [email protected]
------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel