Android: Multiple fixes

- Fix possible crash when applying settings worker thread (no JNIEnv).
 - Fix settings not applying until restarting the app.
 - Support analog controller - auto-binding of axixes. Currently no
   touchscreen controller for the joysticks.
 - Add option to auto-hide the touchscreen controller.
This commit is contained in:
Connor McLaughlin
2020-07-29 02:24:25 +10:00
parent c7b457de9e
commit 24ffe6f67e
10 changed files with 183 additions and 75 deletions

View File

@ -43,6 +43,7 @@ public:
void SetControllerType(u32 index, std::string_view type_name);
void SetControllerButtonState(u32 index, s32 button_code, bool pressed);
void SetControllerAxisState(u32 index, s32 button_code, float value);
void RefreshGameList(bool invalidate_cache, bool invalidate_database);
void ApplySettings();
@ -54,7 +55,6 @@ protected:
bool AcquireHostDisplay() override;
void ReleaseHostDisplay() override;
std::unique_ptr<AudioStream> CreateAudioStream(AudioBackend backend) override;
private:
void EmulationThreadEntryPoint(ANativeWindow* initial_surface, SystemBootParameters boot_params);