Commit graph

103 commits

Author SHA1 Message Date
Sam Lantinga
bb0752e573 Updated touch API
* Normalized touch coordinates as floats in the 0...1 range
* Removed unused touchpad concepts from the API
* Added API functions to get active touch devices and current finger state
2013-03-03 01:01:33 -08:00
Sam Lantinga
71ea3033fa Added a mouse ID to the mouse events, which set to the special value SDL_TOUCH_MOUSEID for mouse events simulated by touch input. 2013-03-02 20:44:16 -08:00
Sam Lantinga
932ea49e88 Merged 2013-03-01 11:18:35 -08:00
Sam Lantinga
1b30d1a566 Cleaned up and fixed the Windows keyboard mapping code.
Use KP_PERIOD instead of KP_DECIMAL
Don't remap keys which are always keycode named versions of scancodes
2013-02-28 21:40:08 -08:00
Sam Lantinga
176d7c570c sdl - check for both the up and down flags being set in the raw input calls. Also use WM_ACTIVE to resync mouse buttons on activate 2013-02-27 11:39:43 -08:00
Sam Lantinga
6b945c8586 sdl - don't use the RAWMOUSE struct to get button press information, it lies badly to you, just use the usual windows message path 2013-02-27 11:39:41 -08:00
Sam Lantinga
f4e5303f46 sdl - use the wParam and rawinput data for mouse state rather than just the message type, fixes missing mouse up events when alt-tabing out of the window
CR: SamL
2013-02-27 11:39:39 -08:00
Sam Lantinga
a2dccaee2b Fixed cygwin compile 2013-02-26 20:32:11 -08:00
Andreas Schiffler
3269062684 Fix cygwin compile 2013-02-26 07:50:42 -08:00
Jørgen P. Tjernø
05631f0599 sdl
- fix win32 mapping of alpha-numeric keys after scancode changes
2013-02-25 16:52:52 -08:00
Jørgen P. Tjernø
383deb9a61 sdl2
- more scancode goodness, removing now dead wparam translation code
- add scancode for SDL_SCANCODE_NONUSBACKSLASH
- don't translate sdl key values for numeric and grave key

CR: SamL
2013-02-25 16:52:51 -08:00
Jørgen P. Tjernø
cf58b77360 sdl2
- change the windows scancode logic to use the scan code value in lparam rather than VK's to get a stable scancode value across different KB layouts
2013-02-25 16:52:42 -08:00
Sam Lantinga
95dcfa4c28 Happy New Year! 2013-02-15 08:47:44 -08:00
Sam Lantinga
c54822142d Fixed increasing the size of resizable windows 2013-02-11 21:39:58 -08:00
Sam Lantinga
eb63dcd330 Fixed mouse wheel delta on Windows 2013-02-11 21:29:36 -08:00
Andreas Schiffler
da76be8927 Add SDL_test test suite; add fuzzer test cases; fix fuzzer bug; fix compiler warnings 2013-02-08 07:14:50 -08:00
Sam Lantinga
069a2cce76 Fixed bug 1682 - Resize collapses window instantly to a size of 0 x 124.
Marco Schmidt

After sizing my main window (the only window in my application) through
grabbing the window border with the mouse the window collapses instantly to a
size of 0 x 124. In my application I can not resize the window to a normal size
again.

I tried to reproduce the problem - and here a the minimal steps I found.

I'm running WIN8 x64, VS2012Pro, HG SDL-2.0 tip, WIN32-Build.

Minimal steps to reproduce my problem:

