Subversion Repositories Kolibri OS

Rev

Rev 2424 | Rev 2455 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2424 Rev 2426
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
4
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
5
;; Distributed under terms of the GNU General Public License    ;;
5
;; Distributed under terms of the GNU General Public License    ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 2424 $
8
$Revision: 2426 $
9
 
9
 
10
WINDOW_MOVE_AND_RESIZE_FLAGS = \
10
WINDOW_MOVE_AND_RESIZE_FLAGS = \
11
  mouse.WINDOW_RESIZE_N_FLAG + \
11
  mouse.WINDOW_RESIZE_N_FLAG + \
Line 462... Line 462...
462
        xor     eax, eax
462
        xor     eax, eax
463
        ret
463
        ret
Line 464... Line 464...
464
 
464
 
465
.FlagAutoReset: ; retvals: BgrRedraw=5, Mouse=6, IPC=7, Stack=8, Debug=9
465
.FlagAutoReset: ; retvals: BgrRedraw=5, Mouse=6, IPC=7, Stack=8, Debug=9
466
        cmp     eax, 5; Mouse 5+1=6
466
        cmp     eax, 5; Mouse 5+1=6
467
        jne     @f
467
        jne     .no_mouse_check
-
 
468
        push    eax
-
 
469
        mov     eax, [TASK_BASE]
-
 
470
        mov     eax, [eax + TASKDATA.event_mask]
-
 
471
        test    eax, 0x80000000 ; bit 31: active/inactive filter f.40
-
 
472
        jz      @f
-
 
473
        pop     eax
-
 
474
        jmp     .no_mouse_check
468
        push    eax
475
@@:
469
; If the window is captured and moved by the user, then no mouse events!!!
476
; If the window is captured and moved by the user, then no mouse events!!!
470
        mov     al, [mouse.active_sys_window.action]
477
        mov     al, [mouse.active_sys_window.action]
471
        and     al, WINDOW_MOVE_AND_RESIZE_FLAGS
478
        and     al, WINDOW_MOVE_AND_RESIZE_FLAGS
472
        test    al, al
479
        test    al, al
473
        pop     eax
480
        pop     eax
474
        jnz     .loop
481
        jnz     .loop
475
@@:
482
.no_mouse_check:
476
        btr     [ebx+APPDATA.event_mask], eax
483
        btr     [ebx+APPDATA.event_mask], eax
477
        jnc     .loop
484
        jnc     .loop
478
  .result:      ; retval = eax+1
485
  .result:      ; retval = eax+1
479
        inc     eax
486
        inc     eax