Files
ytLlive/Services/IFullScreenDetector.cs

22 lines
761 B
C#

namespace ytLive.Services;
/// <summary>
/// Identifies which monitor holds a full-screen window (a game/app running
/// borderless or exclusive fullscreen). Seam so ScreenCaptureManager is
/// testable without Win32 interop.
/// </summary>
public interface IFullScreenDetector
{
/// <summary>
/// The index of the monitor a full-screen foreground window covers, or null
/// when the foreground window is windowed, missing, or one of our own.
/// </summary>
int? GetForegroundFullScreenMonitorIndex();
/// <summary>Index of the primary (taskbar-hosting) monitor.</summary>
int PrimaryMonitorIndex();
/// <summary>All monitors in capture-key order (enumeration order).</summary>
IReadOnlyList<DisplayInfo> GetDisplays();
}