Commit Graph

12183 Commits

Author SHA1 Message Date
Sam Lantinga
0cb7c4ba58 Don't hide popups when losing focus
This isn't the behavior on Windows, and this should probably be an application defined behavior.

If we decide we want this globally, it should probably be implemented at a higher level in SDL_OnWindowFocusLost(), and properly handle the transition of focus to a child window.
2023-03-16 14:04:12 -07:00
Sylvain
5da9e99da0 Fixed bug #7462 - 8888 as default GL backbuffer red/green/blue/alpha bit sizes 2023-03-16 13:54:11 -07:00
Sylvain
f9ac7b4044 Fixed bug #7467 - testautomation_audio currently fails because of invalid src/dst rate 2023-03-16 20:49:22 +01:00
Sylvain
899ee8f75a Change SDL_BLENDMODE_MUL for gl renderers
Add FIXME for PSP
2023-03-16 20:25:59 +01:00
Sylvain
b95b203116 Refresh generation of SDL_blit_auto.c after simplifying sdlgenblit.pl 2023-03-16 20:25:59 +01:00
Sylvain
41b8fee833 Simplify SDL_BLENDMODE_MUL in sdlgenblit.pl 2023-03-16 20:25:59 +01:00
Sylvain
99668c286b Simplify SDL_BLENDMODE_MUL 2023-03-16 20:25:59 +01:00
Sylvain
ad1a216d65 Refresh generation of SDL_blit_auto.c 2023-03-16 20:25:59 +01:00
Sam Lantinga
66eff69d2b Don't update hidden child windows, their relative position doesn't change
This improves performance when moving a top level window that has many hidden child windows
2023-03-16 11:24:21 -07:00
Sam Lantinga
e6fe7273a5 Toggle menu visibility with the space bar 2023-03-16 11:24:21 -07:00
Frank Praznik
a8ea8db6d7 wayland: Update the popup window geometry on configure events 2023-03-16 14:01:42 -04:00
Frank Praznik
be70d9a9c7 wayland: Clarify the popup position restriction purpose
Child popups don't necessarily need to be within, but must intersect or be partially adjacent to the parent, per the xdg-positioner spec.
2023-03-16 14:01:42 -04:00
Frank Praznik
c270d151b0 wayland: Handle cases where the compositor does not scale the monitor viewport in its compositing space
The xdg-output spec was updated to clarify its usage rules, and what was previously thought to be a bug is actually valid behavior. Gnome, when not using 'scale-monitor-framebuffer', does not scale the viewport of the display in the global compositor space, and thus the physical and logical sizes of the display will match. This value still needs to be divided by the integer scale value to get the logical output dimensions in screen units though.
2023-03-16 14:01:42 -04:00
Sam Lantinga
5dd317b869 Fixed position when setting WM hints on X11 popup windows 2023-03-15 20:23:03 -07:00
Sam Lantinga
422517c036 Allow passing 0 to SDL_SetWindowMinimumSize() and SDL_SetWindowMaximumSize() to indicate no limit 2023-03-15 16:13:56 -07:00
Sam Lantinga
d95b04feaf Fixed display ID check in video_setWindowCenteredOnDisplay 2023-03-15 16:12:54 -07:00
Sylvain
4312abab69 testprogram: add option to use SDL_BLENDMODE_MUL 2023-03-15 22:00:13 +01:00
Sam Lantinga
b07a049923 Fixed window positioning in testpopup 2023-03-15 10:35:26 -07:00
Sam Lantinga
e794057d9f Move the popup windows to follow the mouse 2023-03-15 10:19:55 -07:00
Anonymous Maarten
7ea6ef4076 ci: add workflow for building SDL on ppc64le 2023-03-15 14:54:20 +01:00
Anonymous Maarten
e77132b8aa ci: only store cache vita reqs when restore-cache didn't find anything 2023-03-15 14:54:20 +01:00
Anonymous Maarten
65178df717 ci: test ARM neon and simd on ci using vita toolchain 2023-03-15 14:54:20 +01:00
Anonymous Maarten
d27db3defa cmake+video: always use altivec.h header for detection + introduce SDL_ENABLE_ALTIVEC 2023-03-15 14:54:20 +01:00
Anonymous Maarten
684709a5b6 cmake: fix building testautomation without X11 support 2023-03-15 14:54:20 +01:00
Anonymous Maarten
9cb5f0bfc6 video: fix ARM neon and simd 2023-03-15 14:54:20 +01:00
Anonymous Maarten
64e242fd77 cmake: Add test resources to list of files to clean 2023-03-15 14:54:20 +01:00
Anonymous Maarten
ba5b1f2fd2 Fix build with -DX11MODES_DEBUG in CPPFLAGS 2023-03-15 14:54:20 +01:00
Anonymous Maarten
d24ef0213b SDL_threadprio.c uses SCHED_RR and SCHED_FIFO from sched.h 2023-03-15 14:54:20 +01:00
Anonymous Maarten
3db3424b4e cmake: Detect powerpc architecture 2023-03-15 14:54:20 +01:00
Anonymous Maarten
fc4085b54e cmake: Allow build system to disable arm neon intrinsics 2023-03-15 14:54:20 +01:00
Anonymous Maarten
46de6241d7 cmake: Allow build system to disable loongarch intrinsics 2023-03-15 14:54:20 +01:00
Anonymous Maarten
99b8313eb1 add SDL_DISABLE_MMX to SDL_build_config.h.cmake 2023-03-15 14:54:20 +01:00
Anonymous Maarten
4681240241 cmake: Detect AVX + allow build system to disable Intel intrinsics 2023-03-15 14:54:20 +01:00
Anonymous Maarten
683411e96f cmake: only use precompile headers for C and CXX 2023-03-15 14:38:26 +01:00
Anonymous Maarten
7d55bbc0da cmake: get_filename_component(EXT) returns extension including leading dot 2023-03-15 14:38:26 +01:00
Sam Lantinga
a17ad65f2b Revert "Popup window parent defaults to the first toplevel window"
This reverts commit e8e2c8175c.

