From 5bab46940c9dc6ad272e4cbf7970a7261aaff210 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Fri, 7 Jan 2022 16:34:44 +0100 Subject: Re-organize cross-platform support for text input methods. FLTK 1.3 supports complex text input methods (TIMs) for the 3 platforms (X11, Windows, macOS). This support has an interface with FLTK that is common for X11 and Windows, via (undocumented) functions fl_set_spot(), fl_set_status() and fl_reset_spot(). In contrast, and because it's been developed independently, the interface between the macOS TIM and FLTK 1.3 is completely different : static functions FL::insertion_point_location() and Fl::reset_marked_text(). The present change implements a single TIM/FLTK interface used by all platforms based on functions fl_set_spot() and fl_reset_spot(). The previous macOS-specific functions FL::insertion_point_location() and Fl::reset_marked_text() are maintained only for compatibility with 1.3 and deprecated. --- src/Fl_Screen_Driver.H | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/Fl_Screen_Driver.H') diff --git a/src/Fl_Screen_Driver.H b/src/Fl_Screen_Driver.H index 1e0b79d14..d6baf775f 100644 --- a/src/Fl_Screen_Driver.H +++ b/src/Fl_Screen_Driver.H @@ -122,12 +122,9 @@ public: static int secret_input_character; /* Implement to indicate whether complex text input may involve marked text. - When it does, has_marked_text returns non zero and reset_marked_text() and - insertion_point_location() must also be implemented. + When it does, has_marked_text returns non zero. */ virtual int has_marked_text() const { return 0; } - virtual void reset_marked_text() {} - virtual void insertion_point_location(int /*x*/, int /*y*/, int /*height*/) {} // implement so text-editing widgets support dead keys virtual int compose(int &del) { del = 0; -- cgit v1.2.3