From bfc70adc697a96cd33b89f7175774abef6a4b714 Mon Sep 17 00:00:00 2001 From: Miguel de Icaza Date: Mon, 30 Apr 2018 10:30:48 -0400 Subject: [PATCH] One curses P/Invoke was missing the proxy --- Terminal.Gui/MonoCurses/binding.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Terminal.Gui/MonoCurses/binding.cs b/Terminal.Gui/MonoCurses/binding.cs index 8e7a8204c..b238cc6eb 100644 --- a/Terminal.Gui/MonoCurses/binding.cs +++ b/Terminal.Gui/MonoCurses/binding.cs @@ -209,13 +209,10 @@ namespace Unix.Terminal { cols = Marshal.ReadInt32 (cols_ptr); } - [DllImport ("ncurses", EntryPoint="mousemask")] - extern static IntPtr call_mousemask (IntPtr newmask, out IntPtr oldmask); - public static Event mousemask (Event newmask, out Event oldmask) { IntPtr e; - var ret = (Event) call_mousemask ((IntPtr) newmask, out e); + var ret = (Event) (use_naked_driver ? RegularCurses.call_mousemask ((IntPtr) newmask, out e) : CursesLinux.call_mousemask ((IntPtr) newmask, out e)); oldmask = (Event) e; return ret; } @@ -473,6 +470,9 @@ namespace Unix.Terminal { [DllImport ("ncurses")] public extern static int mouseinterval (int interval); + [DllImport ("ncurses", EntryPoint="mousemask")] + public extern static IntPtr call_mousemask (IntPtr newmask, out IntPtr oldmask); + } // @@ -480,6 +480,9 @@ namespace Unix.Terminal { // by the dynamic linker, different than RegularCurses that looksup by "ncurses" // internal class CursesLinux { + [DllImport ("libncursesw.so.5", EntryPoint="mousemask")] + public extern static IntPtr call_mousemask (IntPtr newmask, out IntPtr oldmask); + [DllImport ("libncursesw.so.5", EntryPoint="initscr")] extern static internal IntPtr real_initscr ();