Compare commits

...

4 commits

Author SHA1 Message Date
SomeoneIsWorking
e4c59baf81 Merge branch 'input-cycle' into 'master'
Input cycling and overlay system

See merge request [ryubing/ryujinx!72](https://git.ryujinx.app/ryubing/ryujinx/-/merge_requests/72)
2025-06-21 05:27:35 -05:00
Barış Hamil
f6d964cca4 Flip overlays in Linux (yes hacky but works) 2025-06-21 13:23:57 +03:00
GreemDev
74a9b94227 UI: Properly space total play time separator when loading bar is shown. 2025-06-20 23:06:16 -05:00
GreemDev
d3208a4c44 UI: Don't show total play time if there is none. 2025-06-20 23:02:39 -05:00
3 changed files with 17 additions and 4 deletions

View file

@ -314,6 +314,14 @@ namespace Ryujinx.Graphics.Gpu
// Create canvas for drawing overlays
using var canvas = new SKCanvas(bitmap);
// On Linux with OpenGL, we need to flip the Y-axis because OpenGL uses bottom-left origin
// while SkiaSharp uses top-left origin
if (OperatingSystem.IsLinux())
{
canvas.Scale(1, -1);
canvas.Translate(0, -height);
}
// Render all overlays
_overlayManager.Render(canvas);

View file

@ -311,10 +311,15 @@ namespace Ryujinx.Ava.UI.ViewModels
private void TotalTimePlayed_Recalculated(Optional<TimeSpan> ts)
{
ShowTotalTimePlayed = ts.HasValue;
if (ts.HasValue)
LocaleManager.Instance.SetDynamicValues(LocaleKeys.GameListLabelTotalTimePlayed, ValueFormatUtils.FormatTimeSpan(ts.Value));
{
var formattedPlayTime = ValueFormatUtils.FormatTimeSpan(ts.Value);
LocaleManager.Instance.SetDynamicValues(LocaleKeys.GameListLabelTotalTimePlayed, formattedPlayTime);
ShowTotalTimePlayed = formattedPlayTime != string.Empty;
return;
}
ShowTotalTimePlayed = ts.HasValue;
}
public bool ShowTotalTimePlayed
@ -335,7 +340,6 @@ namespace Ryujinx.Ava.UI.ViewModels
_listSelectedApplication = value;
if (_listSelectedApplication != null && ListAppContextMenu == null)
ListAppContextMenu = new ApplicationContextMenu();
else if (_listSelectedApplication == null && ListAppContextMenu != null)
ListAppContextMenu = null!;

View file

@ -64,6 +64,7 @@
MinWidth="200"
Height="6"
VerticalAlignment="Center"
Margin="0, 0, 5, 0"
Foreground="{DynamicResource SystemAccentColorLight2}"
IsVisible="{Binding StatusBarVisible}"
Maximum="{Binding StatusBarProgressMaximum}"