From b11c81cc1337b55f42a1653771517add1fb47d0c Mon Sep 17 00:00:00 2001
From: lat9nq <22451773+lat9nq@users.noreply.github.com>
Date: Fri, 23 Jul 2021 10:11:42 -0400
Subject: general: Implement FullscreenMode enumeration

Prevents us from using an unclear 0 or 1 to describe the fullscreen
mode.
---
 src/common/settings.h | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

(limited to 'src/common/settings.h')

diff --git a/src/common/settings.h b/src/common/settings.h
index ce1bc647d9..fd2a263ec3 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -36,6 +36,11 @@ enum class CPUAccuracy : u32 {
     Unsafe = 2,
 };
 
+enum class FullscreenMode : u32 {
+    Borderless = 0,
+    Exclusive = 1,
+};
+
 /** The BasicSetting class is a simple resource manager. It defines a label and default value
  * alongside the actual value of the setting for simpler and less-error prone use with frontend
  * configurations. Setting a default value and label is required, though subclasses may deviate from
@@ -313,11 +318,11 @@ struct Values {
     Setting<u16> resolution_factor{1, "resolution_factor"};
     // *nix platforms may have issues with the borderless windowed fullscreen mode.
     // Default to exclusive fullscreen on these platforms for now.
-    Setting<int> fullscreen_mode{
+    Setting<FullscreenMode> fullscreen_mode{
 #ifdef _WIN32
-        0,
+        FullscreenMode::Borderless,
 #else
-        1,
+        FullscreenMode::Exclusive,
 #endif
         "fullscreen_mode"};
     Setting<int> aspect_ratio{0, "aspect_ratio"};
-- 
cgit v1.2.3-70-g09d2