diff --git a/base/NativeApp.h b/base/NativeApp.h index 7eb3eb43..d6a25c28 100644 --- a/base/NativeApp.h +++ b/base/NativeApp.h @@ -115,6 +115,11 @@ void Vibrate(int length_ms); void LaunchBrowser(const char *url); void LaunchMarket(const char *url); void LaunchEmail(const char *email_address); + +#if defined(IOS) +char const* WebServiceControl(bool init); +#endif + bool System_InputBoxGetString(const char *title, const char *defaultValue, char *outValue, size_t outlength); bool System_InputBoxGetWString(const wchar_t *title, const std::wstring &defaultValue, std::wstring &outValue); void System_SendMessage(const char *command, const char *parameter); diff --git a/ui/ui_screen.cpp b/ui/ui_screen.cpp index 3fef1617..bea0c947 100644 --- a/ui/ui_screen.cpp +++ b/ui/ui_screen.cpp @@ -118,6 +118,15 @@ UI::EventReturn UIScreen::OnBack(UI::EventParams &e) { return UI::EVENT_DONE; } +#if defined(IOS) +UI::EventReturn UIScreen::OnBackServer(UI::EventParams &e) { + WebServiceControl(false); + + screenManager()->finishDialog(this, DR_BACK); + return UI::EVENT_DONE; +} +#endif + UI::EventReturn UIScreen::OnOK(UI::EventParams &e) { screenManager()->finishDialog(this, DR_OK); return UI::EVENT_DONE; diff --git a/ui/ui_screen.h b/ui/ui_screen.h index 1ffb28c2..1cffcddf 100644 --- a/ui/ui_screen.h +++ b/ui/ui_screen.h @@ -22,6 +22,10 @@ class UIScreen : public Screen { UI::EventReturn OnOK(UI::EventParams &e); UI::EventReturn OnCancel(UI::EventParams &e); UI::EventReturn OnBack(UI::EventParams &e); + +#if defined(IOS) + UI::EventReturn OnBackServer(UI::EventParams &e); +#endif protected: virtual void CreateViews() = 0;