Browse Source

git-svn-id: http://zengl.googlecode.com/svn/branches/0.3.x@1909 6573c10b-8653-0410-9706-d32479e959fb

dr.andru 13 years ago
parent
commit
fdcd43b2d5
2 changed files with 9 additions and 15 deletions
  1. 7 4
      src/zgl_screen.pas
  2. 2 11
      src/zgl_window.pas

+ 7 - 4
src/zgl_screen.pas

@@ -298,10 +298,13 @@ begin
     scr_GetResList();
 {$ENDIF}
 {$IFDEF WINDOWS}
-  scrMonitor := MonitorFromWindow( wndHandle, MONITOR_DEFAULTTOPRIMARY );
-  FillChar( scrMonInfo, SizeOf( MONITORINFOEX ), 0 );
-  scrMonInfo.cbSize := SizeOf( MONITORINFOEX );
-  GetMonitorInfoW( scrMonitor, scrMonInfo );
+  if scrMonInfo.cbSize <> SizeOf( MONITORINFOEX ) Then
+    begin
+      scrMonitor := MonitorFromWindow( wndHandle, MONITOR_DEFAULTTOPRIMARY );
+      FillChar( scrMonInfo, SizeOf( MONITORINFOEX ), 0 );
+      scrMonInfo.cbSize := SizeOf( MONITORINFOEX );
+      GetMonitorInfoW( scrMonitor, scrMonInfo );
+    end;
 
   if appInitialized and ( not wndFullScreen ) Then
     begin

+ 2 - 11
src/zgl_window.pas

@@ -537,10 +537,6 @@ begin
 end;
 
 procedure wnd_SetPos( X, Y : Integer );
-  {$IFDEF WINDOWS}
-  var
-    mode : LongWord;
-  {$ENDIF}
   {$IFDEF MACOSX}
   var
     clipRgn : RgnHandle;
@@ -569,16 +565,11 @@ begin
       XMoveWindow( scrDisplay, wndHandle, 0, 0 );
 {$ENDIF}
 {$IFDEF WINDOWS}
-  if not appFocus Then
-    mode := HWND_BOTTOM
-  else
-    mode := HWND_TOPMOST;
-
   if wndHandle <> 0 Then
     if ( not wndFullScreen ) or ( not appFocus ) Then
-      SetWindowPos( wndHandle, mode, wndX, wndY, wndWidth + ( wndBrdSizeX * 2 ), wndHeight + ( wndBrdSizeY * 2 + wndCpnSize ), SWP_NOACTIVATE )
+      SetWindowPos( wndHandle, HWND_NOTOPMOST, wndX, wndY, wndWidth + ( wndBrdSizeX * 2 ), wndHeight + ( wndBrdSizeY * 2 + wndCpnSize ), SWP_NOACTIVATE )
     else
-      SetWindowPos( wndHandle, mode, 0, 0, wndWidth, wndHeight, SWP_NOACTIVATE );
+      SetWindowPos( wndHandle, HWND_TOPMOST, 0, 0, wndWidth, wndHeight, SWP_NOACTIVATE );
 {$ENDIF}
 {$IFDEF MACOSX}
   if Assigned( wndHandle ) Then