1. 06 May, 2016 1 commit
    • Ken Thomases's avatar
      winemac: Add support for a high-resolution ("Retina") rendering mode. · 1c94bf39
      Ken Thomases authored
      When this Retina mode is enabled and the primary display is in the user's
      default configuration, Wine gets told that screen and window sizes and mouse
      coordinates are twice what Cocoa reports them as in its virtual coordinate
      system ("points").  The Windows apps then renders at that high resolution and
      the Mac driver blits it to screen.  If the screen is actually a Retina display
      in a high-DPI mode, then this extra detail will be preserved.  Otherwise, the
      rendering will be downsampled and blurry.
      
      This is intended to be combined with increasing the Windows DPI, as via winecfg.
      If that is doubled to 192, then, in theory, graphical elements will remain the
      same visual size on screen but be rendered with finer detail.  Unfortunately,
      many Windows programs don't correctly handle non-standard DPI so the results
      are not always perfect.
      
      The registry setting to enable Retina mode is:
      
      [HKEY_CURRENT_USER\Software\Wine\Mac Driver]
      "RetinaMode"="y"
      
      Note that this setting is not looked for in the AppDefaults\<exe name> key
      because it doesn't make sense for only some processes in a Wine session to see
      the high-resolution sizes and coordinates.
      Signed-off-by: 's avatarKen Thomases <ken@codeweavers.com>
      Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
      1c94bf39
  2. 17 Nov, 2015 1 commit
  3. 15 Sep, 2015 1 commit
    • Ken Thomases's avatar
      winemac: Add a new registry setting, OpenGLSurfaceMode, to control how GL… · 47708c26
      Ken Thomases authored
      winemac: Add a new registry setting, OpenGLSurfaceMode, to control how GL surfaces relate to the window.
      
      The default behavior is that GL surfaces are on top of all non-GL content in
      the window.  This maximizes the performance for the common case of games, but
      clipping by parents, siblings, and child windows isn't respected.
      
      Setting OpenGLSurfaceMode to "behind" pushes the GL surface to be behind the
      Mac window.  The window has transparent holes punched through it so that the GL
      surface shows through.  USER32 and the wineserver take care of making sure the
      holes are only where the GL windows would be unclipped and unoccluded.  Because
      the OS X window server has to composite the GL surface with the window, this
      limits the framerate.
      
      Since the Mac driver has no server-side rendering path, GDI rendering to a
      window which has a GL surface doesn't work.  As a partial workaround, mostly
      for cases where a GL surface is created but never used, setting
      OpenGLSurfaceMode to "transparent" allows the GDI rendering to show through the
      transparent parts of the GL surface.  The GDI rendering is drawn to the
      top-level window's surface as normal.  (The behavior of user32 to exclude the
      portion covered by a GL window from GDI rendering is disabled.)  The GL surface
      is in front of the window but potentially wholly or partially transparent.  It
      is composited with the window behind it.
      
      The GL surface is initially cleared to be completely transparent.  So, if
      no GL rendering is done, the window will appear as though the GL surface didn't
      exist.
      47708c26
  4. 15 May, 2014 1 commit
    • Ken Thomases's avatar
      winemac: Add the ability to disable high-resolution scrolling. · 45191510
      Ken Thomases authored
      The Mac driver can generate scroll wheel events with values which are not integral
      multiples of WHEEL_DELTA.  Apps should handle that by scrolling a corresponding
      non-integral multiple of what they'd do for a WHEEL_DELTA-valued scroll or, if
      they can't, then at least accumulate scroll distance until its magnitude exceeds
      WHEEL_DELTA and do a "chunky" scroll.  However, many apps don't do that properly.
      They may scroll way too far/fast or even in the opposite direction.
      
      If the registry setting UsePreciseScrolling is set to "n", the Mac driver will do
      that accumulation and chunking itself to work around such broken app behavior.
      45191510
  5. 29 Apr, 2014 1 commit
  6. 30 Dec, 2013 1 commit
  7. 22 Nov, 2013 1 commit
  8. 20 Nov, 2013 1 commit
  9. 24 Oct, 2013 1 commit
  10. 22 Oct, 2013 1 commit
  11. 21 Oct, 2013 1 commit
  12. 16 Oct, 2013 1 commit
  13. 10 Oct, 2013 1 commit
  14. 09 Jul, 2013 1 commit
  15. 02 Jul, 2013 2 commits
  16. 20 Jun, 2013 1 commit
  17. 07 Jun, 2013 1 commit
  18. 29 May, 2013 1 commit
  19. 06 May, 2013 1 commit
  20. 22 Apr, 2013 1 commit
  21. 29 Mar, 2013 1 commit
  22. 25 Mar, 2013 1 commit
  23. 11 Mar, 2013 2 commits
  24. 05 Mar, 2013 1 commit
  25. 25 Feb, 2013 1 commit
  26. 05 Feb, 2013 1 commit
  27. 28 Jan, 2013 1 commit
  28. 21 Jan, 2013 3 commits
  29. 09 Jan, 2013 1 commit
  30. 17 Dec, 2012 1 commit
  31. 27 Oct, 2006 1 commit
  32. 02 Oct, 2006 1 commit
  33. 23 May, 2006 1 commit
  34. 15 Aug, 2005 1 commit
  35. 15 Jul, 2005 1 commit
  36. 06 Jul, 2005 1 commit