|
d44f3922
|
2014-07-07T10:33:32
|
|
Fixed bug 2629 - Mac: crash when calling SDL_DestroyWindow with an active OpenGL context
Alex Szpakowski
Since this commit https://hg.libsdl.org/SDL/rev/59b543340d63 , calling SDL_DestroyWindow will crash the program if the window has an active OpenGL context.
This is because the Cocoa_DestroyWindow code sets the window's driverdata to NULL and then calls [context setWindow:NULL], which tries to access the window's driverdata, resulting in a null pointer dereference.
I have attached a patch which fixes the issue by moving the line which sets the driverdata to NULL to after the lines which call functions that use the driverdata pointer.
|
|
610225b4
|
2014-06-28T19:51:26
|
|
Fixed null terminating the X11 error string
|
|
84cb2320
|
2014-06-25T17:13:43
|
|
Patched to compile with -Werror=declaration-after-statement
|
|
b29740b8
|
2014-06-25T17:06:12
|
|
Merged Ryan's SDL-gui-backend branch.
Adds three APIs, and implements them on X11, Cocoa, and Windows:
- SDL_CaptureMouse()
- SDL_GetGlobalMouseState()
- SDL_SetWindowHitTest()
|
|
84369567
|
2014-06-25T16:16:55
|
|
Changed SDL_GetAbsoluteMouseState() to SDL_GetGlobalMouseState().
This matches naming conventions in the main repository, between
SDL_GetRelativeMouseState() and SDL_WarpMouseGlobal().
|
|
afe14829
|
2014-06-25T00:43:10
|
|
Fixed bug 2556 - add compilation flag -Wshadow
Sylvain
here's the full patch for Blit + RLE.
|
|
b7b6d8ab
|
2014-06-22T02:30:36
|
|
Fixed crash initializing OpenGL ES renderer if OpenGL renderer fails
|
|
b56b37cd
|
2014-06-21T17:25:59
|
|
Fixed warning when building without ibus
|
|
41a39837
|
2014-06-18T20:11:39
|
|
Add IBus IME Support, move DBus code to its own file. (v3.3 squashed)
|
|
260549d1
|
2014-06-15T18:31:30
|
|
Fixed bug 2567 - x11: Local dropped files are not URI-decoded
Melker Narikka
Local files that are dropped onto a window under X11
are not going through a URI decoding step, resulting in the following
in my test application:
Dropped file /home/meklu/Pictures/Screenshot%20from%202013-10-30%2014:04:50.png
Couldn't load /home/meklu/Pictures/Screenshot%20from%202013-10-30%2014:04:50.png
Expected result:
Dropped file /home/meklu/Pictures/Screenshot from 2013-10-30 14:04:50.png
Loaded /home/meklu/Pictures/Screenshot from 2013-10-30 14:04:50.png successfully
I've attached a patch that fixes the issue by doing URI decoding in-place on
the file string buffer.
|
|
2d38a71a
|
2014-06-05T00:45:16
|
|
Added SDL_HITTEST_RESIZE_*, and implemented for X11.
|
|
b861efde
|
2014-06-05T00:03:33
|
|
Implemented SDL_GetAbsoluteMouseState().
X11 only for now, but this should be doable on every platform, I think.
|
|
529bcf62
|
2014-06-04T10:56:43
|
|
Fixed bug 2526, but regressed delivering dead key presses
|
|
45ed5ee4
|
2014-06-04T10:55:26
|
|
Added an API function to warp the mouse cursor in global screen space: SDL_WarpMouseGlobal()
|
|
c1e11f69
|
2014-06-03T21:13:00
|
|
X11: Provide specific X error when SDL_GL_CreateContext fails.
This makes the X error handler used for GL context creation handle *all* errors
and provide the user with specific error messages when SDL_GL_CreateContext
fails.
CR: icculus@icculus.org
|
|
98c03f39
|
2014-05-28T01:22:47
|
|
Changed drag area API to a hit-testing API.
There were several good arguments for this: it's how Windows works with
WM_NCHITTEST, SDL doesn't need to manage a list of rects, it allows more
control over the regions (how do you use rects to cleanly surround a circular
button?), the callback can be more optimized than a iterating a list of
rects, and you don't have to send an updated list of rects whenever the
window resizes or layout changes.
|
|
7a4ddcd8
|
2014-05-27T15:47:25
|
|
Don't hardcode an 8 here.
|
|
20ac4bae
|
2014-05-27T15:40:03
|
|
Some updates for the X11 drag areas work.
|
|
2744c019
|
2014-05-27T14:41:16
|
|
Initial work on X11 implementation of SDL_SetWindowDragAreas().
|
|
dd5277d6
|
2014-05-24T21:06:40
|
|
Fixed stack overflow in X11_CreateWindow() (thanks, rapha and Brad!).
This should be a "long" which on a 64-bit system is likely to be > 32-bits,
causing XGetICValues() to write past the end of the variable (and stack).
Fixes Bugzilla #2513.
|
|
b7d2c0e9
|
2014-05-24T01:30:37
|
|
Implemented SDL_CaptureMouse().
|
|
2dacb60b
|
2014-04-17T20:06:02
|
|
Fixed bug 2086 - valgrind memory not released
Sylvain
Someone provided a patch for this, recently on the mailing list :
-----
Hi,
it is possible to skip the bug in libX11 by using the defaults for
XNResourceName and XNResourceClass in `XCreateIC' (the table for the
"Input Context Values" [1] in libX11-doc shows that a default is
provided if it is not set).
diff -ur SDL2-2.0.3~/src/video/x11/SDL_x11window.c SDL2-2.0.3/src/video/x11/SDL_x11window.c
--- SDL2-2.0.3~/src/video/x11/SDL_x11window.c 2014-04-04 17:09:40.764307181 +0200
+++ SDL2-2.0.3/src/video/x11/SDL_x11window.c 2014-04-04 17:10:23.887765046 +0200
@@ -239,8 +239,7 @@
data->ic =
X11_XCreateIC(videodata->im, XNClientWindow, w, XNFocusWindow, w,
XNInputStyle, XIMPreeditNothing | XIMStatusNothing,
- XNResourceName, videodata->classname, XNResourceClass,
- videodata->classname, NULL);
+ NULL);
}
#endif
data->created = created;
Tito Latini
[1] http://www.x.org/releases/X11R7.7-RC1/doc/libX11/libX11/libX11.html#Input_Context_Values
|
|
f6953cf4
|
2014-04-17T20:02:11
|
|
Fixed bug 2502 - Memory leak inside SDL_x11events.c -> X11_DispatchEvent(_THIS)
bojko_1000
Code @566:
if (data->xwindow) {
Atom _net_frame_extents = X11_XInternAtom(display, "_NET_FRAME_EXTENTS", 0);
Atom type = None;
int format;
unsigned long nitems = 0, bytes_after;
unsigned char *property;
X11_XGetWindowProperty(display, data->xwindow,
_net_frame_extents, 0, 16, 0,
XA_CARDINAL, &type, &format,
&nitems, &bytes_after, &property);
if (type != None && nitems == 4)
{
border_left = ((long*)property)[0];
border_right = ((long*)property)[1];
border_top = ((long*)property)[2];
border_bottom = ((long*)property)[3];
}
}
Code after _the fix_:
if (data->xwindow) {
Atom _net_frame_extents = X11_XInternAtom(display, "_NET_FRAME_EXTENTS", 0);
Atom type = None;
int format;
unsigned long nitems = 0, bytes_after;
unsigned char *property;
X11_XGetWindowProperty(display, data->xwindow,
_net_frame_extents, 0, 16, 0,
XA_CARDINAL, &type, &format,
&nitems, &bytes_after, &property);
if (type != None && nitems == 4)
{
border_left = ((long*)property)[0];
border_right = ((long*)property)[1];
border_top = ((long*)property)[2];
border_bottom = ((long*)property)[3];
}
X11_XFree(property);
}
I have found that leak with valgrind.
|
|
3dcb451f
|
2014-04-09T21:29:19
|
|
Added a README file regarding WinRT support
To note, this file is currently formatted with CRLF line endings, rather than
LF, to allow the file to be viewed with Notepad.
|
|
2298ed17
|
2014-03-25T15:18:18
|
|
Remove two unused variables, causing compiler warnings.
|
|
c3d10376
|
2014-03-23T09:44:04
|
|
Better keyboard detection when some of the keys are remapped, thanks to Lewis Wall
|
|
4ca76b3e
|
2014-03-02T14:59:06
|
|
Add support for the freedesktop.org Idle Inhibition specification,
as per:
http://people.freedesktop.org/~hadess/idle-inhibition-spec/
This makes screensaver inhibition work with GNOME 3 and other
desktop environments that implement the specification.
https://bugzilla.libsdl.org/show_bug.cgi?id=2169
|
|
c2c08f68
|
2014-03-02T11:10:00
|
|
Backed out changeset 9357a2ca3473
|
|
2cf453dd
|
2014-03-02T11:08:05
|
|
Make sure we return version 0 if XInput detection fails
|
|
afc74d98
|
2014-03-02T02:00:40
|
|
Better attempt to detect available X11 XInput2 features.
Fixes Bugzilla #2306.
|
|
abe2ac2c
|
2014-02-21T08:37:57
|
|
Fixes #2326, clean up the X11 backend a bit
|
|
58edac3e
|
2014-02-02T00:53:27
|
|
Fixed bug 2374 - Update copyright for 2014...
Is it that time already??
|
|
2efa2dc2
|
2014-01-27T13:43:04
|
|
X11: Don't redraw dialog box when mouse moves.
This fixes bug #2343. (https://bugzilla.libsdl.org/show_bug.cgi?id=2343)
Thanks to Melker Narikka for the patch.
|
|
5fd5567c
|
2014-01-08T14:53:08
|
|
define a font-size for the "unicode" message box font so the text isn't unreadable on linux systems
|
|
7aef2350
|
2013-12-23T17:37:22
|
|
Added a relative mouse mode that uses mouse warping instead of raw input.
To enable this, set the environment variable SDL_MOUSE_RELATIVE_MODE_WARP to "1"
When mouse relative mode is disabled, put the cursor back where the application expects it to be, instead of where it was when relative mode was enabled.
|
|
f848adff
|
2013-11-29T10:06:08
|
|
Improve Android pause/resume behavior.
|
|
2bb344d6
|
2013-11-27T10:29:27
|
|
Don't crash when no WM is present.
CR: Sam Lantinga.
|
|
7e1289af
|
2013-11-24T23:56:17
|
|
Make internal SDL sources include SDL_internal.h instead of SDL_config.h
The new header will include SDL_config.h, but allows for other global stuff.
|
|
61959aa6
|
2013-11-22T13:24:53
|
|
OpenGL ES support for Windows
|
|
a2187171
|
2013-11-20T21:17:26
|
|
Query version for X11 XInput2 multitouch separately from base XInput2.
|
|
9095952a
|
2013-11-20T12:51:18
|
|
Clean up X11 OpenGL ES backend
If you really need to switch between OpenGL and GLES context types, just issue
a SDL_GL_UnloadLibrary manually.
|
|
35915d4f
|
2013-11-14T20:14:02
|
|
Clean up the EGL related video backends (X11, Android, RPi)
|
|
819148a8
|
2013-11-11T19:17:32
|
|
[X11] Fix up compilation when EGL headers are not present.
|
|
15a3bbcb
|
2013-11-10T20:38:50
|
|
[X11] Ignore both NotifyGrab and NotifyUngrab modes in FocusIn/FocusOut events
|
|
9228c845
|
2013-11-10T14:48:44
|
|
Fixed issue with dead key press/release events being filtered out.
|
|
0d39d090
|
2013-11-10T14:33:01
|
|
Hopefully fixed focus problems when handling a global hotkey on X11.
See this thread for details:
https://bugzilla.mozilla.org/show_bug.cgi?id=578265
|
|
493fadd5
|
2013-11-08T14:04:35
|
|
Fixed spot where SDL was assuming that two displays having the same origin means they're the same display. Changed it to check for the same extents instead.
(Sam actually wrote this, I'm just reviewing and checking it in.)
|
|
f2224e1f
|
2013-11-03T09:55:27
|
|
Fixed bug 1990 - focus/keyboard events not generated correctly for multiple windows
Mai Lavelle
I've recently tried to create multiple windows and process key events for them, and found that key events weren't being generated for most of the windows. After some investigating I've observed the following effects. All but the most recently created window experience these effects...
- a focus lost event is generated immediately after the focus gained event, even tho window still has focus
- key events report window id 0 rather than the id of the window which has focus, SDL thinks no window has focus?
- giving focus to a non SDL window and then selecting an SDL window causes events to be generated as expected, but only until focus changes again
Focus change events are queued and delayed (200 ticks) before they are dispatched. The problem occurs when a focus out and focus in event are received on the same tick. When these delayed events are dispatched they will be sent in the order determined by the window list rather than the order in which they are received.
The focus out dispatch is implemented by calling SDL_SetKeyboardFocus(NULL). This will remove focus from any window, regardless of whether it is the one originally targeted by the X11 event.
Since SDL_SetKeyboardFocus() will always dispatch a focus lost event as needed, the easiest solution is simply to only call SDL_SetKeyboardFocus(NULL) when SDL_GetKeyboardFocus() matches the target window.
|
|
e0771482
|
2013-10-23T13:43:17
|
|
Fix regression causing crashes when running without a window manager.
|
|
298d3d62
|
2013-10-22T21:54:52
|
|
Fixed duplicate const warning
|
|
08fa8da7
|
2013-10-20T21:56:15
|
|
Fixed bug 2129 - fix for bug 2121 breaks linking for mingw and throws multiple warnings
Andreas Ertelt
The problem in question is caused by changeset 7771 (http://hg.libsdl.org/SDL/rev/5486e579872e / https://bugzilla.libsdl.org/show_bug.cgi?id=2121)
The redefinition of __inline__ (introduced by the addition of begin_code.h:128's "|| __STRICT_ANSI__") results in mingw's gcc throwing multiple
warning: always_inline function might not be inlinable [-Wattributes]
as well as a whole bunch of redefinitions of mingw internals which break linking of projects including the SDL2 headers.
|
|
f5fa492e
|
2013-10-20T20:42:55
|
|
Added a macro SDL_TICKS_PASSED() to correctly compare two 32-bit tick values.
Went through the code and used the macro and fixed a couple places that were using incorrect timestamp comparisons.
|
|
0e699eb5
|
2013-10-20T21:18:05
|
|
Added SDL_GL_FRAMEBUFFER_SRGB_CAPABLE (thanks, David!).
Fixes Bugzilla #1985.
|
|
a25b5192
|
2013-10-20T09:58:37
|
|
Fixed compiling with the new X11 symbol wrapping
|
|
6a3478c2
|
2013-10-20T17:23:43
|
|
Fix bug 1300 by querying current border size in ConfigureNotify, and adjusting window coordinates accordingly.
|
|
b4a00144
|
2013-10-18T10:56:45
|
|
Fixed the XInput2 X11 symbols.
|
|
a2bd8970
|
2013-10-18T01:36:41
|
|
Don't supply duplicate X11 symbols inside SDL.
Fixes static linking when something else also uses X11.
|
|
14e13e13
|
2013-10-17T17:38:55
|
|
Fixed compiler warning if dynamic X11 loading isn't enabled.
|
|
7db31223
|
2013-10-17T17:37:23
|
|
Fixed using the wrong variable when reporting a missing SDL scancode mapping.
|
|
6435a82d
|
2013-10-14T09:12:30
|
|
Backed out revision fb5ab0e91c56, the platform specific messagebox functions don't have the right prototype since they're designed to be used standalone.
|
|
074a1c4c
|
2013-10-12T16:29:34
|
|
Fixes X11 video backend compilation when no GL is available
For example, in our Raspberry Pi sysroot.
|
|
8b6ad7ff
|
2013-09-27T23:47:57
|
|
Fixed bug 2101 - CWBackPixel causes weird window flickering on window resize
aBothe
I tried to experiment a bit with SDL2 and OpenGL today and noticed that something caused some weird flickering when resizing my nicely drawn SDL2/OpenGL window:
Just after resizing, the background went black and I had to let my OpenGL code redraw the contents..
However, after some hours spent with googling I found out that in OpenGL examples where this CWBackPixel flag was not used when creating X windows, there was no flickering while resizing the window.
See http://www.sbin.org/doc/Xlib/chapt_04.html @ "The Window Background" for more info.
|
|
b9567776
|
2013-09-27T23:35:17
|
|
# User Darren Salt <devspam@moreofthesa.me.uk>
# Date 1379621782 -3600
# Thu Sep 19 21:16:22 2013 +0100
Work around a false-positive in the X11 mouse wheel code
This false positive occurs when one particular button on my mouse is
pressed. The kernel which I'm using is patched to cause a release event to
be synthesised immediately when the mouse says that this button is pressed
because the mouse doesn't signal release until the button is next pressed.
(Also documents a false negative, observed with the horizontal scroll wheel
on the same mouse.)
|
|
49d64d52
|
2013-09-13T17:42:38
|
|
Fix X11_RestoreWindow() and X11_RaiseWindow() to properly do window activation.
X11_RestoreWindow() had a call ordering problem that prevented activation, and X11_RaiseWindow() wasn't attempting activation. Windows and OS X both activate in these cases.
CR: saml
|
|
a9166450
|
2013-09-10T18:25:13
|
|
[SDL] X11+GL: Allow Visual override for GL windows.
SDL provides an SDL_VIDEO_X11_VISUALID environment variable that lets you override
window visuals, but it wasn't being checked for OpenGL windows.
CR: Sam.
|
|
ace1e98a
|
2013-08-29T15:02:32
|
|
Fixes bug #2040, prepare SDL_GL_CONTEXT_EGL for deprecation on v2.1
SDL_GL_CONTEXT_EGL = 1 is now internally treated as profile_mask = SDL_GL_CONTEXT_PROFILE_ES
|
|
e07d7e64
|
2013-08-29T08:30:21
|
|
Christoph Mallon: Replace strlen(x) == 0 (O(n)) by x[0] == '\0' (O(1)).
|
|
f79fc33a
|
2013-08-29T08:29:21
|
|
Christoph Mallon: Remove pointless if (x) before SDL_free(x)
|
|
3d217ed7
|
2013-08-21T10:07:48
|
|
Fixed crash if the IC isn't set up for some reason (bad X11 locale?)
|
|
6107705a
|
2013-08-21T10:34:32
|
|
Fix a couple of warnings
|
|
2490166d
|
2013-08-21T10:12:16
|
|
Fixes for -Wdeclaration-after-statement
|
|
1e49b1ed
|
2013-08-21T09:47:10
|
|
OCD fixes: Adds a space after /* (glory to regular expressions!)
|
|
695344d1
|
2013-08-21T09:43:09
|
|
OCD fixes: Adds a space before */
|
|
24006be2
|
2013-08-20T20:31:57
|
|
Fixed compiler warning.
|
|
0eeb76d8
|
2013-08-19T16:29:46
|
|
Fixes bug #2037, common EGL code for Android and X11
|
|
67367be0
|
2013-08-12T22:00:21
|
|
Don't print "unrecognized key" message for an X11 keycode of 0. This can happen with composed characters.
|
|
dad42067
|
2013-08-12T11:13:50
|
|
Fixes #2022, do not resume on Android when surfaceChanged
If the app is in landscape mode and the user presses the power button, a pause
is followed immediately by a surfaceChanged event because the lock screen
is shown in portrait mode. This triggers a "false" resume.
So, we just pause and resume following the onWindowFocusChanged events.
Also, wait for SDL_APP_WILLENTERBACKGROUND and SDL_APP_DIDENTERBACKGROUND before
blocking the event pump.
|
|
1ad936eb
|
2013-08-11T19:56:43
|
|
Fixed bug 2027 - Full-screen appears to be broken - hang in SDL_DestroyWindow()
Rainer Deyke
I'm running Linux Mint 15 with the Cinnamon window manager. SDL_DestroyWindow consistently locks up for me when the window if fullscreen.
|
|
1df1e696
|
2013-07-14T11:28:44
|
|
Added the platform specific messagebox function to the video function list
|
|
e14e0ef9
|
1970-01-01T04:04:21
|
|
Fixed crash if the OpenGL library hasn't been loaded yet
|