The procedure minimize_window does not calculatescreen and redrawscreen, if window width and/or height is equal zero is now

git-svn-id: svn://kolibrios.org@2620 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Marat Zakiyanov (Mario79) 2012-04-17 16:32:18 +00:00
parent c1c36c0b6a
commit 263603725b
2 changed files with 22 additions and 4 deletions

View File

@ -1047,6 +1047,13 @@ minimize_window: ;/////////////////////////////////////////////////////////////
; no it's not, let's do that ; no it's not, let's do that
or [edi + WDATA.fl_wstate], WSTATE_MINIMIZED or [edi + WDATA.fl_wstate], WSTATE_MINIMIZED
; If the window width is 0, then the action is not needed.
cmp [edi + WDATA.box.width], dword 0
je @f
; If the window height is 0, then the action is not needed.
cmp [edi + WDATA.box.height], dword 0
je @f
mov eax, [edi + WDATA.box.left] mov eax, [edi + WDATA.box.left]
mov [draw_limits.left], eax mov [draw_limits.left], eax
mov ecx, eax mov ecx, eax
@ -1057,11 +1064,20 @@ minimize_window: ;/////////////////////////////////////////////////////////////
mov edx, ebx mov edx, ebx
add edx, [edi + WDATA.box.height] add edx, [edi + WDATA.box.height]
mov [draw_limits.bottom], edx mov [draw_limits.bottom], edx
call calculatescreen
xor esi, esi
xor eax, eax
call redrawscreen
; DEBUGF 1, "K : minimize_window\n"
; DEBUGF 1, "K : dl_left %x\n",[draw_limits.left]
; DEBUGF 1, "K : dl_right %x\n",[draw_limits.right]
; DEBUGF 1, "K : dl_top %x\n",[draw_limits.top]
; DEBUGF 1, "K : dl_bottom %x\n",[draw_limits.bottom]
call calculatescreen
; xor esi, esi
; xor eax, eax
mov eax, edi
call redrawscreen
;--------------------------------------
align 4
@@:
pop esi edx ecx ebx eax pop esi edx ecx ebx eax
;-------------------------------------- ;--------------------------------------
align 4 align 4

View File

@ -3370,6 +3370,8 @@ align 4
call drawbackground call drawbackground
; DEBUGF 1, "K : drawbackground\n" ; DEBUGF 1, "K : drawbackground\n"
; DEBUGF 1, "K : backg x %x\n",[BG_Rect_X_left_right]
; DEBUGF 1, "K : backg y %x\n",[BG_Rect_Y_top_bottom]
;--------- set event 5 start ---------- ;--------- set event 5 start ----------
push ecx edi push ecx edi
xor edi, edi xor edi, edi