Subversion Repositories Kolibri OS

Rev

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

Rev 9715 Rev 9848
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 9715 $
8
$Revision: 9848 $
9
 
9
 
10
 
10
 
Line 115... Line 115...
115
        mov     eax, [d_width_calc_area + eax*4]
115
        mov     eax, [d_width_calc_area + eax*4]
Line 116... Line 116...
116
 
116
 
117
        add     eax, [_display.win_map]
117
        add     eax, [_display.win_map]
118
        movzx   edx, byte [ebx + eax]
118
        movzx   edx, byte [ebx + eax]
-
 
119
        shl     edx, BSF sizeof.APPDATA
119
        shl     edx, BSF sizeof.APPDATA
120
        ; edx - thread slot of window under cursor
Line -... Line 121...
-
 
121
        mov     esi, [SLOT_BASE + edx + APPDATA.cursor] ; cursor of window under cursor
-
 
122
 
120
        mov     esi, [SLOT_BASE + edx + APPDATA.cursor]
123
        ; if cursor of window under cursor already equal to the
121
 
124
        ; current_cursor then just draw it
Line -... Line 125...
-
 
125
        cmp     esi, [current_cursor]
122
        cmp     esi, [current_cursor]
126
        je      .draw
123
        je      .draw
127
 
124
 
128
        ; eax = thread slot of current active window
Line -... Line 129...
-
 
129
        mov     eax, [thread_count]
125
        mov     eax, [thread_count]
130
        movzx   eax, word [WIN_POS + eax*2]
-
 
131
        shl     eax, BSF sizeof.APPDATA
-
 
132
 
-
 
133
        ; window under cursor == active window ?
-
 
134
        cmp     eax, edx
-
 
135
        je      @F ; if yes then just draw cursor of app
-
 
136
 
-
 
137
        mov     bl, [mouse.active_sys_window.action]
-
 
138
        and     bl, mouse.WINDOW_RESIZE_S_FLAG or mouse.WINDOW_RESIZE_W_FLAG or mouse.WINDOW_RESIZE_E_FLAG
-
 
139
        test    bl, bl
126
        movzx   eax, word [WIN_POS + eax*2]
140
        jz      .set_def_cursor ; if active window is not being resized now
Line -... Line 141...
-
 
141
 
127
        shl     eax, 8
142
        ; esi = cursor of active window:
128
 
143
        mov     esi, [SLOT_BASE + eax + APPDATA.cursor]
129
        cmp     eax, edx
144
        jmp     .draw
Line 130... Line 145...
130
        je      @F
145