Subversion Repositories Kolibri OS

Rev

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

Rev 2408 Rev 2411
Line 67... Line 67...
67
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
67
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 68... Line 68...
68
 
68
 
69
include 'macros.inc'
69
include 'macros.inc'
Line 70... Line 70...
70
include 'struct.inc'
70
include 'struct.inc'
Line 71... Line 71...
71
 
71
 
Line 72... Line 72...
72
$Revision: 2408 $
72
$Revision: 2411 $
Line 3077... Line 3077...
3077
 
3077
 
3078
nocpustart:
3078
nocpustart:
3079
        cmp     [mouse_active], 1
3079
        cmp     [mouse_active], 1
3080
        jne     mouse_not_active
3080
        jne     mouse_not_active
-
 
3081
        mov     [mouse_active], 0
3081
        mov     [mouse_active], 0
3082
 
-
 
3083
        xor     edi, edi
-
 
3084
        mov     ebx, CURRENT_TASK
3082
        xor     edi, edi
3085
 
3083
        mov     ecx, [TASK_COUNT]
3086
        mov     ecx, [TASK_COUNT]
3084
        movzx   eax, word [WIN_POS + ecx*2]     ; active window
3087
        movzx   eax, word [WIN_POS + ecx*2]     ; active window
Line 3085... Line 3088...
3085
        shl     eax, 8
3088
        shl     eax, 8
3086
 
3089
 
3087
align 4
3090
align 4
-
 
3091
.set_mouse_event:
3088
.set_mouse_event:
3092
        add     edi, 256
3089
        add     edi, 256
3093
        add     ebx, 32
Line 3090... Line 3094...
3090
        test    [edi+SLOT_BASE+APPDATA.event_filter], 1
3094
        test    [ebx+TASKDATA.event_mask], 0x80000000
3091
        jz      @F
3095
        jz      .set
3092
 
3096
 
3093
        cmp     eax, edi                        ; skip if filtration active
3097
        cmp     eax, edi                        ; skip if filtration active
-
 
3098
        jne     .skip
3094
        jne     .set_mouse_event
3099
.set:
Line 3095... Line 3100...
3095
@@:
3100
        or      [edi+SLOT_BASE+APPDATA.event_mask], 100000b
3096
        or      [edi+SLOT_BASE+APPDATA.event_mask], 100000b
3101
.skip:
3097
        loop    .set_mouse_event
3102
        loop    .set_mouse_event
Line 3361... Line 3366...
3361
        pop     ecx
3366
        pop     ecx
3362
        pop     eax
3367
        pop     eax
Line 3363... Line 3368...
3363
 
3368
 
Line 3364... Line 3369...
3364
        ret
3369
        ret
3365
 
3370
 
3366
 
3371
align 4
3367
set_app_param:
3372
set_app_param:
3368
        mov     edi, [TASK_BASE]
3373
        mov     edi, [TASK_BASE]
3369
        mov     eax, ebx
3374
        mov     eax, ebx