Andrew Eikum
10035f1b97
winemac: Implement Vulkan driver on top of MoltenVK.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Ken Thomases
357017cd87
winemac: Implement WineMetalView class.
...
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Ken Thomases
1aae516a49
winemac: Add resource file.
...
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-17 22:56:39 +09:00
Ken Thomases
3beec95a09
winemac: Use CVDisplayLink to limit window redrawing to the display refresh rate.
...
Some Windows apps cause user32 to flush the window surface much faster than the
display refresh rate. The Mac driver only marks its window as needing to be
redrawn and lets Cocoa decide how often to actually redraw. Unfortunately,
Cocoa redraws each time through the run loop and, since the Mac driver uses a
run loop source to convey messages from background threads to the main thread,
it redraws after every batch of messages.
On some versions of OS X, this excessive drawing provokes synchronization with
the window server's buffer swaps, preventing the main thread from being
responsive. Even when that doesn't happen, it's wasteful.
So, we set our windows' autodisplay property to false so that Cocoa never
displays windows itself. Then, we arrange to call -displayIfNeeded once per
display refresh cycle using a CVDisplayLink. We maintain one CVDisplayLink per
display (on demand), move windows among them as the windows change screens,
start them when they acquire their first window, and stop them when they have
none left.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-06 23:20:29 +09:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
Ken Thomases
192b8dbf9d
winemac: Implement an IME that uses the OS X input methods.
...
Developed with Aric Stewart.
2013-04-22 12:37:50 +02:00
Alexandre Julliard
04ad06353d
user32: Move the common parts of ScrollDC into user32 and the null driver.
2013-04-19 16:16:16 +02:00
C.W. Betts
95daa45dbc
winemac: Implement getting and setting screen saver state on OS X.
2013-03-29 17:52:17 +01:00
Ken Thomases
9714e6ee63
winemac: Implement rudimentary support for system tray icons as Mac status items.
2013-03-25 14:02:56 +01:00
Ken Thomases
462721a115
winemac: Move create_cgimage_from_icon_bitmaps() into new module, image.c.
2013-03-25 14:01:01 +01:00
Ken Thomases
7993bd3d90
winemac: Implement support for drag-and-drop.
2013-03-14 12:03:32 +01:00
Ken Thomases
6b2b3e69f7
winemac: Implement CountClipboardFormats() with support for text formats.
2013-03-11 10:52:59 +01:00
Ken Thomases
3f3ee6393d
winemac: Implement OpenGL support.
2013-03-06 12:56:12 +01:00
Ken Thomases
c76f0beeab
winemac: Fail gracefully and early when run from a non-GUI session.
2013-03-05 09:50:02 +01:00
Ken Thomases
b78eee3172
winemac: Build a map from Mac virtual key codes to Win32 vkeys and scan codes based on Mac keyboard layout.
2013-02-05 11:06:02 +01:00
Ken Thomases
6efd198c52
winemac: Implement ScrollDC().
2013-02-05 11:04:33 +01:00
Ken Thomases
bd269786a5
winemac: Implement a MOUSE_BUTTON event for mouse clicks.
2013-01-28 14:02:45 +01:00
Ken Thomases
4e83d2fca0
winemac: Implement MsgWaitForMultipleObjectsEx and infrastructure for processing events.
2013-01-21 12:51:18 +01:00
Ken Thomases
3c995bb682
winemac: Add WineEventQueue class for conveying events from Cocoa to Wine threads.
2013-01-21 12:51:17 +01:00
Ken Thomases
7d6ebfa742
winemac: Implement window surface rendering.
2013-01-15 12:16:44 +01:00
Ken Thomases
8da2cb1698
winemac: Implement basic window functionality.
2013-01-09 17:39:38 +01:00
Ken Thomases
35319684d3
winemac: Convert main thread to Cocoa main loop on process attach.
2013-01-09 17:39:37 +01:00
Ken Thomases
daf0fd75e6
winemac: Add a custom NSApplication subclass, WineApplication.
2013-01-09 17:39:37 +01:00
Ken Thomases
bbb8c60c7e
winemac: Implement CreateDesktopWindow().
2013-01-08 12:50:20 +01:00
Ken Thomases
21c4fc3326
winemac.drv: Implement EnumDisplayMonitors.
2012-12-26 18:23:03 +01:00
Ken Thomases
fd269e4dca
winemac: Implement GetDeviceCaps().
2012-12-21 12:08:38 +01:00
Ken Thomases
59e339faac
winemac: Implement minimal Create[Compatible]DC() and DeleteDC().
2012-12-17 20:31:15 +01:00
Ken Thomases
35033025aa
winequartz.drv: Rename to winemac.drv ("the Mac driver").
2012-12-17 20:31:14 +01:00