diff --git a/platform/iphone/os_iphone.h b/platform/iphone/os_iphone.h index 9419787ed46..ad9a8eed72b 100644 --- a/platform/iphone/os_iphone.h +++ b/platform/iphone/os_iphone.h @@ -109,6 +109,9 @@ public: virtual String get_name() const; virtual String get_model_name() const; + virtual void set_clipboard(const String &p_text); + virtual String get_clipboard() const; + Error shell_open(String p_uri); String get_user_data_dir() const; diff --git a/platform/iphone/os_iphone.mm b/platform/iphone/os_iphone.mm index 96cdf744059..21fed4a187b 100644 --- a/platform/iphone/os_iphone.mm +++ b/platform/iphone/os_iphone.mm @@ -484,6 +484,16 @@ String OSIPhone::get_name() const { return "iOS"; } +void OSIPhone::set_clipboard(const String &p_text) { + [UIPasteboard generalPasteboard].string = [NSString stringWithUTF8String:p_text.utf8()]; +} + +String OSIPhone::get_clipboard() const { + NSString *text = [UIPasteboard generalPasteboard].string; + + return String::utf8([text UTF8String]); +} + String OSIPhone::get_model_name() const { String model = ios->get_model(); if (model != "") {