Hello,
Revision 10073 broke painting for complex app, like the Virtual
Magnifying Glass. This patch fixes it.
thanks,
--
Felipe Monteiro de Carvalho
Index: lcl/interfaces/gtk/gtkproc.inc
===================================================================
--- lcl/interfaces/gtk/gtkproc.inc (revisão 10093)
+++ lcl/interfaces/gtk/gtkproc.inc (cópia de trabalho)
@@ -8603,7 +8603,7 @@
{$ENDIF UseXinerama}
{$ENDIF Gtk1}
-{$IFDEF HasGtkX}
+{$IFDEF HasX}
function XGetWorkarea(var ax,ay,awidth,aheight:gint): gint;
var
Index: lcl/interfaces/gtk/gtkwinapi.inc
===================================================================
--- lcl/interfaces/gtk/gtkwinapi.inc (revisão 10093)
+++ lcl/interfaces/gtk/gtkwinapi.inc (cópia de trabalho)
@@ -5299,7 +5299,7 @@
{$IFDEF Gtk1}
exit;
{$ELSE}
- {$IFDEF GtkHasX}
+ {$IFDEF HasX}
GDKWindow:=gdk_screen_get_root_window(gdk_screen_get_default);
{$ELSE}
exit;
@@ -5651,6 +5651,7 @@
function TGtkWidgetSet.GetSystemMetrics(nIndex: Integer): Integer;
var
P : Pointer;
+ ax,ay,ah,aw : gint;
begin
Assert(False, Format('Trace:> [TGtkWidgetSet.GetSystemMetrics] %d', [nIndex]));
case nIndex of
@@ -5754,14 +5755,14 @@
end;
SM_CXMAXIMIZED:
begin
- {$IFDEF GtkHasX}
+ {$IFDEF HasX}
if XGetWorkarea(ax,ay,aw,ah)>=0 then result:=aw
else getSystemMetrics(SM_CXSCREEN);
{$ENDIF}
end;
SM_CYMAXIMIZED:
begin
- {$IFDEF GtkHasX}
+ {$IFDEF HasX}
if XGetWorkarea(ax,ay,aw,ah)>=0 then result:=ah
else getSystemMetrics(SM_CYSCREEN);
{$ENDIF}
Index: lcl/interfaces/gtk/gtkproc.pp
===================================================================
--- lcl/interfaces/gtk/gtkproc.pp (revisão 10093)
+++ lcl/interfaces/gtk/gtkproc.pp (cópia de trabalho)
@@ -798,7 +798,7 @@
function GetDefaultFontName: string;
Procedure FillScreenFonts(ScreenFonts: TStrings);
function GetTextHeight(DCTextMetric: TDevContextTextMetric): integer;
-{$IFDEF GtkHasX}
+{$IFDEF HasX}
function XGetWorkarea(var ax,ay,awidth,aheight:gint): gint;
{$ENDIF}
Index: lcl/interfaces/gtk/gtkint.pp
===================================================================
--- lcl/interfaces/gtk/gtkint.pp (revisão 10093)
+++ lcl/interfaces/gtk/gtkint.pp (cópia de trabalho)
@@ -64,6 +64,13 @@
{$EndIF}
{$EndIF}
+{$IFDEF Unix}
+ {$DEFINE HasX}
+ {$IFDEF Gtk1}
+ {$DEFINE HasGtkX}
+ {$ENDIF}
+{$ENDIF}
+
uses
{$IFDEF WIN32}
// use windows unit first,