Mac driver status: ready for contributions

Ken Thomases ken at codeweavers.com
Mon Mar 18 15:48:25 CDT 2013


Hi,

With my latest set of patches, the Mac driver in Wine is up to speed with what's in CrossOver 12 (plus some extra goodies).

Of course, that's not to say that the Mac driver is done, but if you were holding off getting involved because you figured big chunks of already-done work were pending, that's no longer the case.  From here on out, all work on the Mac driver will be new coding, so it's ready for anybody to contribute.

Testing is one excellent way of contributing.  I encourage any Mac Wine users to enable the Mac driver, test your favorite programs, and file bugs for any new problems (and there _will_ be bugs to find).  Please try to distinguish between general Wine bugs which also happen with the X11 driver vs. bugs which only happen with the Mac driver.

Currently, you have to set a registry key to enable the Mac driver:

[HKEY_CURRENT_USER\Software\Wine\Drivers]
"Graphics"="mac,x11"

Swap the order to "x11,mac" – or just remove the "Graphics" value altogether – to revert to using the X11 driver.


Aside from bugs, the Mac driver is pretty close to complete.  Here's a list of stuff that I know is incomplete.  Not all of these things are hard.  In fact, I expect some will be quite easy and the only reason I didn't get to them was to get broader coverage of general areas of functionality by CrossOver 12's release.

* The Quit menu item should do a graceful shutdown of the Windows process rather than abruptly terminating it.  Same for requests to quit from the system such as during logout, restart, or shutdown.

* A registry setting to govern whether full-screen at full-resolution should capture the display (which will disable active screen corners but also application switching and UI overlays).  Full-screen at other resolutions already captures the displays.

* A registry setting to govern whether the Option/Alt key sends an Alt keystroke instead of accessing additional characters from the Mac keyboard layout.

* Support for maximizing windows.

* Reduce or eliminate flashes of black before windows (re)draw.

* Support for Mac input methods (Asian languages, press-and-hold, keyboard and character viewers).

* Rework the Graphics tab of winecfg.  Most of it doesn't apply to the Mac driver.  As Mac-driver-specific registry settings are implemented, they may need to be revealed in winecfg.

* Maybe implement a Cocoa Preferences dialog for the Mac driver's settings as an alternative to putting them in winecfg.

* Activating a Wine GUI process all of whose windows are minimized should maybe unminimize one.

* Add some additional standard items to the Mac menus, such as Hide Wine, Hide Others, and Show All.

* Support for metafile clipboard formats.

* Support for mouse capture.

* Improved system tray functionality like detecting mouse moves and right-clicks and presenting notification balloons.

* Support localization of the few UI strings in the Mac driver (basically the menu item titles).

(Charles Betts has already submitted work to support disabling and reenabling the screen saver.  As I understand it, Alexandre has some unspecified ideas about how he wants to change the driver interface for the SystemParametersInfo entry point.)

Cheers,
Ken




More information about the wine-devel mailing list