Commit Graph

204 Commits

Author SHA1 Message Date
Ken Thomases c3183fc007 winemac: Implement simpler way to find front Wine window.
This uses Cocoa and the window server to track windows and their z-order,
which is more reliable than our own tracking.
2013-05-17 16:35:27 +02:00
Ken Thomases 05c250dfcb winemac: Always call super in -validateMenuItem:; fixes check mark in Windows menu. 2013-05-17 12:15:22 +02:00
Ken Thomases 939d9a906f winemac: Improve positioning of input method candidate window. 2013-05-17 12:14:51 +02:00
Ken Thomases 1ac1cd69ad winemac: Fix disabling of resizable windows. 2013-05-14 17:28:30 +02:00
Ken Thomases d9ae2f3e38 winemac: Consolidate scroll wheel handling into -[WineApplicationController handleScrollWheel:]. 2013-05-07 11:19:33 +02:00
Ken Thomases e15b82ad1b winemac: Consolidate mouse button handling into -[WineApplicationController handleMouseButton:]. 2013-05-07 11:19:27 +02:00
Ken Thomases 72e893237c winemac: Consolidate mouse move handling into -[WineApplicationController handleMouseMove:]. 2013-05-07 11:19:21 +02:00
Ken Thomases 1c7a2ba33b winemac: If an app opens a window shortly after its systray icon is clicked, activate it.
The Mac driver doesn't normally steal focus, but a click on the systray icon
counts as the user giving permission.
2013-04-25 11:44:42 +02: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
Ken Thomases e7d5f329e5 winemac: Refactor WineApplication class to separate most logic into a controller class. 2013-04-16 12:10:36 +02:00
Ken Thomases 2e226b9ad8 winemac: Don't order the window on-screen in -[WineWindow adjustWindowLevel]. 2013-04-11 12:06:41 +02:00
Ken Thomases f37153ac7d winemac: Initialize window surface to Mac-standard window background color instead of black. 2013-04-05 11:57:13 +02:00
Ken Thomases 26a74c664d winemac: Tell Cocoa to preserve our window content during live resizing. 2013-04-05 11:56:32 +02:00
Ken Thomases 1ee93853c2 winemac: Make macdrv_event structs heap-allocated and reference-counted. 2013-04-04 12:14:33 +02:00
Ken Thomases 94dc91a45d winemac: During live resize, force occasional redisplay due to spontaneous redrawing. 2013-04-02 12:47:27 +02:00
Ken Thomases a767ee99fa winemac: Track drawn surface region to reduce black flicker for new or resized windows. 2013-03-29 17:17:22 +01:00
Ken Thomases 0e8b305023 winemac: Draw surface region rects separately instead of clipping one big draw. 2013-03-29 17:17:22 +01:00
Ken Thomases f7406e74ae winemac: Invalidate window shadow on every draw for transparent windows. 2013-03-29 17:17:22 +01:00
Ken Thomases 7993bd3d90 winemac: Implement support for drag-and-drop. 2013-03-14 12:03:32 +01:00
Ken Thomases 449e2655c2 winemac: Add support for delay-rendered (a.k.a. promised) clipboard data. 2013-03-11 10:53:38 +01:00
Ken Thomases 3f3ee6393d winemac: Implement OpenGL support. 2013-03-06 12:56:12 +01:00
Ken Thomases 9b0fdc645f winemac: Implement ClipCursor(). 2013-02-25 10:40:39 +01:00
Ken Thomases 5d8e685297 winemac: Request mouse move events when our window is active even when cursor is outside it. 2013-02-25 10:40:38 +01:00
Ken Thomases 0a56ef356a winemac: Handle mouse moves in -[WineApplication sendEvent:] instead of WineWindow. 2013-02-25 10:40:38 +01:00
Ken Thomases d26a6bf451 winemac: Implement ChangeDisplaySettingsEx(). 2013-02-18 10:35:46 +01:00
Ken Thomases be6af9a169 winemac: Implement support for full-screen windows. 2013-02-18 10:34:46 +01:00
Ken Thomases ba86e67792 winemac: Track Cocoa windows in a z-ordered list. 2013-02-18 10:34:40 +01:00
Ken Thomases d74e90080a winemac: Don't set Cocoa window frame to be zero-sized. 2013-02-18 10:34:29 +01:00
Ken Thomases 47352930d8 winemac: Discard old frame changed events when setting frame for off-screen windows, too. 2013-02-18 10:34:24 +01:00
Ken Thomases a472d39b7d winemac: Prevent Cocoa from consuming certain key-down events. 2013-02-11 11:46:11 +01:00
Ken Thomases 3748c39308 winemac: Implement MOUSE_SCROLL events. 2013-02-11 11:46:10 +01:00
Ken Thomases 033fe9a7c2 winemac: Process clicks in an inactive window in addition to activating it. 2013-02-07 12:04:51 +01:00
Ken Thomases 572324bae3 winemac: Implement MOUSE_MOVED(_ABSOLUTE) events. 2013-02-07 12:04:49 +01:00
Ken Thomases 0757a66360 winemac: Ignore Cocoa's window frame adjustments for off-screen windows. 2013-02-05 11:11:45 +01:00
Ken Thomases 77de57683f winemac: Generate KEY_PRESS/RELEASE events from Cocoa key events. 2013-02-05 11:06:43 +01:00
Ken Thomases 8a0c8d9264 winemac: Implement support for minimizing windows. 2013-02-05 11:05:23 +01:00
Ken Thomases 3c5973139f winemac: Implement a WINDOW_LOST_FOCUS event. 2013-01-28 14:03:45 +01:00
Ken Thomases 7863a230ec winemac: Implement a WINDOW_GOT_FOCUS event for when Cocoa tries to focus a window. 2013-01-28 14:03:40 +01:00
Ken Thomases 6cde62ac18 winemac: Take control over when a window can become focused away from Cocoa. 2013-01-28 14:03:18 +01:00
Ken Thomases bd269786a5 winemac: Implement a MOUSE_BUTTON event for mouse clicks. 2013-01-28 14:02:45 +01:00
Ken Thomases 6e59740e18 winemac: Implement WINDOW_FRAME_CHANGED event to tell Wine when window is moved or resized. 2013-01-28 14:00:49 +01:00
Ken Thomases ed367c504d winemac: Implement a WINDOW_CLOSE_REQUESTED event to allow closing windows. 2013-01-21 12:51:19 +01:00
Ken Thomases 177b67e6bd winemac: Make each Mac driver window track the HWND it's associated with. 2013-01-21 12:51:18 +01:00
Ken Thomases 207c4d193f winemac: Associate an event queue with each thread that creates windows and with each window. 2013-01-21 12:51:17 +01:00
Ken Thomases c0d43fb51f winemac: Implement layered windows: SetLayeredWindowAttributes() and UpdateLayeredWindow(). 2013-01-15 12:17:02 +01:00
Ken Thomases 2d4bcc47be winemac: Implement SetWindowRgn. 2013-01-15 12:16:52 +01:00
Ken Thomases 7d6ebfa742 winemac: Implement window surface rendering. 2013-01-15 12:16:44 +01:00
Ken Thomases b3f71fdeb1 winemac: Implement the Mac "Window" menu. 2013-01-11 18:14:08 +01:00
Ken Thomases 15d4b2ab51 winemac: Translate presence in Windows task bar to participation in Exposé and window cycling. 2013-01-11 18:14:08 +01:00
Ken Thomases b6544d19dd winemac: Implement support for owned windows. 2013-01-11 18:14:07 +01:00
Ken Thomases 429732ce1a winemac: Implement support for WS_EX_TOPMOST windows. 2013-01-11 18:14:07 +01:00
Ken Thomases 9d29ea42e1 winemac: Implement support for no-activate windows. 2013-01-11 18:14:07 +01:00
Ken Thomases 064186e739 winemac: Implement support for WS_DISABLED windows. 2013-01-11 18:14:07 +01:00
Ken Thomases 8da2cb1698 winemac: Implement basic window functionality. 2013-01-09 17:39:38 +01:00