Conceptually tooltips and context menus always have parent windows
2023-03-14 14:53:54 -07:00
Frank Praznik
969e0842e6 video: Preserve the flag to restore popup windows with the parent when recreating the window during renderer initialization 2023-03-14 16:37:09 -04:00
Sam Lantinga
e8e2c8175c Popup window parent defaults to the first toplevel window 2023-03-14 11:42:58 -07:00
Sam Lantinga
3951cae4a5 Ignore the PS4 packet CRC if it's not being set correctly
This fixes handling the 8BitDo SN30 Pro with the 2.00 firmware in PS4 mode

Fixes https://github.com/libsdl-org/SDL/issues/7270
2023-03-13 19:58:35 -07:00
Sylvain
f1d9c36136 testshape: now uses SDL_WINDOW_TRANSPARENT instead of the shaped window API 2023-03-13 21:23:04 +01:00
Sylvain
2cafa52598 - Added SDL_WINDOW_TRANSPARENT to request a window with transparent framebuffer
- Remove SDL_VIDEO_EGL_ALLOW_TRANSPARENCY hint, EGL now checks 'window->flags & SDL_WINDOW_TRANSPARENT'
2023-03-13 21:23:04 +01:00
Frank Praznik
4dededd345 wayland: Don't throttle presentation until the first swap has occurred
Don't throttle window updates until the first swap has occurred, as the window won't actually be shown or receive the frame callback until that point and this causes new window creation to have a full 1 second delay.
2023-03-13 15:36:55 -04:00
SDL Wiki Bot
1010254a28 Sync SDL3 wiki -> header 2023-03-13 18:22:16 +00:00
Sam Lantinga
4dd26698fc Added SDL_GetWindowParent() to get the parent of popup windows 2023-03-13 11:21:02 -07:00
Sam Lantinga
ebe3a9dc44 Spacing cleanup 2023-03-13 11:21:02 -07:00
SDL Wiki Bot
689ea5361e Sync SDL3 wiki -> header 2023-03-13 17:57:18 +00:00
Frank Praznik
1f35fd6939 video: Update the popup window creation documentation and disallowed flags
Update the popup window creation documentation with additional info, remove the SDL_WINDOW_MOUSE_GRABBED flag check since it isn't a valid window creation flag and will be removed automatically elsewhere, and check for and remove the explicit skip taskbar and borderless flags since they are implicit for popup windows.
2023-03-13 13:56:01 -04:00
Frank Praznik
f97b469184 video: Disallow additional operations on popups where appropriate
Disallow additional window operations on popups where they have no functionality or otherwise don't make sense:

- Popups cannot be set as modal to other windows (they're already child windows of a parent)
- Other windows cannot be set as modal of popups
- Popups cannot explicitly grab the mouse/keyboard (the topmost popup menu takes the keyboard focus implicitly)
- Popups cannot flash or be raised
2023-03-13 13:56:01 -04:00
Frank Praznik
d5b5e524af wayland: Set the EGL swap timeout to one second from the current time
Set the timeout max to one second from the current time or presentation time will always be greater than the timeout and the application will run unthrottled.
2023-03-12 17:07:32 -04:00
David Carlier
3990c71726 SDL_GetBasePath simplification for Haiku.
when solely looking for the path for the current binary
in the current team, find_path is sufficient.
2023-03-12 08:29:42 -04:00