Commit Graph

966 Commits

Author SHA1 Message Date
kappaOne d20d5546a3 Finalise implementation of HiDPI mode for OS X 2013-11-12 01:25:06 +00:00
kappaOne eb2e7176b8 Add new LWJGL API Display.getPixelScaleFactor() for use in high DPI
modes, like HiDPI retina mode on OS X.
2013-11-11 23:12:51 +00:00
kappaOne 225bd176cb Implement initial support for High DPI mode on OS X 2013-11-11 00:08:23 +00:00
kappaOne ed95cd0f27 Tweak OS X Fullscreen API mode behaviour, where available its enabled by
default now, can be disabled using the
org.lwjgl.opengl.Display.disableOSXFullscreenModeAPI switch
2013-11-10 02:51:42 +00:00
kappaOne 98f8bddce3 Implement 8 bit Icon transparency support on Linux, now using the modern
_NET_WM_ICON method to set the icon, removed legacy
method and associated code.
2013-11-09 19:47:32 +00:00
Ioannis Tsakpinis 4d0aebb39d Make sure clearAWTFocus() runs in the EDT. 2013-11-07 17:04:04 +02:00
kappaOne 75fe62bbea Implement initial support for the OS X 10.7+ fullscreen mode API,
currently enabled using the VM parameter
org.lwjgl.opengl.Display.enableOSXFullscreenModeAPI
2013-11-06 23:41:16 +00:00
kappaOne 675838f692 Don't autoresize CALayer's when using the Java 7 workaround 2013-11-03 22:47:32 +00:00
kappaOne cd666c66cf Fix CALayer/Display.setParent() initial position bug on OS X. 2013-11-03 14:02:22 +00:00
Ioannis Tsakpinis 59a9a970b9 Fixed grabFocus to work when a parented Display is first shown. 2013-10-30 16:26:53 +02:00
Ioannis Tsakpinis 4ff2240b57 Do not apply SW_RESTORE when the window receives focus. Fixes #53. 2013-10-30 15:32:02 +02:00
kappaOne 46cbd89430 Remove dependencies on AWT inside the Cursor.getMaxCursorSize() and
Cursor.getMinCursorSize() methods. Fixes a crash on OS X 10.9, thx to
nbf for finding and reporting.
2013-10-27 21:28:11 +00:00
kappaOne 5fb66cce46 Make the WM_CLASS implementation more flexible by giving users
an option to set it manually by VM parameter or system property
2013-10-27 15:07:07 +00:00
kappaOne dfbb8d3cbc Fix another edge case bug with Display.setParent() on OS X. Thx to
ihkbob for providing test case to reproduce it.
2013-10-26 17:05:44 +01:00
kappaOne 38a3f6696c Fix NPE and position bug with Display.setParent() on OS X 2013-10-26 16:12:18 +01:00
kappaOne adf780c63d Further fixes for Display.setParent() canvas position & size bugs on OS
X
2013-10-22 22:34:03 +01:00
kappaOne ce43cfabd7 Fix Display.setParent() canvas position bug on OS X 2013-10-20 19:25:33 +01:00
Ioannis Tsakpinis 849511784b Only consider the workaround if both shift buttons are pressed. 2013-10-20 15:39:50 +03:00
Ioannis Tsakpinis 7cb0207eef Fixed missing key up events when both shift keys are pressed at the same time. 2013-10-20 15:31:47 +03:00
kappaOne eb85196a0c Fix string index out of bounds exception, credit to @void256 for finding
and reporting.
2013-10-13 19:17:04 +01:00
kappaOne d3254e00f3 Fix keyboard key codes to return Unicode characters instead of ASCII
characters
2013-10-13 15:45:08 +01:00
Ioannis Tsakpinis bafa7a1972 Added support for OpenGL 4.4 and new extensions. 2013-07-23 01:58:46 +03:00
kappaOne cc14c026ef fix OS X issue where mouse was moving on mouse scroll wheel events. 2013-07-09 16:07:42 +01:00
tulius ad78b69d3a fix: correctly parse current config with xrandr 1.4 2013-04-27 21:49:29 +02:00
Ioannis Tsakpinis aee9bc4f84 [Windows] Attempt to fix Display.setParent focus behavior in applets. 2013-04-25 18:39:56 +03:00
Ioannis Tsakpinis caf21d89dc [Windows] Restored grabFocus() on WM_MOUSEACTIVATE. 2013-04-24 11:45:01 +03:00
Ioannis Tsakpinis b66a3243a8 [Windows] Cleaner activation by relaying mouse presses to parent Canvas, similarly to the Linux implementation. 2013-04-24 03:24:16 +03:00
Ioannis Tsakpinis 7df84ba1a2 [Windows] Close any open AWT menus on WM_MOUSEACTIVATE. 2013-04-22 17:53:39 +03:00
kappaOne 8deac76a5b Update author information 2013-04-21 15:37:02 +01:00
kappaOne f528f38c60 Fix OS X CALayer positioning and workaround Java 7 bug
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7172187
2013-04-20 23:21:01 +01:00
Ioannis Tsakpinis 6fd210fdb3 [Windows] Wait for the big icon to update on setIcon. This normally happens asynchronously, but we block until it's done and only then return from setIcon. 2013-04-19 19:05:23 +03:00
Ioannis Tsakpinis 9a895b1dba Attempt to fix focus transfer issue between Display and AWT components in JDK 7:
- Instead of grabbing focus directly to our window, we call requestFocus on the Canvas component. This will clear focus from any other AWT component.
- When the parent Canvas gets focus, we detect it in update and that's when we grab focus to our window. We can't use a listener, setFocus must be called in our thread.
- Alt-tabbing out/in also works because focus goes to the Canvas. The above check will trigger again and our window will be refocused.
2013-04-18 17:02:48 +03:00
Ioannis Tsakpinis c0b19b7743 Another attempt to fix focus problems with Display.setParent on Windows:
- Reverted to WS_CHILD in window flags.
- Added WM_MOUSEACTIVATE handling: Focus the display + return MA_NOACTIVATE.
- Removed unnecessary appActivate calls in WM_ACTIVATE. We don't receive WM_ACTIVATE with WS_CHILD and the focus events do the job just fine.
- Detect parent window focus in update and force focus the display. This is useful when we alt-tab to the parent window and we don't receive any events.
2013-04-17 22:19:38 +03:00
kappaOne 1f81b30f66 map horizontal scroll wheel events to vertical scroll wheel events,
should fix the no event issue when using shift + scroll wheel
2013-04-14 15:19:49 +01:00
Ioannis Tsakpinis b83264e296 Added 4.3 in GL versions. 2013-03-27 13:11:29 +02:00
kappaOne 5738477a7b Merge pull request #19 from LWJGL/osx-java7
LWJGL OS X Java 7 Branch is Ready!
2013-03-14 04:49:43 -07:00
kappaOne d462208c4c Implement AWTGLCanvas, fix initial glViewport size when using
Display.setParent
2013-03-13 00:51:32 +00:00
kappaOne f381eb1f35 Simplify code in AWTSurfaceLock for CALayer support 2013-02-17 16:50:56 +00:00
kappaOne e67d717c4e simplify mouse code a little 2013-02-15 21:49:19 +00:00
kappaOne 9929d0fac9 release mouse grab when destroying the Mouse or Display 2013-02-10 20:32:07 +00:00
kappaOne 93bfa246c6 reduce use of window specific code in the context implementation code 2013-02-10 17:57:52 +00:00
kappaOne f6c0f17c79 Fix freeze/hang when calling AL.create() before Display.create() 2013-02-09 00:59:11 +00:00
kappaOne 4e0c593644 Tweak native cursor behaviour 2013-02-08 23:55:45 +00:00
kappaOne db4eb9c5c8 Replace AWT code for getAvailableDisplayMode and other DisplayModes
stuff to use pure native Cococa code.
2013-02-08 23:29:15 +00:00
kappaOne f6a2bc8327 Detect correctly if mouse is inside or outside the Display on
creation and resize.
2013-02-03 18:58:00 +00:00
kappaOne c328463776 Implement Cursor.destroy and release memory used by native cursors 2013-02-03 17:47:09 +00:00
kappaOne bf13ed9cc3 Restore default mouse cursor on mouse destroy 2013-02-03 16:52:45 +00:00
kappaOne a5c7ec0017 Return correct OS X Cursor.getCapabilities() value 2013-02-02 19:58:18 +00:00
kappaOne 4e1d539095 Further fix Native Mouse Cursor behaviour 2013-02-02 01:15:41 +00:00
kappaOne abeb9f389c Fix Mouse.isInsideWindow() when starting in fullscreen mode 2013-02-01 22:28:10 +00:00
kappaOne b27754089a Fix Display.setParent() on Java 7 by forcing CALayer usage as
classic NSView method is no long available.
2013-01-31 23:01:19 +00:00
Ioannis Tsakpinis 5400bb27db Misc fixes and improvements on Windows:
- Cleaned up cl flags and enabled parallel compilation. Native compilation
  is now multiple times faster.
