[WIN32K, USER32]
[reactos.git] / reactos / subsystems / win32 / win32k / ntuser / simplecall.c
index 3522cd1..bf26bc2 100644 (file)
@@ -8,7 +8,7 @@
  *       2008/03/20  Split from misc.c
  */
 
-#include <w32k.h>
+#include <win32k.h>
 
 #define NDEBUG
 #include <debug.h>
@@ -110,14 +110,6 @@ NtUserCallNoParam(DWORD Routine)
          Result = (DWORD_PTR)MsqGetMessageExtraInfo();
          break;
 
-      case NOPARAM_ROUTINE_ANYPOPUP:
-         Result = (DWORD_PTR)IntAnyPopup();
-         break;
-
-      case NOPARAM_ROUTINE_CSRSS_INITIALIZED:
-         Result = (DWORD_PTR)CsrInit();
-         break;
-
       case NOPARAM_ROUTINE_MSQCLEARWAKEMASK:
          RETURN( (DWORD_PTR)IntMsqClearWakeMask());
 
@@ -200,9 +192,10 @@ NtUserCallOneParam(
       case ONEPARAM_ROUTINE_SETMESSAGEEXTRAINFO:
          RETURN( (DWORD_PTR)MsqSetMessageExtraInfo((LPARAM)Param));
 
-      case ONEPARAM_ROUTINE_CREATECURICONHANDLE:
+      case ONEPARAM_ROUTINE_CREATEEMPTYCUROBJECT:
          {
             PCURICON_OBJECT CurIcon;
+                       DWORD_PTR Result ;
 
             if (!(CurIcon = IntCreateCurIconHandle()))
             {
@@ -210,7 +203,9 @@ NtUserCallOneParam(
                RETURN(0);
             }
 
-            RETURN((DWORD_PTR)CurIcon->Self);
+            Result = (DWORD_PTR)CurIcon->Self;
+                       UserDereferenceObject(CurIcon);
+                       RETURN(Result);
          }
 
       case ONEPARAM_ROUTINE_GETCURSORPOSITION:
@@ -440,7 +435,7 @@ NtUserCallTwoParam(
          RETURN( (DWORD_PTR)co_IntRegisterLogonProcess((HANDLE)Param1, (BOOL)Param2));
 
       case TWOPARAM_ROUTINE_SETCURSORPOS:
-         RETURN( (DWORD_PTR)UserSetCursorPos((int)Param1, (int)Param2));
+         RETURN( (DWORD_PTR)UserSetCursorPos((int)Param1, (int)Param2, FALSE));
 
    }
    DPRINT1("Calling invalid routine number 0x%x in NtUserCallTwoParam(), Param1=0x%x Parm2=0x%x\n",
@@ -490,28 +485,17 @@ NtUserCallHwndLock(
 
       case HWNDLOCK_ROUTINE_DRAWMENUBAR:
          {
-            PMENU_OBJECT Menu;
             DPRINT("HWNDLOCK_ROUTINE_DRAWMENUBAR\n");
-            Ret = FALSE;
-            if (!((Wnd->style & (WS_CHILD | WS_POPUP)) != WS_CHILD))
-               break;
-
-            if(!(Menu = UserGetMenuObject((HMENU)(DWORD_PTR) Wnd->IDMenu)))
-               break;
-
-            Menu->MenuInfo.WndOwner = hWnd;
-            Menu->MenuInfo.Height = 0;
-
-            co_WinPosSetWindowPos( Window,
-                                   HWND_DESKTOP,
-                                   0,0,0,0,
-                                   SWP_NOSIZE|
-                                   SWP_NOMOVE|
-                                   SWP_NOZORDER|
-                                   SWP_NOACTIVATE|
-                                   SWP_FRAMECHANGED );
-
             Ret = TRUE;
+            if ((Wnd->style & (WS_CHILD | WS_POPUP)) != WS_CHILD)
+               co_WinPosSetWindowPos( Window,
+                                      HWND_DESKTOP,
+                                      0,0,0,0,
+                                      SWP_NOSIZE|
+                                      SWP_NOMOVE|
+                                      SWP_NOZORDER|
+                                      SWP_NOACTIVATE|
+                                      SWP_FRAMECHANGED );
             break;
          }
 
@@ -536,7 +520,7 @@ NtUserCallHwndLock(
                                 SWP_NOZORDER|
                                 SWP_NOACTIVATE|
                                 SWP_FRAMECHANGED );
-         if (!IntGetOwner(Window) && !IntGetParent(Window))
+         if (!Window->spwndOwner && !IntGetParent(Window))
          {
             co_IntShellHookNotify(HSHELL_REDRAW, (LPARAM) hWnd);
          }