box_lib: correct filter for win keys in editbox

git-svn-id: svn://kolibrios.org@7502 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
b00bl1k 2018-10-24 19:41:08 +00:00
parent dc82ad6812
commit 9bdda6b839

View File

@ -1,4 +1,4 @@
macro use_key_no_process up,down,super,esc,enter,tab,numl,capsl,scrolll macro use_key_no_process up,down,esc,enter,tab,numl,capsl,scrolll
{ {
if up eq if up eq
else else
@ -10,11 +10,6 @@ else
cmp ah,177 cmp ah,177
jz edit_box.editbox_exit jz edit_box.editbox_exit
end if end if
if super eq
else
cmp ah,148 ;Super (Win logo)
jz edit_box.editbox_exit
end if
if esc eq if esc eq
else else
cmp ah,27 ;ESC - ª« ¢¨è  )) cmp ah,27 ;ESC - ª« ¢¨è  ))
@ -47,6 +42,8 @@ else
end if end if
} }
SCAN_LWIN_RELEASE = 0xDB
SCAN_RWIN_RELEASE = 0xDC
align 16 align 16
edit_box: edit_box:
@ -138,23 +135,29 @@ edit_box_key:
jz edit_box_key.end jz edit_box_key.end
cmp ah,185 ;insert cmp ah,185 ;insert
jz edit_box_key.insert jz edit_box_key.insert
; ª®¬¡¨­ æ¨¨ Ctrl + ª« ¢¨è 
; get scancode in ah
ror eax,8
; check for ctrl+ combinations
test word ed_flags,ed_ctrl_on test word ed_flags,ed_ctrl_on
jz @f jz @f
; ¯à®¢¥àª  ᪠­ª®¤ 
ror eax,8
cmp ah,45 ; Ctrl + X cmp ah,45 ; Ctrl + X
je edit_box_key.ctrl_x je edit_box_key.ctrl_x
cmp ah,46 ; Ctrl + C cmp ah,46 ; Ctrl + C
je edit_box_key.ctrl_c je edit_box_key.ctrl_c
cmp ah,47 ; Ctrl + V cmp ah,47 ; Ctrl + V
je edit_box_key.ctrl_v je edit_box_key.ctrl_v
rol eax,8
@@: @@:
cmp ah,SCAN_LWIN_RELEASE
jz edit_box.editbox_exit
cmp ah,SCAN_RWIN_RELEASE
jz edit_box.editbox_exit
; restore ascii code
rol eax,8
;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;‡ £«ã誠 ­  ®¡à ¡®âªã ª« ¢¨è ¢¢¥àå ¨ ¢­¨§ â.¥. ¯à¨ ®¡­ à㦥­¨¨ íâ¨å ª®¤®¢ ¯à®¨á室¨â ¢ë室 ¨§ ®¡à ¡®â稪  ;‡ £«ã誠 ­  ®¡à ¡®âªã ª« ¢¨è ¢¢¥àå ¨ ¢­¨§ â.¥. ¯à¨ ®¡­ à㦥­¨¨ íâ¨å ª®¤®¢ ¯à®¨á室¨â ¢ë室 ¨§ ®¡à ¡®â稪 
;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
use_key_no_process up,down,super,esc,enter,tab,numl,capsl,scrolll use_key_no_process up,down,esc,enter,tab,numl,capsl,scrolll
;--- ­ ¦ â  ¤àã£ ï ª« ¢¨è  --- ;--- ­ ¦ â  ¤àã£ ï ª« ¢¨è  ---
;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;<3B>஢¥àª  ãáâ ­®¢«¥­ «¨ ä« £ ¯à¨ ª®â®à®¬ ­ã¦­® ¢ë¢®¤¨âì ⮫쪮 æ¨äàë ¢ ­ã¦­®¬ ¡®ªá¥, ¥á«¨ â ª®© ­¥®¡å®¤¨¬®á⨠­¥â, ­ã¦­® § ª®¬¥­â¨à®¢ âì ¬ ªà®á ;<3B>஢¥àª  ãáâ ­®¢«¥­ «¨ ä« £ ¯à¨ ª®â®à®¬ ­ã¦­® ¢ë¢®¤¨âì ⮫쪮 æ¨äàë ¢ ­ã¦­®¬ ¡®ªá¥, ¥á«¨ â ª®© ­¥®¡å®¤¨¬®á⨠­¥â, ­ã¦­® § ª®¬¥­â¨à®¢ âì ¬ ªà®á