1. 18 May, 2023 1 commit
  2. 15 May, 2023 1 commit
  3. 12 May, 2023 4 commits
  4. 10 May, 2023 1 commit
  5. 09 May, 2023 1 commit
  6. 05 Apr, 2023 1 commit
  7. 24 Feb, 2023 1 commit
  8. 22 Feb, 2023 1 commit
  9. 12 Dec, 2022 2 commits
  10. 20 Sep, 2022 1 commit
  11. 21 Jul, 2022 1 commit
  12. 03 Jun, 2022 4 commits
  13. 02 Jun, 2022 4 commits
  14. 03 May, 2022 1 commit
  15. 07 Apr, 2022 1 commit
  16. 20 Oct, 2021 1 commit
  17. 24 Apr, 2017 1 commit
  18. 12 Dec, 2016 1 commit
  19. 24 Oct, 2016 1 commit
  20. 05 Feb, 2016 2 commits
  21. 06 Oct, 2015 1 commit
    • Ken Thomases's avatar
      winemac: Queue an event to reassert the WinAPI window position before Cocoa… · 9372af77
      Ken Thomases authored
      winemac: Queue an event to reassert the WinAPI window position before Cocoa adjusts its position for a display change.
      
      When the display mode changes such that the screen height changes, we'd like
      our windows to keep their position relative to the top-left of the primary
      screen.  That's how WinAPI's coordinate system works and we want the WinAPI
      position of the window to not change just because the display mode changed.
      
      Unfortunately that's not achievable in Cocoa.  Cocoa keeps the window
      stationary relative to the screen it's on, not necessarily the primary screen,
      and it's sometimes relative to the bottom-left and sometimes the top-left of
      that screen.
      
      So, what we do instead is queue an event to get the back end to reassert the
      WinAPI position of the window.  This is queued before Cocoa can adjust the
      Cocoa position of the window which would queue a WINDOW_FRAME_CHANGED to the
      back end and mess up the WinAPI position.  The back end's reassertion of the
      WinAPI position won't be processed by the Cocoa thread until after Cocoa has
      adjusted the position and will thus override it.  It will also discard any
      wrong WINDOW_FRAME_CHANGED that may have been queued.
      Signed-off-by: 's avatarKen Thomases <ken@codeweavers.com>
      9372af77
  22. 24 Mar, 2015 1 commit
    • Ken Thomases's avatar
      winemac: Allow the user to attempt to resize a maximized window and try to restore it if they do. · 8d581d0e
      Ken Thomases authored
      OS X doesn't have the same concept of maximized windows as Windows does.
      There's no mode that prevents a normally-resizable window from being resized.
      If a window is "zoomed", it mostly fills the screen but the user can still
      move or resize it, at which point it ceases to be in the zoomed state.  So,
      users are confused and frustrated when they can't resize a window that's
      maximized.
      
      To get similar behavior while still respecting Win32 semantics, we now let the
      user try to resize maximized windows.  (The resize cursors are shown at the
      edges of the window frame.)  When they start, a request is submitted to the app
      to restore the window.  Unless and until the window is restored, we don't
      actually allow the window to change its size.
      
      The user expects to resize the window from its current (maximized) position.
      It should not jump to its normal position upon being restored.  So, we set the
      window's normal position to its current position before restoring it.
      8d581d0e
  23. 24 Apr, 2014 1 commit
  24. 30 Dec, 2013 2 commits
  25. 12 Dec, 2013 1 commit
    • Ken Thomases's avatar
      winemac: Send WM_{ENTER, EXIT}SIZEMOVE before/after window dragging and run an… · f068e329
      Ken Thomases authored
      winemac: Send WM_{ENTER, EXIT}SIZEMOVE before/after window dragging and run an internal event loop during.
      
      This simulates some of what would happen if user32 were managing the drag.  The
      click in the caption would cause WM_SYSCOMMAND/SC_MOVE.  The processing of that
      message is synchronous and doesn't return until the move is complete.
      
      Some games require that "blocking" in the internal event loop to prevent them
      from misbehaving during the drag.
      f068e329
  26. 01 Nov, 2013 1 commit
  27. 11 Oct, 2013 1 commit
  28. 08 Oct, 2013 1 commit