diff --git a/src/config/user_config.hpp b/src/config/user_config.hpp index 267df2932..3f778d9fc 100644 --- a/src/config/user_config.hpp +++ b/src/config/user_config.hpp @@ -197,6 +197,7 @@ public: void findYourDataInAnAttributeOf(const XMLNode* node); irr::core::stringc toString() const; + void setDefaultValue(int v) { m_value = m_default_value = v; } void revertToDefaults() { m_value = m_default_value; } int getDefaultValue() { return m_default_value; } operator int() const { return m_value; } @@ -297,6 +298,7 @@ public: irr::core::stringc toString() const; void revertToDefaults() { m_value = m_default_value; } + void setDefaultValue(bool v) { m_value = m_default_value = v; } operator bool() const { return m_value; } bool& operator=(const bool& v) { m_value = v; return m_value; } @@ -330,6 +332,7 @@ public: irr::core::stringc toString() const; void revertToDefaults() { m_value = m_default_value; } + void setDefaultValue(float v) { m_value = m_default_value = v; } operator float() const { return m_value; } float& operator=(const float& v) { m_value = v; return m_value; } diff --git a/src/main_android.cpp b/src/main_android.cpp index 6db71dd8a..b2ff1c0d3 100644 --- a/src/main_android.cpp +++ b/src/main_android.cpp @@ -70,18 +70,18 @@ void override_default_params_for_mobile() { case ACONFIGURATION_SCREENSIZE_SMALL: case ACONFIGURATION_SCREENSIZE_NORMAL: - UserConfigParams::m_multitouch_scale = 1.3f; - UserConfigParams::m_multitouch_sensitivity_x = 0.1f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.3f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.1f); UserConfigParams::m_font_size = 5.0f; break; case ACONFIGURATION_SCREENSIZE_LARGE: - UserConfigParams::m_multitouch_scale = 1.2f; - UserConfigParams::m_multitouch_sensitivity_x = 0.15f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.2f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.15f); UserConfigParams::m_font_size = 5.0f; break; case ACONFIGURATION_SCREENSIZE_XLARGE: - UserConfigParams::m_multitouch_scale = 1.1f; - UserConfigParams::m_multitouch_sensitivity_x = 0.2f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.1f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.2f); UserConfigParams::m_font_size = 4.0f; break; default: @@ -112,8 +112,8 @@ void getConfigForDevice(const char* dev) if (device.find("iPhone") != std::string::npos) { // Normal configuration default - UserConfigParams::m_multitouch_scale = 1.3f; - UserConfigParams::m_multitouch_sensitivity_x = 0.1f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.3f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.1f); UserConfigParams::m_font_size = 5.0f; device.erase(0, 6); auto versions = StringUtils::splitToUInt(device, ','); @@ -136,16 +136,16 @@ void getConfigForDevice(const char* dev) ) { // Those phones have small screen - UserConfigParams::m_multitouch_scale = 1.45f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.45f); } } } else if (device.find("iPad") != std::string::npos) { // Normal configuration default - UserConfigParams::m_multitouch_scale = 1.1f; - UserConfigParams::m_multitouch_sensitivity_x = 0.2f; - UserConfigParams::m_font_size = 4.0f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.1f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.2f); + UserConfigParams::m_font_size = 3.0f; device.erase(0, 4); auto versions = StringUtils::splitToUInt(device, ','); if (versions.size() == 2) @@ -161,8 +161,8 @@ void getConfigForDevice(const char* dev) { // All iPod touch has small screen UserConfigParams::m_font_size = 5.0f; - UserConfigParams::m_multitouch_scale = 1.45f; - UserConfigParams::m_multitouch_sensitivity_x = 0.1f; + UserConfigParams::m_multitouch_scale.setDefaultValue(1.45f); + UserConfigParams::m_multitouch_sensitivity_x.setDefaultValue(0.1f); device.erase(0, 4); auto versions = StringUtils::splitToUInt(device, ','); if (versions.size() == 2) diff --git a/src/states_screens/dialogs/multitouch_settings_dialog.cpp b/src/states_screens/dialogs/multitouch_settings_dialog.cpp index 0de9d8f83..db6ab579c 100644 --- a/src/states_screens/dialogs/multitouch_settings_dialog.cpp +++ b/src/states_screens/dialogs/multitouch_settings_dialog.cpp @@ -162,35 +162,8 @@ GUIEngine::EventPropagation MultitouchSettingsDialog::processEvent( UserConfigParams::m_multitouch_deadzone.revertToDefaults(); UserConfigParams::m_multitouch_inverted.revertToDefaults(); UserConfigParams::m_multitouch_controls.revertToDefaults(); - -#ifdef ANDROID - int32_t screen_size = AConfiguration_getScreenSize( - global_android_app->config); - - switch (screen_size) - { - case ACONFIGURATION_SCREENSIZE_SMALL: - case ACONFIGURATION_SCREENSIZE_NORMAL: - UserConfigParams::m_multitouch_scale = 1.3f; - UserConfigParams::m_multitouch_sensitivity_x = 0.1f; - break; - case ACONFIGURATION_SCREENSIZE_LARGE: - UserConfigParams::m_multitouch_scale = 1.2f; - UserConfigParams::m_multitouch_sensitivity_x = 0.15f; - break; - case ACONFIGURATION_SCREENSIZE_XLARGE: - UserConfigParams::m_multitouch_scale = 1.1f; - UserConfigParams::m_multitouch_sensitivity_x = 0.2f; - break; - default: - UserConfigParams::m_multitouch_scale.revertToDefaults(); - UserConfigParams::m_multitouch_sensitivity_x.revertToDefaults(); - break; - } -#else UserConfigParams::m_multitouch_scale.revertToDefaults(); UserConfigParams::m_multitouch_sensitivity_x.revertToDefaults(); -#endif if (StateManager::get()->getGameState() != GUIEngine::INGAME_MENU) {