[macOS] Move keyboard layout related code to base display server.
This commit is contained in:
@@ -44,11 +44,22 @@ class DisplayServerMacOSBase : public DisplayServer {
|
||||
|
||||
id tts = nullptr;
|
||||
|
||||
struct LayoutInfo {
|
||||
String name;
|
||||
String code;
|
||||
};
|
||||
mutable Vector<LayoutInfo> kbd_layouts;
|
||||
mutable int current_layout = 0;
|
||||
mutable bool keyboard_layout_dirty = true;
|
||||
|
||||
protected:
|
||||
_THREAD_SAFE_CLASS_
|
||||
|
||||
void initialize_tts() const;
|
||||
|
||||
void _update_keyboard_layouts() const;
|
||||
static void _keyboard_layout_changed(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef user_info);
|
||||
|
||||
public:
|
||||
virtual void clipboard_set(const String &p_text) override;
|
||||
virtual String clipboard_get() const override;
|
||||
@@ -56,6 +67,15 @@ public:
|
||||
virtual bool clipboard_has() const override;
|
||||
virtual bool clipboard_has_image() const override;
|
||||
|
||||
virtual int keyboard_get_layout_count() const override;
|
||||
virtual int keyboard_get_current_layout() const override;
|
||||
virtual void keyboard_set_current_layout(int p_index) override;
|
||||
virtual String keyboard_get_layout_language(int p_index) const override;
|
||||
virtual String keyboard_get_layout_name(int p_index) const override;
|
||||
virtual Key keyboard_get_keycode_from_physical(Key p_keycode) const override;
|
||||
virtual Key keyboard_get_label_from_physical(Key p_keycode) const override;
|
||||
virtual void show_emoji_and_symbol_picker() const override;
|
||||
|
||||
virtual bool tts_is_speaking() const override;
|
||||
virtual bool tts_is_paused() const override;
|
||||
virtual TypedArray<Dictionary> tts_get_voices() const override;
|
||||
@@ -66,4 +86,5 @@ public:
|
||||
virtual void tts_stop() override;
|
||||
|
||||
DisplayServerMacOSBase();
|
||||
~DisplayServerMacOSBase();
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user