[Scummvm-git-logs] scummvm master -> bdb1cc20128a0df019c7db0b5a3ddd9c1a78c673

antoniou79 a.antoniou79 at gmail.com
Mon Aug 2 20:43:57 UTC 2021


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
bdb1cc2012 ANDROID: Only show SAF revokation in Options from launcher


Commit: bdb1cc20128a0df019c7db0b5a3ddd9c1a78c673
    https://github.com/scummvm/scummvm/commit/bdb1cc20128a0df019c7db0b5a3ddd9c1a78c673
Author: antoniou (a.antoniou79 at gmail.com)
Date: 2021-08-02T23:43:44+03:00

Commit Message:
ANDROID: Only show SAF revokation in Options from launcher

But not in per Game domain settings (via Edit Game...)

Changed paths:
    backends/platform/android/options.cpp


diff --git a/backends/platform/android/options.cpp b/backends/platform/android/options.cpp
index 7d2cf92784..efce560965 100644
--- a/backends/platform/android/options.cpp
+++ b/backends/platform/android/options.cpp
@@ -69,11 +69,13 @@ private:
 
 AndroidOptionsWidget::AndroidOptionsWidget(GuiObject *boss, const Common::String &name, const Common::String &domain) :
 		OptionsContainerWidget(boss, name, "AndroidOptionsDialog", false, domain), _enabled(true) {
-
 	_onscreenCheckbox = new GUI::CheckboxWidget(widgetsBoss(), "AndroidOptionsDialog.OnScreenControl", _("Show On-screen control"));
 	_touchpadCheckbox = new GUI::CheckboxWidget(widgetsBoss(), "AndroidOptionsDialog.TouchpadMode", _("Touchpad mouse mode"));
-	// I18N: Show a button to revoke Storage Access Framework permissions for Android
-	_onscreenSAFRevokeCheckbox = new GUI::CheckboxWidget(widgetsBoss(), "AndroidOptionsDialog.SAFRevokePermsControl", _("Show SAF revoke permissions overlay button"));
+	if (domain.equalsIgnoreCase("scummvm")) {
+		// Only show this checkbox in Options (via Options... in the launcher), and not at game domain level (via Edit Game...)
+		// I18N: Show a button to revoke Storage Access Framework permissions for Android
+		_onscreenSAFRevokeCheckbox = new GUI::CheckboxWidget(widgetsBoss(), "AndroidOptionsDialog.SAFRevokePermsControl", _("Show SAF revoke permissions overlay button"));
+	}
 }
 
 AndroidOptionsWidget::~AndroidOptionsWidget() {
@@ -84,27 +86,35 @@ void AndroidOptionsWidget::defineLayout(GUI::ThemeEval &layouts, const Common::S
 	        .addLayout(GUI::ThemeLayout::kLayoutVertical)
 	            .addPadding(0, 0, 0, 0)
 	            .addWidget("OnScreenControl", "Checkbox")
-	            .addWidget("TouchpadMode", "Checkbox")
-	            .addWidget("SAFRevokePermsControl", "Checkbox")
-	        .closeLayout()
+	            .addWidget("TouchpadMode", "Checkbox");
+	if (_domain.equalsIgnoreCase("scummvm")) {
+		layouts.addWidget("SAFRevokePermsControl", "Checkbox");
+	}
+	layouts.closeLayout()
 	    .closeDialog();
 }
 
 void AndroidOptionsWidget::load() {
 	_onscreenCheckbox->setState(ConfMan.getBool("onscreen_control", _domain));
 	_touchpadCheckbox->setState(ConfMan.getBool("touchpad_mouse_mode", _domain));
-	_onscreenSAFRevokeCheckbox->setState(ConfMan.getBool("onscreen_saf_revoke_btn", _domain));
+	if (_domain.equalsIgnoreCase("scummvm")) {
+		_onscreenSAFRevokeCheckbox->setState(ConfMan.getBool("onscreen_saf_revoke_btn", _domain));
+	}
 }
 
 bool AndroidOptionsWidget::save() {
 	if (_enabled) {
 		ConfMan.setBool("onscreen_control", _onscreenCheckbox->getState(), _domain);
 		ConfMan.setBool("touchpad_mouse_mode", _touchpadCheckbox->getState(), _domain);
-		ConfMan.setBool("onscreen_saf_revoke_btn", _onscreenSAFRevokeCheckbox->getState(), _domain);
+		if (_domain.equalsIgnoreCase("scummvm")) {
+			ConfMan.setBool("onscreen_saf_revoke_btn", _onscreenSAFRevokeCheckbox->getState(), _domain);
+		}
 	} else {
 		ConfMan.removeKey("onscreen_control", _domain);
 		ConfMan.removeKey("touchpad_mouse_mode", _domain);
-		ConfMan.removeKey("onscreen_saf_revoke_btn", _domain);
+		if (_domain.equalsIgnoreCase("scummvm")) {
+			ConfMan.removeKey("onscreen_saf_revoke_btn", _domain);
+		}
 	}
 
 	return true;
@@ -113,7 +123,7 @@ bool AndroidOptionsWidget::save() {
 bool AndroidOptionsWidget::hasKeys() {
 	return ConfMan.hasKey("onscreen_control", _domain) ||
 	       ConfMan.hasKey("touchpad_mouse_mode", _domain) ||
-	       ConfMan.hasKey("onscreen_saf_revoke_btn", _domain);
+	       (_domain.equalsIgnoreCase("scummvm") && ConfMan.hasKey("onscreen_saf_revoke_btn", _domain));
 }
 
 void AndroidOptionsWidget::setEnabled(bool e) {
@@ -121,7 +131,9 @@ void AndroidOptionsWidget::setEnabled(bool e) {
 
 	_onscreenCheckbox->setEnabled(e);
 	_touchpadCheckbox->setEnabled(e);
-	_onscreenSAFRevokeCheckbox->setEnabled(e);
+	if (_domain.equalsIgnoreCase("scummvm")) {
+		_onscreenSAFRevokeCheckbox->setEnabled(e);
+	}
 }
 
 




More information about the Scummvm-git-logs mailing list