yuzu: create linux group in general settings
- Create files dedicated to starting and stopping gamemode functions - Use them in yuzu and yuzu_cmd modulesmaster
parent
dfa56765d6
commit
40644d43f7
@ -0,0 +1,39 @@
|
|||||||
|
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#include <gamemode_client.h>
|
||||||
|
|
||||||
|
#include "common/linux/gamemode.h"
|
||||||
|
#include "common/settings.h"
|
||||||
|
|
||||||
|
namespace Common::Linux {
|
||||||
|
|
||||||
|
void StartGamemode() {
|
||||||
|
if (Settings::values.enable_gamemode) {
|
||||||
|
if (gamemode_request_start() < 0) {
|
||||||
|
LOG_WARNING(Frontend, "Failed to start gamemode: {}", gamemode_error_string());
|
||||||
|
} else {
|
||||||
|
LOG_INFO(Frontend, "Started gamemode");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void StopGamemode() {
|
||||||
|
if (Settings::values.enable_gamemode) {
|
||||||
|
if (gamemode_request_end() < 0) {
|
||||||
|
LOG_WARNING(Frontend, "Failed to stop gamemode: {}", gamemode_error_string());
|
||||||
|
} else {
|
||||||
|
LOG_INFO(Frontend, "Stopped gamemode");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetGamemodeState(bool state) {
|
||||||
|
if (state) {
|
||||||
|
StartGamemode();
|
||||||
|
} else {
|
||||||
|
StopGamemode();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace Common::Linux
|
@ -0,0 +1,24 @@
|
|||||||
|
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace Common::Linux {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Start the (Feral Interactive) Linux gamemode if it is installed and it is activated
|
||||||
|
*/
|
||||||
|
void StartGamemode();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stop the (Feral Interactive) Linux gamemode if it is installed and it is activated
|
||||||
|
*/
|
||||||
|
void StopGamemode();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Start or stop the (Feral Interactive) Linux gamemode if it is installed and it is activated
|
||||||
|
* @param state The new state the gamemode should have
|
||||||
|
*/
|
||||||
|
void SetGamemodeState(bool state);
|
||||||
|
|
||||||
|
} // namespace Common::Linux
|
Loading…
Reference in New Issue