|
bd14aa63
|
2020-11-21T23:09:30
|
|
Autobuild
|
|
2d64e37e
|
2020-11-02T18:09:43
|
|
Initial rebase of xerpi's port
|
|
ef0bbfd6
|
2020-11-16T20:40:22
|
|
Include anf fix vita2d renderer
|
|
dbb730d3
|
2020-11-14T23:37:26
|
|
Separate vita piglet renderer. Add proper render initialization and window re-creation.
|
|
391bb80b
|
2021-03-05T16:53:06
|
|
Replace duplicate functions and lstrlen/lstrcat with SDL string functions
|
|
dd5aff30
|
2021-03-04T18:27:56
|
|
SDL_fillrect.c: updated SSE_BEGIN macro for windows clang-cl
from a patchset by Vladislav Dmitrievich Turbanov:
https://github.com/libsdl-org/SDL/pull/4062
|
|
e88d7846
|
2021-03-04T14:36:33
|
|
Update SDL_blit_auto.c
|
|
ab0cf42a
|
2021-03-04T14:33:56
|
|
Software nearest scaling: start at the middle of pixel
so that it matches opengl GL_NEAREST mode most of the time
|
|
57a927e8
|
2021-02-12T14:27:58
|
|
wayland: Explicitly set min/max size for xdg-shell
|
|
33598563
|
2021-02-26T23:21:25
|
|
Fix coding style
|
|
69a600b0
|
2021-02-26T22:24:48
|
|
Implement requested changes
|
|
0e35f0be
|
2021-02-26T21:43:36
|
|
Fix KMSDRM-related warnings
|
|
dfa64ead
|
2021-02-25T19:22:31
|
|
KMSDRM: Add hint to enable the backend without DRM master
In some cases, it can be useful to have the KMSDRM backend even if it cannot
be used for rendering. An app may want to use SDL for input processing while
using another rendering API (such as an MMAL overlay on Raspberry Pi) or
using its own code to render to DRM overlays that SDL doesn't support.
This also moves the check for DRM master to an earlier point where we can fail
initialization of the backend, rather than allowing the backend to initialize
then failing the creation of a window later.
|
|
8c5b7af2
|
2021-02-25T19:30:47
|
|
Wayland: Fix mouse pointer hiding on Plasma Wayland
Unlike Mutter and Sway, KWin actually checks the serial passed in
wl_pointer_set_cursor(). The serial provided is supposed to be the
serial of the pointer enter event, but We were always passing 0.
This caused KWin to drop our requests to hide the cursor.
Thanks to the KDE folks for spotting this in my debug logs.
Fixes #3576
|
|
d2d834b9
|
2021-02-25T15:21:59
|
|
KMSDRM: Add gamma support
|
|
72f7a10c
|
2021-02-25T19:40:28
|
|
disable pixman ARM blitters for __aarch64__ | _M_ARM64
Closes: https://github.com/libsdl-org/SDL/issues/4095
|
|
8481229f
|
2021-02-22T15:00:52
|
|
Fix error handling in KMSDRM_AddDisplay
Add missing `goto cleanup` and check that `dispdata` is not NULL before dereferencing it.
|
|
2df9c15e
|
2021-02-22T14:51:42
|
|
Fix memory leak in KMSDRM_Vulkan_CreateSurface
Variable `device_props` is never freed.
|
|
11cb53d2
|
2021-02-21T23:28:49
|
|
[KMSDRM] Add missing break and modify comments.
|
|
9172e413
|
2021-02-21T22:57:22
|
|
[KMSDRM] Fix intermitent bug in Vulkan initialization on Raspberry Pi 4.
|
|
0052339b
|
2021-02-20T19:53:44
|
|
Move handleURLEvent setEventHandler to init
|
|
e4a81a98
|
2021-02-17T12:06:29
|
|
[KMSDRM] Correct indentation.
|
|
9b9d0d48
|
2021-02-15T11:49:09
|
|
mac/iOS: allow Metal in windows created without an explicit backend
Fixes SDL_CreateWindowAndRenderer (and similar situations) not choosing a Metal backend. See #3991.
Passing an explicit backend into CreateWindow, eg SDL_WINDOW_OPENGL or SDL_WINDOW_METAL, will still prevent the window from being used with other backend types.
|
|
fa367cdd
|
2020-11-24T10:56:50
|
|
emscripten: Fix alt key being a nav key
|
|
edaf3f9c
|
2020-04-21T15:02:06
|
|
emscripten: Extend the "nav key" blacklist
Add the F keys and Ctrl/Alt+*. Consistent with other naviagtion
disabling. Also, none of these generate keypress events anyway.
|
|
a99eec77
|
2021-02-12T14:31:43
|
|
wayland: Minor whitespace fix
|
|
65fbf36c
|
2021-02-12T14:46:49
|
|
Cleaned up a few more Bugzilla mentions.
|
|
f443a6fc
|
2021-02-11T02:05:02
|
|
Fix format string warnings for width-based integers
The DJGPP compiler emits many warnings for conflicts between print
format specifiers and argument types. To fix the warnings, I added
`SDL_PRIx32` macros for use with `Sint32` and `Uint32` types. The macros
alias those found in <inttypes.h> or fallback to a reasonable default.
As an alternative, print arguments could be cast to plain old integers.
I opted slightly for the current solution as it felt more technically correct,
despite making the format strings more verbose.
|
|
cad67082
|
2021-02-04T19:04:56
|
|
wayland: Check for both _WAYLAND_CLIENT_H and WAYLAND_CLIENT_H
|
|
629334f2
|
2021-02-09T15:02:55
|
|
Fixed bug 5543 - Wayland: Fix waylandvideo.h warnings
wahil1976
This patch fixes the warnings seen when compiling the Wayland backend. This will also be required in the future to avoid issues with compilation.
|
|
d9ba2044
|
2021-02-08T16:55:01
|
|
Backed out changeset 852a7bdbdf4b
This causes a use-after-free memory error
|
|
4183211a
|
2021-02-08T16:01:37
|
|
free the 'display' after it was added to global list
|
|
005e2c59
|
2021-02-09T00:57:25
|
|
[KMS/DRM] Bugfix number #5535: Improve reliability, by wahil1976.
|
|
19fa85d8
|
2021-02-06T16:05:55
|
|
[KMS/DRM] Fix build warning.
|
|
6ee53258
|
2021-02-06T14:03:53
|
|
[KMS/DRM] Replace indent tabs with spaces, as intended.
|
|
59cd46c2
|
2021-02-05T22:16:50
|
|
[KMS/DRM] Merge patch for bug #5532: No need to correct cursor position now that all windows are fullscreen. Link: https://bugzilla.libsdl.org/show_bug.cgi?id=5519.
|
|
538f7ad6
|
2021-02-05T00:27:11
|
|
[KMS/DRM] Remove redundant SDL_SendWindowEvent() call.
|
|
7beba050
|
2021-02-04T23:35:52
|
|
[KMS/DRM] Restore all-windows-are-fullscreen functionality, since there is no window manager in KMSDRM.
|
|
ff297753
|
2021-02-04T10:46:34
|
|
Fixed compiler warning
|
|
a60af1e4
|
2021-02-04T07:00:06
|
|
Backed out changeset 1cde3dd0f44d - this breaks windows which are created and then set to FULLSCREEN_DESKTOP
|
|
e404b525
|
2021-02-03T21:31:50
|
|
KMSDRM doesn't have a window manager, so all windows are fullscreen
|
|
549bc133
|
2021-02-03T09:51:42
|
|
SDL_vulkan_utils: minor code clean-up
|
|
c0166a29
|
2021-02-03T09:32:09
|
|
SDL_ConvertColorkeyToAlpha: remove and clarify a FIXME
This function doesn't handle bpp 1 or 3 case, because those formats never have an alpha channel
|
|
e862856e
|
2021-02-01T08:57:39
|
|
wayland: Don't crash when the properties of already existing wl_output change
|
|
cef198c9
|
2021-02-01T08:55:48
|
|
Fixed bug 5524 - Pass NSString to NSLog()
Hiroyuki Iwatsuki
If you pass the C string directly to NSLog(), it will be garbled with Japanese and probably other language strings, or no log will be output at all.
NSLog("Hello, World!"); // => "Hello, World!"
NSLog("こんにちは、世界!"); // => No output...
Therefore, you need to convert the string to an NSString before passing it to NSLog().
NSString *str = [NSString stringWithUTF8String:"こんにちは、世界!"];
NSLog(@"%@", str); // => "こんにちは、世界!"
Thank you.
|
|
0ed16ced
|
2021-01-31T19:10:02
|
|
free 'outputs' in 'Wayland_DestroyWindow'
|
|
a4467846
|
2021-01-31T19:09:44
|
|
free the 'data_device_manager'
|
|
3ae2ec34
|
2021-01-31T19:06:37
|
|
wayland: Fix transform and scale handling when setting display mode
|
|
2c764331
|
2021-01-31T04:04:26
|
|
[KMS/DRM] Merge patch for bug 5522#: Implement KMSDRM_GetWindowWMInfo().
|
|
bfa51c38
|
2021-01-31T03:48:29
|
|
[KMS/DRM] Fix for bug #5518: only do async pageflips when hardware supports them.
|
|
9d707113
|
2021-01-30T20:09:35
|
|
Revert checks on destination scaling size (see bug #5510)
|
|
088fb525
|
2021-01-29T23:32:42
|
|
[KMS/DRM] Correct small omission on bugfix #5513: y-coord correction has to be done on WarpMouseGlobal, too.
|
|
d6a6662f
|
2021-01-29T20:34:20
|
|
Remove checks on destination scaling size (see bug #5510)
|
|
8d95aba1
|
2021-01-29T18:17:16
|
|
[KMS/DRM] Remove unused KMSDRM_SetWindowGrab prototype in header file.
|
|
b17c4950
|
2021-01-29T18:08:04
|
|
[KMS/DRM] Patch for bug #5513. KMSDRM backend can now manage and use several displays.
|
|
a78bce9e
|
2021-01-28T20:02:01
|
|
Properly handle keys already down when the hook is installed
For keys that are already down when we install the keyboard hook, we need to
allow the WM_KEYUP/WM_SYSKEYUP message to be processed normally. This ensures
that other applications see the key up, which prevents the key from being stuck
down from the perspective of other apps when our grab is released.
|
|
ebb81431
|
2021-01-29T12:04:48
|
|
Add checks for maximun scaling size (see bug #5510)
|
|
d59f8daf
|
2021-01-28T15:34:33
|
|
Fixed bug 5510 - simplify the scaling functions blit auto (generated file)
|
|
0b338bff
|
2021-01-28T15:33:47
|
|
Fixed bug 5510 - simplify the scaling functions
|
|
dd6e02df
|
2021-01-28T11:03:45
|
|
SDL_stretch: remove un-used vars, same notation as blit functions
|
|
808249a5
|
2021-01-27T19:40:55
|
|
X11: Ungrab the keyboard when the mouse leaves the window
GNOME Mutter requires keyboard grab for certain important functionality like
window resizing, interaction with the application context menu, and opening the
Activites view. To allow Mutter to grab the keyboard as needed, we'll ungrab
when the mouse leaves our window.
To be safe, we'll do this for all WMs since forks of Mutter and Matacity (and
possibly others) may have the same behavior, and we don't want to have to keep
track of those.
|
|
87f09007
|
2021-01-28T00:11:24
|
|
SDL_LowerSoftStretchLinear: assign result from scale_mat() to ret.
otherwise it would always return -1 when SSE and NEON instrinsics
are absent.
|
|
24d6fda2
|
2021-01-27T12:50:09
|
|
Fixed bug 3816 - asm code in video/SDL_stretch.c
Sylvain
I propose this new version for SDL_stretch.c that drops mprotect and asm
Code is similar to the StretchLinear, but the steps computation are kept similar to the nearest.
so that:
- it's pixel perfect with nearest
- as fast as asm I think
- no asm, nor mprotect
- benefit for all archicture
|
|
06ad887f
|
2021-01-27T11:39:03
|
|
Fixed bug 3816 - asm code in video/SDL_stretch.c
Ozkan Sezer
- adds MSVC __declspec(align(x)) support,
- disables asm if PAGE_ALIGNED no macro is defined,
- still disables asm for gcc < 4.6, need more info,
- drops Watcom support.
|
|
5e3cf0d1
|
2021-01-27T09:34:23
|
|
SDL_SoftStretch: disable asm path if mprotect isn't available (see bug #3816)
|
|
6b057c67
|
2021-01-26T19:16:17
|
|
Expose separate keyboard and mouse grab support
This adds SDL_SetWindowKeyboardGrab(), SDL_GetWindowKeyboardGrab(),
SDL_SetWindowMouseGrab(), SDL_GetWindowMouseGrab(), and new
SDL_WINDOW_KEYBOARD_GRABBED flag. It also updates the test harness to exercise
this functionality and makes a minor fix to X11 that I missed in
https://hg.libsdl.org/SDL/rev/02a2d609369b
To fit in with this new support, SDL_WINDOW_INPUT_CAPTURE has been renamed to
SDL_WINDOW_MOUSE_CAPTURE with the old name remaining as an alias for backwards
compatibility with older code.
|
|
ff827fc7
|
2021-01-26T21:15:15
|
|
SDL_SoftStretch: re-enable USE_ASM_STRETCH path for gcc >= 4.6
|
|
a1d288be
|
2021-01-26T00:05:01
|
|
DirectFB: Split input grab handling into keyboard and mouse parts
The grabbed_window field is superfluous now since SDL added the
SDL_GetGrabbedWindow() function, so it can be removed.
DirectFB_SetWindowMouseGrab() is also simplified because SDL handles ungrabbing
any previously grabbed window prior to calling SetWindowMouseGrab() now.
Compile-tested only.
|
|
f23022ef
|
2021-01-25T20:03:21
|
|
Removed non-functional window grab implementations
|
|
a0d3c6c6
|
2021-01-25T21:42:14
|
|
Rename SetWindowGrab() to SetWindowMouseGrab()
|
|
d133a5f6
|
2021-01-24T17:19:48
|
|
wayland: cancel key repeat when keyboard focus is lost
SDL_SetKeyboardFocus(NULL) will lift any keys still pressed when keyboard focus
leaves the window, but then key repeat comes behind our backs and presses the
key down again. This results in an infinite stream of SDL_KEYDOWN events when
focus leaves the window with a key down (particularly noticeable with Alt+Tab).
|
|
2793c9cf
|
2021-01-25T18:40:26
|
|
Fix grabbing Alt+Tab and Alt+Esc on Windows 7
|
|
e1f73e64
|
2021-01-23T16:22:44
|
|
Refactor keyboard grab to be managed by the video core
This gives us flexibility to add others hints to control keyboard grab behavior
without having to touch all of the backends. It also allows us to possibly
expose keyboard grab separately from mouse grab for applications that want to
manage those independently.
|
|
141f4416
|
2021-01-24T03:55:04
|
|
fix build failure due to -Werror=declaration-after-statement (bug #5500)
|
|
8e1005f8
|
2021-01-23T22:47:06
|
|
[KMS/DRM] Bugfix for #5489: Non-FULLSCREEN windows incorrecty use videomode changing to look fullscreen.
|
|
e787282b
|
2021-01-23T15:40:22
|
|
Implement Wayland_SetWindowResizable
|
|
c16cfc0e
|
2021-01-23T11:22:35
|
|
waylandtouch: Don't export interface structs
These are explicitly written in C code rather than generated at build
time, so they weren't affected by changing how we invoke
wayland-scanner.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
19236b46
|
2021-01-21T21:49:13
|
|
Implement support for minimizing windows on Wayland
This required a bit of extra code to deal with the transition from minimized
back to fullscreen
|
|
cf84ec44
|
2021-01-20T23:19:24
|
|
Improve reliability of cursor hiding on GNOME Wayland
Hiding the cursor doesn't appear to work reliably on GNOME when another window
steals mouse focus right as we call SDL_ShowCursor(SDL_DISABLE). This can happen
when the keyboard shortcut inhibition permission prompt appears in response to a
call to SDL_SetRelativeMouseMode() with SDL_HINT_GRAB_KEYBOARD=1. The result is
that the default cursor is stuck locked in position and visible on screen
indefinitely.
By redrawing the cursor on pointer focus enter, the cursor now disappears upon
the first mouse motion event. It's not perfect but it's way better than the
current behavior.
|
|
bd553ea8
|
2021-01-20T21:17:20
|
|
Implement support for inhibiting the screensaver on Wayland
We support both the org.freedesktop.ScreenSaver D-Bus API (same as the X11
backend) and the Wayland idle_inhibit_unstable_v1 protocol.
Some Wayland compositors only support one or the other, so we need both to
for broad compatibility.
|
|
7ff3832e
|
2021-01-22T19:22:17
|
|
Fix continuous scrolling speed on Wayland
Wayland compositors seem to have standardized on 10 units per "wheel tick" for
continuous scroll events, so we need to convert these axis values to ticks by
dividing by 10 before reporting them in SDL_MOUSEWHEEL events.
|
|
8c921d82
|
2021-01-22T19:40:26
|
|
Implement keyboard grab support for Windows
This is implemented via a low-level keyboard hook. Unfortunately, this is
rather invasive, but it's how Microsoft recommends that it be done [0].
We want to do as little as possible in the hook, so we only intercept a few
crucial modifier keys there, while leaving other keys to the normal event
processing flow.
We will only install this hook if SDL_HINT_GRAB_KEYBOARD=1, which is not
the default. This will reduce any compatibility concerns to just the SDL
applications that explicitly ask for this behavior.
We also remove the hook when the grab is terminated to ensure that we're
not unnecessarily staying involved in key event processing when it's not
required anymore.
[0]: https://docs.microsoft.com/en-us/windows/win32/dxtecharts/disabling-shortcut-keys-in-games
|
|
b6ae9a7c
|
2021-01-21T21:20:10
|
|
renamed my_gradd.h to SDL_gradd.h
|
|
d789ba83
|
2021-01-19T18:20:07
|
|
Implement keyboard grab support for Wayland
Use zwp_keyboard_shortcuts_inhibit_manager_v1 to allow SDL applications
to capture system keyboard shortcuts like Alt+Tab when keyboard grab is
enabled via SDL_HINT_GRAB_KEYBOARD.
|
|
ee93f0ed
|
2021-01-19T15:35:43
|
|
[KMS/DRM] Revert unaproved fix for bug #5465.
|
|
e1d932f8
|
2021-01-17T21:33:51
|
|
[KMS/DRM] Fix for bug #5468: corruption on dynamic cursor changing caused by wrong buffer size.
|
|
99facb1d
|
2021-01-17T21:17:01
|
|
[KMS/DRM] Fix for bug #5470: ratio correction for fullscreen windows with no matching resolution. Correct bracket position in else statements so they follow the coding style.
|
|
03665004
|
2021-01-15T15:00:17
|
|
[KMS/DRM] Small fix to KMSDRM_Waitpageflip(). More comments on how it works.
|
|
6a342954
|
2021-01-14T14:42:53
|
|
Fixed bug 5451 - Can't create EGLSurface in Wayland from SDLWindow (no EGLNativeWindow pointer)
sashikknox
In some cases, need create EGLWindow with SDLWindow. In X11 i can get pointer to NativeWindow from **struct SDL_SysWMinfo wmInfo**
```C++
struct SDL_SysWMinfo wmInfo;
SDL_GetWindowWMInfo(ptSDLWindow, &wmInfo)
#if defined(__unix__) && defined(SDL_VIDEO_DRIVER_X11)
nativeWindow=(EGLNativeWindowType)wmInfo.info.x11.window;
nativeDisplay=(EGLNativeDisplayType)wmInfo.info.x11.display;
#endif
```
than i can create EGLSurface
```
eglCreateWindowSurface(nativeDisplay, EGL_CONFIG, nativeWindow, SURFACE_ATTRIBUTES);
```
in Wayland i can do it with same way, just need pointer to **EGLWindow**, we already have pointer to **wl_display** from **SDL_sysWMInfo**, need add to **wl** struct in SDL_SysWMInfo another pointer to **struct wl_egl_window *egl_window;**. And in wayland backend, in function **Wayland_GetWindowWMInfo** return pointer to **egl_window** from **SDL_WindowData**
Now i use patched statically built SDL2 in port of Quake 2 GLES2 for SailfishOS (it use QtWayland):
link to SDL2 commit and changed string for patch:
- https://github.com/savegame/lp-public/commit/6858a618cd179b766fe3cab36055f07cb03ad0ea
- https://github.com/savegame/lp-public/blob/b1e29e87b9d15780e47f04918b329ac15554fc69/SDL2/src/video/wayland/SDL_waylandwindow.c#L463
link to use in Quake2 port:
1. here i get pointer to EGLNativeWindowType: https://github.com/savegame/lp-public/blob/6d94fedb1b720da24999ae6286a1809cd3d55ff5/Engine/Sources/Compatibility/OpenGLES/EGLWrapper.c#L319
2. then use it for create EGLSurface: https://github.com/savegame/lp-public/blob/6d94fedb1b720da24999ae6286a1809cd3d55ff5/Engine/Sources/Compatibility/OpenGLES/EGLWrapper.c#L391
|
|
82aafa9a
|
2021-01-14T14:32:11
|
|
Fixed bug 5461 - Add rewritten WSCONS driver for OpenBSD
wahil1976
This patch adds a written-from-scratch WSCONS driver for OpenBSD. It does not have hardcoded keymaps, and it features mouse support when wsmux is available.
For this to work, it needs access to the /dev/wskbd* devices which are not available to non-root users by default. Access to those can be granted by changing /etc/fbtab to give the logging user the ownership of those devices.
|
|
1adadc77
|
2021-01-14T10:18:40
|
|
[KMS/DRM] Adjust come return values. Improve comments.
|
|
57661e42
|
2021-01-13T20:17:50
|
|
[KMS/DRM] Remove unused header.
|
|
ead3c406
|
2021-01-13T20:11:01
|
|
[KMS/DRM] Refactor, improve and re-comment async pageflips code.
|
|
aac74db6
|
2021-01-13T15:54:26
|
|
[KMS/DRM] Enable async pageflips.
|
|
9384e595
|
2021-01-12T20:15:37
|
|
[KMS/DRM] Add warning comentary to avoid future experiments with scaling.
|
|
84427549
|
2021-01-12T00:22:58
|
|
[KMS/DRM] Refactor KMSDR_CreateSurface to group all non-Vulkan stuff in a block.
|
|
87eb734c
|
2021-01-11T23:59:40
|
|
[KMS/DRM] Don't ask SDL to scale image when in Vulkan mode.
|
|
85e8adf7
|
2021-01-11T22:28:27
|
|
[KMS/DRM] Unused code cleaning.
|
|
5105ecf8
|
2021-01-11T21:02:07
|
|
[KMS/DRM] Move surface size info to window driverdata, for coherency.
|
|
2067a7db
|
2021-01-11T20:29:09
|
|
[KMS/DRM] Fix fullscreen to windowed transition. Fix aspect ratio correction without using planes.
|