- Fixed all /W3 compilation warnings.
- Changed window flag from WS_CHILDWINDOW to WS_POPUP when Display.setParent
  is used, in an attempt to fix focus-related issues.
2013-01-29 22:53:11 +02:00
kappaOne 27cfdf646e Improve native cursor behaviour 2013-01-27 23:45:08 +00:00
kappaOne 6c090f1f61 Implement Mouse.isInsideWindow() on OS X 2013-01-27 23:01:21 +00:00
kappaOne f0219aed1a Fix native cursor global handle passing 2013-01-26 22:47:36 +00:00
Ioannis Tsakpinis 62b8d36002 Changed Get(Async)KeyState return type to short. 2013-01-25 15:28:17 +02:00
kappaOne 486ff0edea Added initial work towards getting native cursors working, not
implemented yet
2013-01-25 00:28:26 +00:00
kappaOne fbb490bb3a Reenable the AWT Robot for CALayer mode 2013-01-16 19:02:09 +00:00
kappaOne fc9e4f4bda Tweak CALayer mode to active correctly 2013-01-15 23:09:03 +00:00
Ioannis Tsakpinis d721194cf3 Corrected JavaDoc param order. 2013-01-15 22:59:46 +02:00
Ioannis Tsakpinis 074f6f2d63 Fixed typos. 2013-01-15 17:51:19 +02:00
kappaOne fe2f06f36e Implement Keyboard and Mouse input when using CALayer mode 2013-01-14 23:35:46 +00:00
kappaOne 0dda33cd2d Implement CALayer rendering, no input yet 2013-01-13 15:34:24 +00:00
kappaOne d0759e9c12 remove unneeded code in MacOSXDisplay.getPbufferCapabilities() 2012-12-25 14:14:05 +00:00
kappaOne 0d6eac80f7 Implement initial work for enabling CALayer rendering 2012-12-23 22:09:57 +00:00
kappaOne 284f6135f3 Refactoring to prepare for implementing OS X CALayer based
Display.setParent, temporarily breaks Display.setParent on Java 7 and
Java 6 Applets.
2012-12-22 20:20:48 +00:00
kappaOne f7c64c89dc Don't use Display.setParent when fullscreen set, some refactoring 2012-12-18 22:10:44 +00:00
kappaOne 70842b92aa Implement Display.getX() and Display.getY() for OS X 2012-12-16 16:02:40 +00:00
kappaOne a576c3fb0f fix mouse scroll wheel direction 2012-12-11 21:30:04 +00:00
kappaOne ccf738dfaf Implement OS X Mouse.setCursorPosition() when in fullscreen mode 2012-12-09 22:12:02 +00:00
kappaOne 07499c30dd fix default viewport size when switching to fullscreen mode 2012-12-09 16:27:19 +00:00
kappaOne c2081c5c1a Remove old/redundant code for OS X 10.4 or lower. 2012-12-05 23:08:53 +00:00
kappaOne 804f09da47 Fixed resizing when using Display.setParent 2012-12-03 23:04:30 +00:00
Erik Broes 129d0711c5 Modifiers now report the correct side they are pressed. Added 'fn'-key as modifier. 2012-11-29 18:27:08 +01:00
Erik Broes 9d4f22034c Allow the use of F16-F19, SECTION, INSERT, HOME, END, DELETE, NUMPADENTER, CLEAR, LMETA keys. 2012-11-27 19:29:26 +01:00
kappaOne b5a87d818e Implement ScrollWheel functionality again 2012-11-25 20:14:48 +00:00
kappaOne c2159989f5 remove unused code for hiding OS menubar and dock as its no longer
needed.
2012-11-25 17:12:42 +00:00
kappaOne 7f46fb2fbd Reimplement fullscreen support, correct resizing behaviour on window
creation and to work reliably during runtime.
2012-11-25 15:07:20 +00:00
kappaOne 9931e5dbfc Fix native crash when closing the OS X Display window using the
close button
2012-11-22 22:43:43 +00:00
kappaOne 5f37b11857 just a test commit to see if git is working, will undo in next patch 2012-11-20 23:18:11 +00:00
Ioannis Tsakpinis f57c236373 Fixed GetAsyncKeyState usage. We read the MSB, not the LSB. 2012-11-19 18:49:34 +02:00
kappa1 4f4cb832af Cleaned up code by removing unneeded java classes MacOSXFrame and MacOSXMouseEventQueue and native code by removing mouse.c 2012-11-13 21:13:11 +00:00
kappa1 7bbfcadcef fix resizing when using Display.setParent() 2012-11-11 19:03:50 +00:00
kappa1 a749ad5c10 implement missing functionality for Display.getWidth() and Display.getHeight() not updating correctly on resize 2012-11-11 18:43:14 +00:00
Brian Matzon c09f5698b4 Comitting EmuMogs 28008537/src.zip drop to branch 2012-11-01 20:54:17 +00:00
kappa1 efbdd35845 Set a name for LWJGL's Sync class timer accuracy thread ("LWJGL Timer") for debugging purposes. RFE by NateS. 2012-09-12 21:00:48 +00:00
Ioannis Tsakpinis b824d786c4 Made GLContext.getCapabilities throw a RuntimeException instead of returning null when there's no GL context current in the current thread. 2012-09-06 07:11:54 +00:00
Ioannis Tsakpinis 092c224534 Translate extended keys before the state check. 2012-08-28 09:06:36 +00:00
Ioannis Tsakpinis 455b429984 Let repeat events pass the same-state filter. 2012-08-23 14:20:58 +00:00
Ioannis Tsakpinis 9ffdd18a3f Filter TAB key up event when we alt-tab focus the Display. 2012-08-23 12:38:45 +00:00
Ioannis Tsakpinis 814f9a141e Attempt to fix lost key up events when Display is out of focus. (Windows) 2012-08-23 10:36:12 +00:00
Ioannis Tsakpinis e7edecf2ae Fixes related to the new alternate signatures. 2012-08-18 14:00:45 +00:00
Ioannis Tsakpinis 929817a4eb Added support for OpenGL 4.3 and OpenGL ES 3.0.
Modified the generator process to use relative paths. We were hitting the command line length limit on Windows.
Some extension improvements, fixes and spec updates.
2012-08-07 15:14:03 +00:00
Brian Matzon b4cc6176e7 fixed issue with win32 get x/y returning client-area coords 2012-07-14 23:29:21 +00:00
kappa1 6c0e3d0484 Minor tweak to remove unused code 2012-05-13 18:03:05 +00:00
kappa1 f74af79c19 Display.wasResized() should now work correctly when using Display.setParent() 2012-05-13 18:01:12 +00:00
kappa1 6f40eeb58a Fix Display.getWidth() and Display.getHeight() to return the correct values on OS X when the window has been resized. 2012-04-14 18:55:40 +00:00
kappa1 75c1886d5e remove non-existing import. 2012-03-24 00:39:05 +00:00
kappa1 ffdcf4db13 fix minor javadoc typo's 2012-03-24 00:20:02 +00:00
kappa1 92ba9d8ccb Replace Display.sync(int fps) with an even better implementation, special thanks to Riven. 2012-03-24 00:04:52 +00:00