From 74329e061fe616d72bc341d27968d133e782e321 Mon Sep 17 00:00:00 2001 From: CleverMouse Date: Tue, 18 Feb 2014 17:49:35 +0000 Subject: [PATCH] fix draw of type-I windows with small height git-svn-id: svn://kolibrios.org@4572 a494cfbc-eb01-0410-851d-a64ba20cac60 --- kernel/trunk/docs/sysfuncr.txt | 4 ++-- kernel/trunk/docs/sysfuncs.txt | 4 ++-- kernel/trunk/gui/window.inc | 8 ++------ 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/kernel/trunk/docs/sysfuncr.txt b/kernel/trunk/docs/sysfuncr.txt index 241ddcd883..0c69ec069a 100644 --- a/kernel/trunk/docs/sysfuncr.txt +++ b/kernel/trunk/docs/sysfuncr.txt @@ -86,9 +86,9 @@ * рисуется внешняя рамка цвета, указанного в edi, шириной 1 пиксель * рисуется заголовок - прямоугольник с левым верхним углом (1,1) - и правым нижним (xsize-1,min(25,ysize)) цвета, указанного в esi + и правым нижним (xsize-1,min(20,ysize-1)) цвета, указанного в esi (с учетом градиента) - * если ysize>=26, то закрашивается рабочая область окна - + * если ysize>21, то закрашивается рабочая область окна - прямоугольник с левым верхним углом (1,21) и правым нижним (xsize-1,ysize-1) (размерами (xsize-1)*(ysize-21)) - цветом, указанным в edx (с учетом градиента) diff --git a/kernel/trunk/docs/sysfuncs.txt b/kernel/trunk/docs/sysfuncs.txt index 6eae185b2c..69a5c9f595 100644 --- a/kernel/trunk/docs/sysfuncs.txt +++ b/kernel/trunk/docs/sysfuncs.txt @@ -82,9 +82,9 @@ Remarks: * The window of type I looks as follows: * draw external frame of color indicated in edi, 1 pixel in width * draw header - rectangle with the left upper corner (1,1) and - right lower (xsize-1,min(25,ysize)) color indicated in esi + right lower (xsize-1,min(20,ysize-1)) color indicated in esi (taking a gradient into account) - * if ysize>=26, fill the working area of the window - + * if ysize>21, fill the working area of the window - rectangle with the left upper corner (1,21) and right lower (xsize-1,ysize-1) (sizes (xsize-1)*(ysize-21)) with color indicated in edx (taking a gradient into account) diff --git a/kernel/trunk/gui/window.inc b/kernel/trunk/gui/window.inc index bd6b82c2c8..d6d97681c1 100644 --- a/kernel/trunk/gui/window.inc +++ b/kernel/trunk/gui/window.inc @@ -817,12 +817,8 @@ drawwindow_I: ;//////////////////////////////////////////////////////////////// jnz .exit ; does client area have a positive size on screen? - mov edx, [esi + WDATA.box.top] - add edx, 21 + 5 - mov ebx, [esi + WDATA.box.top] - add ebx, [esi + WDATA.box.height] - cmp edx, ebx - jg .exit + cmp [esi + WDATA.box.height], 21 + jle .exit ; okay, let's draw it mov eax, 1