Commit Graph

590 Commits

Author SHA1 Message Date
Brad Parker cd9d09d1f3 use unicode versions of windows functions 2016-11-29 14:34:35 -05:00
twinaphex 64154f6060 win32_common.cpp - turn function static 2016-11-06 18:35:00 +01:00
twinaphex 05f1657048 (win32_common.cpp) Cleanup 2016-11-06 11:52:03 +01:00
Logan McNaughton 06eca5d530 Define some EGL constants
Missing from the Android headers
2016-11-01 07:09:58 -06:00
twinaphex 09067e67c3 Create gl_symlinks.h 2016-10-24 04:02:03 +02:00
twinaphex c3ab8800f4 Prevent implicit memsets 2016-10-21 05:57:40 +02:00
twinaphex 2cb7cc01bf (D3D) Cleanups 2016-10-20 05:00:20 +02:00
twinaphex f75a604ae8 Fix C89_BUILD 2016-10-16 01:51:07 +02:00
aliaspider f9e7d4dc3f (3DS) fix gfx corruption when closing content. 2016-10-13 12:16:07 +01:00
aliaspider d48445fc1e (3DS) video driver:
- texture handling improvement.
- flush pending tasks while waiting for vsync.
2016-10-10 22:25:25 +01:00
Torsten Paul d4a90f267d Fix handling of enable flag for xdg-screensaver. 2016-10-10 19:01:41 +02:00
twinaphex f66e447139 Get rid of path_get_content 2016-10-03 15:43:03 +02:00
twinaphex 91b1889873 (X11) Mouse input is no longer registered when we are on the
titlebar of the window or we are no longer inside the window
2016-10-03 06:50:00 +02:00
twinaphex 5b6f1642f0 (D3D) Buildfix 2016-10-03 05:13:39 +02:00
twinaphex 5d77cd431c (d3d_common.cpp) Cleanups 2016-10-03 04:19:19 +02:00
twinaphex 7bd38d93f0 (X11) Cleanup x11_alive 2016-10-01 12:12:58 +02:00
twinaphex bf035b634b Updates 2016-10-01 09:49:15 +02:00
twinaphex 0f26cade79 Revert "Update GX/WIn32 builds"
This reverts commit 28a96fbb05.
2016-10-01 08:17:07 +02:00
twinaphex 4fe8cf3811 Revert "(Win32) Buildfix"
This reverts commit b73d183c44.
2016-10-01 08:13:41 +02:00
aliaspider 056224bf50 (3DS) avoid using ctrGuCopyImage during font init for now. (fixes freeze
on cia builds)
2016-09-30 16:16:18 +01:00
twinaphex b73d183c44 (Win32) Buildfix 2016-09-30 08:19:36 +02:00
twinaphex 28a96fbb05 Update GX/WIn32 builds 2016-09-30 06:39:47 +02:00
Twinaphex 03215a831f Merge pull request #3690 from aliaspider/master
(3DS) add experimental font and menu_display drivers.
2016-09-29 21:33:08 +02:00
aliaspider afd5e85a31 (3DS) add experimental font and menu_display drivers. 2016-09-29 20:14:12 +01:00
twinaphex be81edad84 Create path_get 2016-09-29 08:23:41 +02:00
aliaspider 5db13323f6 (3DS) create gfx/common/ctr_common.h.
remove depthbuffer.
use vramalloc.
2016-09-28 20:59:54 +01:00
twinaphex 2d11ea71cc Move runloop_fullpath to paths.c 2016-09-23 03:39:44 +02:00
twinaphex 12949420b6 (Windows) Buildfix 2016-09-17 15:07:45 +02:00
twinaphex cb17c0f493 Style nits 2016-09-16 13:31:18 +02:00
Bastien Nocera 5afdd35e54 x11: Only call out to xdg-screensaver when D-Bus failed 2016-09-16 13:03:48 +02:00
Bastien Nocera a061b4a801 x11: Implement xdg-screensaver uninhibition 2016-09-16 13:03:37 +02:00
Bastien Nocera e563bd5512 x11: Flatten D-Bus (un)inhibit functions
Instead of nesting, try to exit as soon as possible in case of errors.
Also make sure to tell the caller whether the call succeeded and a
fallback should be attempted.
2016-09-16 12:59:16 +02:00
Bastien Nocera 297c9a8613 x11: Reset dbus_connection global variable on exit
To ensure that the state of the variable is correct. This won't be
needed if X11 is never reinitialised.
2016-09-16 12:34:15 +02:00
Bastien Nocera 6ab7fab326 x11: Lower the severity of D-Bus not being accessible
As there is a fallback through xdg-screensaver, no need to make this any
more important than a log message.
2016-09-16 12:32:22 +02:00
Bastien Nocera 65fa874c3a x11: Rename function fetching the D-Bus connection
You'd expect a "get" function to return the variable in question. This
doesn't, and simply sets a global variable.
2016-09-16 12:32:15 +02:00
Alcaro f6b7fc17f6 Those checks aren't needed. 2016-09-16 00:45:00 +02:00
Alcaro 1964491e5f Fix Linux-MinGW build 2016-09-15 20:54:14 +02:00
twinaphex 1b46f3c344 Nits 2016-09-14 15:58:53 +02:00
twinaphex f87dbe7946 Style nits/cleanups 2016-09-14 15:58:03 +02:00
twinaphex ca673b4fc8 C89_BUILD fixes etc. 2016-09-14 15:56:14 +02:00
Twinaphex 09ccef1684 Merge pull request #3547 from nguillaumin/wip-screensaver-dbus
WIP: Fixes #2026 Screensaver suspend on Linux via Dbus
2016-09-14 15:48:43 +02:00
twinaphex 7ac1ed7e10 Cleanups 2016-09-11 14:54:34 +02:00
nguillaumin c69c488fdf Address code review comments 2016-09-09 18:08:54 -07:00
Nicolas Guillaumin 05df632bd8 WIP: Fixes #2026 Screensaver suspend on Linux via Dbus
One some systems (tested with Gnome 3 on Arch Linux) the current method
of using `xdg-screensaver` to suspend the screensaver does not work.
Instead, using DBus to issue an `Inhibit` request is recommended.