- open solution SDL_VS2012
- make testdraw2 the start project
- pass command line option --resize to the debuggee testdraw2
- starting the application testdraw2
- try to resize the window
- the application window resizes to a minimal size 0 x 124.
- the application crashes to divide by zero .... (this is only the aftermath
but a unhandled error condition)
2013-02-08 01:04:07 -08:00
Andreas Schiffler
b4a190fb6f Update SDL_InvalidParamError to take param name; add additional fuzzer function; add new tests to keyboard test suite; improve surface test suite 2013-01-12 22:58:12 -08:00
Andreas Schiffler
a20096403e Add new internal error message for invalid parameters; add validation of input rect in SDL_SetTextInputRect; add test cases for SDL_SetTextInputRect to keyboard suite 2013-01-11 20:36:39 -08:00
Sam Lantinga
0c7ab10e80 Implemented getting the display name on Windows 2012-12-31 15:36:19 -08:00
Sam Lantinga
1a92f18381 Added SDL_SetWindowMaximumSize() and SDL_GetWindowMaximumSize()
Also fixed Cocoa implementation so that it affects client area, not the whole window area.
2012-12-31 12:15:25 -08:00
Sam Lantinga
f367ee7277 Implemented SDL_HINT_ALLOW_TOPMOST for the Cocoa video driver 2012-12-31 10:14:38 -08:00
Sam Lantinga
f4294fd806 Improvements from Alfred:
- Added new SDL_HINT_ALLOW_TOPMOST hint, when set to "0" then never set the topmost bit on a window. Useful when debugging fullscreen issues.
- fixed crash in windows joystick scanning if we failed to load the xinput dll
- added support for SDL_WINDOW_FULLSCREEN_DESKTOP under windows
- synthesize relative mouse movements if directinput fails to send relative moves, happens under virtual box.
2012-12-31 09:30:15 -08:00
stopiccot
ea4e328e39 SetWindowMinimumSize Windows implementation 2012-11-19 00:39:19 +03:00
Michael Sartain
8f081103e5 Add SDL_CreateSystemCursor for Windows and Linux. 2012-11-19 15:11:10 -08:00
Sam Lantinga
b9ad4410f8 SDL no longer grabs the keyboard by default on X11.
You can re-enable that functionality by setting a new hint SDL_HINT_GRAB_KEYBOARD
2012-11-07 15:55:43 -08:00
Sam Lantinga
f8a4c99701 Added Windows message box implementation, but it needs a little work on layout. 2012-10-30 18:59:56 -07:00
Sam Lantinga
6f2480d364 Fixed bug where SDL thought the window was shown and it wasn't actually.
From Rick Johnson:

Here's the call pattern:

Create the window hidden
The game tells it to adjust the window position
Make the window visible.

A problem arises from the SetWindowsPos() - the default behavior of that would cause a WM_ACTIVATE message to be passed, of which SDL interprets that as the window now becoming visible and sets the flags.  The window is not visible though.  Now, when you try to call ShowWindow() - SDL sees those flags as indicating that the window is visible and early returns.

My proposed fix was that if we are calling set windows position and we aren't visible, add on the flag SWP_NOACTIVATE, which tells windows to not send down the WM_ACTIVATE flag.
2012-10-02 10:38:10 -07:00
Sam Lantinga
b6fe53e5ea Fixed bug 1593 - SDL_DROPFILE event doesn't work on Windows
Philipp Wiesemann 2012-09-30 05:56:09 PDT

I attached a patch which tries to implement the dropfile support for Microsoft
Windows. If applied SDL_DROPFILE events should be sent for single or multiple
files which are dropped on window.

The handling on Windows side is always activated (cursor will change and so on)
because there is no connection between SDL_EventState() and the window setup. I
assumed this additional overhead would be small and can be ignored.
2012-09-30 11:10:17 -07:00
Sam Lantinga
8c71219642 The gl_data is optional for the driver, so don't early out of the context delete call if it doesn't exist. 2012-09-30 01:08:48 -07:00
Sam Lantinga
f380ecb137 Removed executable bit from source files 2012-09-27 14:35:28 -07:00
Ryan C. Gordon
5c732d6324 Removed Windows CE support from SDL 2.0.
It's a long-dead platform, and we don't have any way to build for, test, or
maintain it, so there's no sense in doing acrobatics to support it.

If you need Windows CE support, use SDL 1.2. If you need Windows Phone support,
send SDL 2.0 patches for the newer Windows Mobile platform.
2012-09-15 10:59:39 -04:00
Ryan C. Gordon
93cdb45727 Made Windows version of SDL_SetWindowBordered() mostly work.
The sizing still isn't quite right.
2012-09-14 13:14:20 -04:00
Ryan C. Gordon
3535fe0b91 Consolidate some code in the Windows video target. 2012-09-14 13:13:47 -04:00
Ryan C. Gordon
8835a0dacb Added SDL_SetWindowBordered() API.
--HG--
extra : rebase_source : 11750f0d8e7b59af26d97c778a332c0b4b72ea4b
2012-09-13 01:43:53 -04:00
Ryan C. Gordon
e5f91113a3 Fixed wglShareLists() call that used the wrong variable. 2012-08-25 16:49:05 -04:00
Ryan C. Gordon
816523a285 Fixed a bunch of compiler warnings with Cygwin/MingW. 2012-08-24 19:34:28 -04:00
Sam Lantinga
99502c82fd Fixed bug 1565 - some small GL context creation enhancements
Matthias Bentrup 2012-08-09 12:53:17 PDT

