Author: fireball Date: Mon Aug 24 18:47:13 2009 New Revision: 42914
URL: http://svn.reactos.org/svn/reactos?rev=42914&view=rev Log: - Update zorder when switching focus from one window to another, and when a windows becomes visible. Not quite there yet - window's contents is not being repainted if needed, but switching between windows is much better now. - Remove unneeded magic from NTDRV.
Modified: branches/arwinss/reactos/dll/win32/winent.drv/userdrv.c
Modified: branches/arwinss/reactos/dll/win32/winent.drv/userdrv.c URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/dll/win32/winent... ============================================================================== --- branches/arwinss/reactos/dll/win32/winent.drv/userdrv.c [iso-8859-1] (original) +++ branches/arwinss/reactos/dll/win32/winent.drv/userdrv.c [iso-8859-1] Mon Aug 24 18:47:13 2009 @@ -708,12 +708,25 @@
void CDECL RosDrv_SetCapture( HWND hwnd, UINT flags ) { - UNIMPLEMENTED; + if (!(flags & (GUI_INMOVESIZE | GUI_INMENUMODE))) return; + + if (hwnd) + { + /* Capturing */ + FIXME("Capture set for hwnd %x\n", hwnd); + } + else + { + FIXME("Capture released\n"); + } }
void CDECL RosDrv_SetFocus( HWND hwnd ) { - UNIMPLEMENTED; + RECT rc; + //UNIMPLEMENTED; + GetWindowRect(hwnd, &rc); + RosDrv_UpdateZOrder(hwnd, &rc); }
void CDECL RosDrv_SetLayeredWindowAttributes( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags ) @@ -774,19 +787,10 @@
UINT CDECL RosDrv_ShowWindow( HWND hwnd, INT cmd, RECT *rect, UINT swp ) { - /*int x, y; - unsigned int width, height;*/ - DWORD style = GetWindowLongW( hwnd, GWL_STYLE ); - - if (style & WS_MINIMIZE) return swp; - if (IsRectEmpty( rect )) return swp; - - /* only fetch the new rectangle if the ShowWindow was a result of a window manager event */ - TRACE( "win %p cmd %d at %s flags %08x\n", hwnd, cmd, wine_dbgstr_rect(rect), swp );
- return swp & ~(SWP_NOMOVE | SWP_NOCLIENTMOVE | SWP_NOSIZE | SWP_NOCLIENTSIZE); + return swp; }
LRESULT CDECL RosDrv_SysCommand( HWND hwnd, WPARAM wparam, LPARAM lparam )