The request returns a cookie that needs to be re-used to un-inhibit the
screensaver later. Additionally if the DBus connection is closed the
current inhibition is discarded. Thus, the DBus connection needs to stay
connected for the duration of the screenshot inhibition.

The code is heavily inspired from the [SDL 2.x
code](http://hg.libsdl.org/SDL/file/default/src/core/linux/SDL_dbus.c#l172).
I didn't call the SDL 2 code though since this it to fix the issue with
the GL driver, and I assume one would want to have screensaver inhibited
even when SDL 2 is not available (but GL is).

I've set "WIP" because:
* I haven't done C in a long time so my code is probably not great
* There's a dependency on DBus which I don't know is acceptable or
not
* I've put my code where I could to check it works, but `x11_common` may
not be the best place
* The code need and "init" and "deinit" kind of method as it needs to
initialise the DBus connection, and on deinit close it properly. I've
used `x11_connect` and `x11_window_destroy` but they don't sound like
the best choices.
* I'm a bit unclear as to what happens when "suspend screensaver" is
ticked on/off in the menu. This doesn't seem to call
`x11_suspend_screensaver` everytime, so I'm not sure if there's a hook
somewhere (as disabling screensaver suspend in the menu should cause a
DBus unhinibit request to be sent).
* Should I just call the SDL 2.x code (meaning that the GL driver would
depend on SDL 2.x at runtime)?

So, first of all are you ok with the approach, and if yes I'd gladly get
feedback about the code, how to architecture it and the best place to
put it.

Thanks!
2016-09-08 15:23:41 -07:00
twinaphex b43f786f89 Cleanups 2016-09-08 08:15:40 +02:00
mudlord b1833c2d52 account for if people have core id files but not the actual cores. 2016-09-07 09:44:07 +10:00
twinaphex 3e9df72123 Try to fix ARM build 2016-09-06 03:14:20 +02:00
twinaphex 075aea2289 Header include cleanups 2016-09-06 00:56:00 +02:00
twinaphex 266a06ffb1 Revert "Expose GPU Hard Sync for GLES 3 too"
This reverts commit a74813c9ea.
2016-09-05 21:43:02 +02:00
twinaphex a74813c9ea Expose GPU Hard Sync for GLES 3 too 2016-09-05 21:16:30 +02:00
twinaphex 86d2a36407 (Win32) Buildfixes 2016-09-05 18:43:32 +02:00
twinaphex f30deb9cd0 Header cleanup 2016-09-05 07:47:11 +02:00
twinaphex e6ef3662ac Header include changes 2016-09-05 07:44:17 +02:00
twinaphex 1a241fa9ce Rewrite this 2016-09-05 07:22:44 +02:00
Brad Parker 0eb1777a1f remove extra semicolons 2016-09-03 10:30:21 -04:00
twinaphex 467451fccc Cleanup more header includes 2016-09-01 18:18:55 +02:00
twinaphex aff2812fde Try to get rid of double definition of type 2016-09-01 06:08:06 +02:00
twinaphex 815c0eb3ee Remove header includes 2016-09-01 05:46:10 +02:00
twinaphex ba7d638b99 Use string_is_equal 2016-08-29 18:46:41 +02:00
Francisco José García García 4221374072 (VITA) Add XMB support 2016-08-23 02:49:53 +02:00
twinaphex 9777e9d9ef (MSVC 2003) Add MSVC 2003 compatibility 2006-01-17 04:36:32 +01:00
Logan McNaughton 47227c829b GLES3 fixes 2016-08-06 21:45:35 -06:00
twinaphex fb9a2eea95 Remove one useless HAVE_OPENGLES2 ifdef, and remove some wrong
defines
2016-08-07 04:35:38 +02:00
Hans-Kristian Arntzen 96818a297c Vulkan: Fix validation errors with OriginalHistory.
For some reason, OriginalHistory blit happened inside a render pass.
Also add more TRANSFER_SRC_BIT caps to images as they might have to be
copied to history.
2016-08-07 01:09:15 +02:00
twinaphex 563842945c (gl_common.h) Start catering towards GLES3/GLES3.1/GLES3.2 too 2016-08-01 18:15:14 +02:00
twinaphex 09ea570dcb Create GL_CAPS_FP_FBO 2016-08-01 17:33:50 +02:00
twinaphex 76c021df09 Create GL_CAPS_SRGB_FBO 2016-08-01 17:28:43 +02:00
Hans-Kristian Arntzen 4ac9ebd579 Vulkan: Allow configuring mip/wrap/filter for LUTs.
LUTs are feature complete with CGP now.
2016-07-31 16:16:47 +02:00
Hans-Kristian Arntzen 0eca956789 Vulkan: Create image views with right amount of mip levels. 2016-07-31 14:01:39 +02:00
Hans-Kristian Arntzen 4e8e79eabd Vulkan: Add mipmapping support. 2016-07-31 13:47:10 +02:00
Hans-Kristian Arntzen 7813d40c9e Log if Vulkan debug layers are enabled. 2016-07-31 12:54:10 +02:00
twinaphex 2be127c04a Start wrapping settings->path.libretro 2016-07-24 11:12:26 +02:00
Hans-Kristian Arntzen f54b0c0ff0 Vulkan: Implement swap_interval > 1.
We have to fake it by duping since Vulkan has no native support for
this.
2016-07-24 00:34:48 +02:00
Hans-Kristian Arntzen 8c1b935969 Vulkan: Implement BFI. 2016-07-24 00:07:32 +02:00
twinaphex 4e68bc0b53 CXX_BUILD fix 2016-07-21 21:54:43 +02:00
twinaphex a8de87576e (windows) Fixes drag and drop - we have to call this
function directly since the UI companion driver interface at
this point has not yet been initialized
2016-07-16 23:49:44 +02:00
twinaphex c6e6e300b9 CLeanup 2016-07-16 23:16:30 +02:00
twinaphex 8b4dd98d4b (drag and drop) Try to make some code more understandable 2016-07-16 23:13:24 +02:00
twinaphex 8b29ad1fee Add early return in case this is NULL 2016-07-16 23:00:35 +02:00
twinaphex f308997465 DragFinish releases memory allocations - so always call it at the end 2016-07-16 22:39:21 +02:00
twinaphex ce6f3f955c Doubleclick on titlebar should no longer trigger button press
in RA window
2016-07-16 17:56:07 +02:00
twinaphex 616b9f7471 (Win32) Test 2016-07-16 17:44:21 +02:00
Alcaro d7dbc45c6b That's a weird way to check versions. Won't even work for 7.0. 2016-07-16 16:51:28 +02:00
Hans-Kristian Arntzen 8569028189 Vulkan: Use manual memory management for cached/incoherent devices. 2016-07-15 16:12:30 +00:00
Hans-Kristian Arntzen f5bddd45e8 Vulkan: Don't query layout if we have optimal tiling. 2016-07-14 23:15:39 +02:00
twinaphex b580599710 (X11) Fix 'quit' button not working 2016-07-09 12:09:39 +02:00
twinaphex 76cc6fd8ec Start implementing signal handler code once in frontend driver code 2016-07-08 02:38:33 +02:00
Hans-Kristian Arntzen d382e1069e Basic VK_KHR_display integration works! :) 2016-07-07 19:28:27 +02:00
Hans-Kristian Arntzen d2fafc5451 Sketch out vulkan_create_display_surface. 2016-07-06 20:27:39 +02:00
Hans-Kristian Arntzen e9046dd06f Begin implementing VK_KHR_display. 2016-07-06 19:37:47 +02:00
twinaphex 9fab75c4b5 Cleanups; 80-char width limit 2016-06-30 07:40:25 +02:00
Hans-Kristian Arntzen c80127d29d Vulkan: Hook up async compute test more properly.
Supports multiple queues and queues from different families.
2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen 4abb0ef331 Vulkan: Cache destroy device callback. 2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen 6841b5ad00 Vulkan: Keep dylib around if caching instance. 2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen 4729ec9e1b Add support for signalling semaphores from frontend.
Useful for conserving framebuffer memory.
2016-06-27 20:54:53 +02:00
Hans-Kristian Arntzen 54c1759f45 Vulkan: Make a more general purpose symbol loader.
Avoids painful manual loading and wrapping function pointers everywhere
...