With OpenGL 4.3 the ARB added a new context flag for context reset isolation
and renamed the existing ES2 profile bit to ES profile bit, as it can be used
to request GLES 3 compatible contexts, too.

This patch adds these changes to SDL on Linux and Windows.

Also SDL lacks the ability to create shared contexts. This patch also adds a
new GL attribute to enable context sharing. As casting a GL context to int is
not portable, I added only a boolean attribute
SDL_GL_SHARE_WITH_CURRENT_CONTEXT, which makes the new context share resources
with the context current on the creating thread.
2012-08-12 11:16:24 -07:00
Ryan C. Gordon
68a98ad796 Patched to compile on Windows. 2012-08-01 21:03:46 -04:00
Ryan C. Gordon
55a52db07d Cleanups to Windows WGL_EXT_swap_control_tear code. 2012-08-01 20:57:03 -04:00
Ryan C. Gordon
2cd5fc4e97 Add support for (GLX|WGL)_EXT_swap_control_tear.
This required a small public API change: SDL_GL_SetSwapInterval() now accepts
 negative values, and SDL_GL_GetSwapInterval() doesn't report errors anymore
 (if it can't work, it'll return zero as a reasonable default).

If you need to test for errors, such as a lack of swap_control_tear support,
 check the results of SDL_GL_SetSwapInterval() when you set your desired
 value.
2012-08-01 20:29:36 -04:00
Kajetan Swierk
a82bdaf85d Fixed typo in one of WGL definition 2012-07-22 21:47:56 +02:00
Sam Lantinga
c7a5aa5128 Patrick Baggett implemented relative mouse mode on Win32
Here is my first rough attempt. "testrelative" feels right to me, but I'd like it someone else tested this, especially compared to Linux/OSX. The "Ctrl+r" to switch between relative and normal mouse movements seems to work flawlessly. With relative mouse movement, the only way to change focus is via keyboard. I'm not sure if that is the correct approach, but that would seem to be the most useful mode for games. Still, if my assumption is wrong, I can fix that no problem.
2012-07-03 23:52:02 -04:00
Sam Lantinga
38463b3a0c Add OpenGL 3.X context creation support
Matthias Bentrup 2011-10-30 03:58:24 PDT

I've updated the context creation patch to include the bugfixes by Martin
Schreiber and also included a profile bit to request a ES2 compatible profile.

The wgl context creation may use 2 call to wglChoosePixelFormat if no
acceleration attribute is selected, this should work around a bug with buggy
AMD drivers (see #1254).
2012-02-20 23:37:57 -05:00
Sam Lantinga
1dafe0e989 Fixed bug 1333 - segfault if opengl window could not get created
When the window couldn't be created, the normal window destruction process happens, which among other things, destroys the framebuffer, if any.
2012-01-07 22:52:41 -05:00
Sam Lantinga
028e5dcdbd Happy New Year! 2011-12-31 09:28:07 -05:00
Sam Lantinga
f9a731d576 Fixed whitespace 2011-11-10 06:38:26 -05:00
Sam Lantinga
ad2a21d404 Lots of fixes importing SDL source wholesale into a new iOS project
--HG--
rename : src/libm/math.h => src/libm/math_libm.h
2011-10-31 05:56:58 -04:00
Andreas Schiffler
c5e05365c6 Update SDL_HasClipboardText functions to return value based on clipboard content; Fix memory leak in fallback SetClipboard implementation 2011-10-29 23:43:59 -07:00
Ryan C. Gordon
cf1adee2e4 Make sure window->driverdata is set before we might need it.
Thanks to Mako_energy for the fix!
2011-10-12 20:01:09 -04:00