Joshua Ashton
facdc072fc
steamcompmgr: rename win to steamcompmgr_win_t
2023-01-23 02:19:13 +00:00
Lilium
7bd30dd6d8
add the ability to use inverse tone mapping on apps that output SDR ( #751 )
2023-01-17 05:37:09 +00:00
Joshua Ashton
2d7ec208c4
sdlwindow: Forward cursor in absolute mode to host compositor
2023-01-12 01:29:25 +00:00
Joshua Ashton
b124200e36
steamcompmgr: Default to left_ptr from cursor font
...
Avoids having ugly X cursor by default.
Based in part on #280 .
2023-01-12 00:11:04 +00:00
Joshua Ashton
418a84dfb7
steamcompmgr, rendervulkan: Add force wide gammut option
2022-12-30 03:21:55 +00:00
Joshua Ashton
0d86168480
drm: Respect app's HDR metadata
2022-12-30 03:21:55 +00:00
Joshua Ashton
dff1b3f390
wlserver: Allow late binding of content overrides
2022-12-06 01:25:38 +00:00
Simon Ser
870d54c54e
Force repaint on SDL_WINDOWEVENT_EXPOSED
...
Co-authored-by: Bad Sector <badsector@runtimeterror.com>
2022-10-01 18:42:44 +02:00
Joshua Ashton
7f2db65c00
steamcompmgr: Add GAMESCOPE_CURSOR_VISIBLE_FEEDBACK
2022-09-23 20:44:51 +00:00
Joshua Ashton
5f610d8614
main: Fix build
...
Forgot to commit this :s
2022-09-07 11:06:04 +00:00
Joshua Ashton
df908e691a
main: Add --immediate-flips
...
Defaults g_bAsyncFlipsEnabled which is otherwise controlled by the atom, by Steam.
2022-09-06 17:01:22 +01:00
Joshua Ashton
1b34a570a5
drm: Implement COLOR_ENCODING + COLOR_RANGE and hook up to env var for now
...
There is no way to tel a NV12 buffer in Wayland's color space. Why?
What a glaring omission.
Even then, the color management protocol that has supposedly been in
development for 2 years is missing basic features like setting the
color range. Great!
For now we are just setting an env var both us and Remote Play Together
are going to listen to and call it a day until the situation is
properly resolved.
2022-06-16 01:31:47 +00:00
Georg Lehmann
9ba37d923c
Make actual cursor extent a CVulkanTexture property
2022-05-12 11:32:05 +00:00
Georg Lehmann
d29d83f792
Remove those two terrible structs
2022-05-12 11:32:05 +00:00
FlightlessMango
6d0c84d163
mangoapp: send focusWindow pid
2022-03-19 01:35:19 +00:00
Joshua Ashton
d6b6428143
rendervulkan: Support blur for override redirect layer too
...
Essentially just shoves that into the horizontal pass and cleans it out of the normal composite when we go to do vertical and also makes the blur image the same size as the output, which should have been done anwyay to avoid harsh borders.
2022-02-23 23:00:48 +00:00
Joshua Ashton
a2e01b5701
mangoapp: Handle frametimes from fps limiting better
...
Also logs latency and app's real frametime
2022-02-14 10:19:10 +00:00
Joshua Ashton
a1fa55c3a3
steamcompmgr: Add FSR active feedback
...
Also use this for mangoapp
2022-02-12 08:50:52 +00:00
Joshua Ashton
a1d560e836
steamcompmgr: Handle cursor image width being different to surface width for rotation offset
...
The surface width for the cursor is 256, but the image width is 64 which means we have a bunch of blank space, so we need to account for this in DRM code for the CRTC offsets.
2022-02-02 22:58:11 +00:00
Joshua Ashton
797ee59cbb
vblankmanager: Estimate draw buffer time based on max rolling average draw time
...
Handles spikes much better and allows us to have a lower buffer when not needed.
2022-01-31 23:49:39 +00:00
Joshua Ashton
289a739358
steamcompmgr: Resize to fit dropdowns
2022-01-31 23:45:45 +00:00
Joshua Ashton
3dc36c8799
wlserver: Redirect volume events to root xwayland
...
Avoids games being the ones to recieve our lower volume/raise volume keys -- Steam should handle these.
2022-01-31 20:39:35 +00:00
Joshua Ashton
79f66f9729
steamcompmgr: Warp cursor off of Steam when cursor is hidden
...
Stops misleading hover events from happening while also not intefering with touch.
2022-01-24 11:38:41 -08:00
Joshua Ashton
ca8fd6552a
wlserver: Move commit queues to per-xwayland server, rather than global
2022-01-20 07:11:40 +00:00
Joshua Ashton
1536604533
wlserver: Handle mousemotion only for focused server
2022-01-20 07:11:40 +00:00
Joshua Ashton
582da1d967
steamcompmgr: Split globals into xwayland_ctx_t
...
Doesn't fully support multiple xwaylands or have all the infrastructure for that yet. This just splits the globals out for now and passes the ctx around.
2022-01-20 07:11:40 +00:00
Joshua Ashton
3037f37ed0
mangoapp: only send updates when window exists
2022-01-11 00:09:33 +00:00
FlightlessMango
0b6d3607e4
mangoapp: frametime message queue
...
Co-Authored-By: Martin Roukala <martin.roukala@mupuf.org>
2022-01-11 00:09:33 +00:00
Joshua Ashton
589fd61d58
rendervulkan: Refactor to use shared_ptr for VulkanTexture_t
2021-12-17 15:43:26 -08:00
Joshua Ashton
93e4d94a78
steamcompmgr: Add --cursor-hotspot
...
Allow setting the hotspot for the custom cursor.
2021-11-26 21:45:39 +01:00
Simon Ser
e8dab4efe0
Drop unnecessary typedef
2021-11-10 18:30:47 +01:00
Pierre-Loup A. Griffais
26aeebf11d
steamcompmgr: publish input change count
2021-10-17 20:17:30 -07:00
Pierre-Loup A. Griffais
ab72155ce0
steamcompmgr: some cursor hiding improvements
...
Absorb 5 moves for auto-hide purposes instead of 3. Our nudge is 2 moves,
and we can warp on top of that, so we weren't counting everything.
Hide before changing mouse input focus and the warp that ensues.
Re-arm warp count when changing mouse input focus, so doing it repeatedly
with the same window doesn't eventually unhide despite no input.
2021-09-12 23:21:35 -07:00
Joshua Ashton
0b5764195e
Add setCursorImage to MouseCursor
2021-09-01 18:33:57 +02:00
Simon Ser
82ef0372d5
Introduce thread-safe take_screenshot
2021-08-31 17:06:49 +02:00
Simon Ser
33f207d6a1
Replace nudge X11 events with pipe
...
Avoids the roundtrip through the X11 server. Avoids having to connect
to the X11 server from multiple threads.
2021-06-10 14:49:02 +02:00
Pierre-Loup A. Griffais
0396468a1d
steamcompmgr: scale touch coordinates to the right window
...
Was erroneously using base layer size even if overlay had touch input focus.
2021-05-28 13:57:11 -07:00
Jan Beich
e8c9098187
steamcompmgr: drop unused private field after f7d815a203
...
In file included from ../src/steamcompmgr.cpp:74:
src/steamcompmgr.hpp:75:7: warning: private field 'm_hasPlane' is not used [-Wunused-private-field]
bool m_hasPlane;
^
2020-10-22 10:23:40 +02:00
Pierre-Loup A. Griffais
bff790eccb
steamcompmgr: gracefully exit imageWaitThread and steamcompmgr loop.
2020-09-13 00:31:52 -07:00
Pierre-Loup A. Griffais
d7a85b00d9
sdlwindow: mimic window shown.
2020-09-13 00:19:02 -07:00
Joshua Ashton
325445a061
Add nano sleep helper functions
2020-09-12 22:26:31 -07:00
Joshua Ashton
d49c95569b
Add get_time_in_nanos to header
2020-09-12 22:26:31 -07:00
Pierre-Loup A. Griffais
81b8e8c33c
steamcompmgr: ignore vblank messages if we get them too late.
2020-09-01 22:59:44 -07:00
Simon Ser
c2d9b23d08
Hold buffers till steamcompmgr processes them
2020-09-01 12:36:35 -07:00
Pierre-Loup A. Griffais
7fedd8251b
steamcompmgr: zero-initialize some cursor stuff that used to be global.
2020-08-28 00:39:54 -07:00
Pierre-Loup A. Griffais
69bcb1b339
Revert "Hold buffers till steamcompmgr processes them"
...
This reverts commit 98e263c37d
.
2020-07-24 15:01:33 -07:00
Simon Ser
98e263c37d
Hold buffers till steamcompmgr processes them
2020-07-23 22:26:06 +02:00
Pierre-Loup A. Griffais
064d132c93
wlserver: Fix use-after-free of wlr_surface in steamcompmgr.
2020-07-03 15:05:00 -07:00
Pierre-Loup A. Griffais
575171360b
wlserver: properly handle touch for scaled windows.
...
Gets scale from steamcompmgr in an extremely safe and elegant way.
2020-07-02 17:40:31 -07:00
Simon Ser
bae255ee1a
Get rid of C_SIDE
...
wlroots headers can mostly be included with extern "C" blocks. Two
exceptions are the use of `static` for array args and `class` as a
struct field. These can be #define'ed to avoid C++ build errors.
This allows the whole project to be built as a single C++ codebase,
without having to maintain hybrid header files.
2020-06-11 12:44:36 +02:00