Reusable for cores, so move to libretro-common.
Also update built-in Vulkan headers.
2016-06-26 13:10:58 +02:00
Hans-Kristian Arntzen 1da2e2dbab Vulkan: Hook up negotiation interface device creation. 2016-06-26 10:40:07 +02:00
Hans-Kristian Arntzen 10a6d7a458 Vulkan: Begin hooking up negotiation interface. 2016-06-25 21:01:36 +02:00
Hans-Kristian Arntzen 972a5db7ae Vulkan: Fix shader module leak. 2016-06-25 14:06:14 +02:00
Hans-Kristian Arntzen de36f572d1 Vulkan: Fix more validation issues. 2016-06-25 14:01:10 +02:00
Hans-Kristian Arntzen 07880e3f45 Vulkan: Begin hooking up validation layers.
Found lots of regressions due to bad reformatting.
2016-06-25 13:52:33 +02:00
Hans-Kristian Arntzen d043123f71 Vulkan: Add support for queue transfers in HW rendering. 2016-06-25 11:39:52 +02:00
Hans-Kristian Arntzen 82c7aa0e6f Use max swapchain image setting when creating swapchain. 2016-06-25 09:52:46 +02:00
twinaphex b434f0863a CXX_BUILD buildfix 2016-06-23 07:44:56 +02:00
Alcaro 90dd86a66a Fix #3129 again 2016-06-19 22:09:52 +02:00
Hans-Kristian Arntzen 21be54501b Log which present modes are supported. 2016-06-13 22:00:32 +02:00
Hans-Kristian Arntzen e7b4f4fd4d Fix various Android Vulkan issues.
Was getting bogus swapchain width/height causing weird issues.
Also, create swapchain after swap interval is correctly set.
2016-06-13 19:51:44 +02:00
twinaphex f4c3a41f84 (Win32) Implement application process events 2016-06-07 17:28:51 +02:00
twinaphex ee8277b31c Rename ui_win32_window.h to ui_win32.h 2016-06-07 16:33:55 +02:00
Hans-Kristian Arntzen c374c9853d Some potential fixes for Android Vulkan. 2016-06-07 01:43:14 +02:00
twinaphex ea5f458fbd Go through function pointer 2016-06-06 08:01:26 +02:00
twinaphex 2f7bc8760c Turn win32_browser into static function 2016-06-04 18:43:03 +02:00
twinaphex cfc3b97808 Use ui_window_win32_focused 2016-06-04 17:30:06 +02:00
twinaphex b5830de236 Create stub GetForegroundWindow function for Xbox 2016-06-04 17:18:20 +02:00
twinaphex abbd39fc6e Might want to use GetForegroundWindow instead for window focus 2016-06-04 17:17:10 +02:00
twinaphex c63f11f6fd Use ui_window_win32_set_droppable 2016-06-04 08:50:43 +02:00
twinaphex b4c340ca88 (win32_common.cpp) Cleanup 2016-06-04 06:21:58 +02:00
twinaphex d739e4771e Use set_title function from wgl_ctx.cpp 2016-06-04 06:02:15 +02:00
twinaphex 24688469b0 Buildfix 2016-06-04 05:58:03 +02:00
twinaphex 2d649f5147 Reimplement win32_monitor_from_window 2016-06-04 05:56:46 +02:00
twinaphex f490b2b58a Simplify win32_monitor_from_window 2016-06-04 05:54:33 +02:00
twinaphex 0c3bc35be1 (Win32) Buildfix 2016-06-04 05:45:39 +02:00
twinaphex 745b204a8f Start using ui_window_win32_t 2016-06-04 05:44:06 +02:00
twinaphex 94e16e638d Cleanup WndProcCommon 2016-06-04 05:09:58 +02:00
mudlord d75fc24ad7 update 2016-06-04 12:36:05 +10:00
twinaphex b88db89b89 (Win32) Buildfix 2016-06-04 03:22:31 +02:00
twinaphex 45d6b4a228 Create win32_drag_query_file 2016-06-04 03:20:55 +02:00
twinaphex d7d5f29c90 (win32_common.cpp) Buildfix 2016-06-03 19:46:09 +02:00
twinaphex 6628da2646 Create CONTENT_MODE_LOAD_CONTENT_WITH_NEW_CORE_FROM_COMPANION_UI 2016-06-03 18:43:05 +02:00
mudlord 1ab94a2c9a updates to dragndrop 2016-06-03 18:25:45 +10:00
twinaphex 30d3cf8a4e Indenting nits 2016-06-03 08:23:43 +02:00
twinaphex 4cfe09faed Nits 2016-06-03 08:21:56 +02:00
twinaphex 59413e0289 (win32_common.cpp) Cleanups/get rid of warning 2016-06-03 08:20:36 +02:00
twinaphex 01390f8ceb Use retro_common_api.h 2016-06-03 08:06:49 +02:00
mudlord bcf636283b Updates to drag and drop:
* Now recognises old core used, if compatible.
* If not compatible, compatibile cores are scanned and used.
* Different compatible cores are now enumerated to be selected at will.
2016-06-03 16:00:08 +10:00
mudlord 4c53bdf4f9 add drag and drop 2016-06-03 09:14:53 +10:00
twinaphex 7d12408f24 x11_create_input_context - prevent memleak 2016-05-26 07:34:25 +02:00
twinaphex 6bd7fd482c Performance counters got function name changes 2016-05-21 13:14:25 +02:00
Twinaphex 72e1a33715 Merge pull request #3016 from Themaister/master
Add perf counter to fence waits.
2016-05-21 12:36:25 +02:00
Hans-Kristian Arntzen 218ecc07c1 Add perf counter to fence waits.
Makes it easy to check if we're GPU bound or not.
2016-05-21 12:13:46 +02:00
Twinaphex e133ce31e8 (QNX) Buildfixes 2016-05-19 20:10:10 +02:00
twinaphex 0d833c903a Merge remote-tracking branch 'origin/vulkan-windows' 2016-05-16 07:51:01 +02:00
twinaphex e2cc3bc08d Create gl_query_core_context_in_use 2016-05-16 05:55:42 +02:00
twinaphex fc56f6ebdb Add some HAVE_THREADS ifdefs 2016-05-11 10:10:30 +02:00
twinaphex 4a7ab8366b Move libretro.h headers to libretro-common/include 2016-05-10 19:03:53 +02:00
twinaphex b79b2dca13 Create performance_counters 2016-05-10 08:53:14 +02:00
twinaphex dde471e001 Rename gfx_ structs 2016-05-10 02:39:09 +02:00
twinaphex 2ebb92834c Rename gfx_fbo_rect to video_fbo_rect 2016-05-10 02:34:36 +02:00
twinaphex 0e08dbe931 Rename gfx_coord to video_coord 2016-05-10 02:32:59 +02:00
twinaphex ca976aeda9 Make gl_load_texture_data a static function 2016-05-09 03:44:46 +02:00