]> git.lyx.org Git - features.git/commitdiff
Move LFUN_UNICODE_INSERT to BufferView, per JMarc's suggestion.
authorRichard Heck <rikiheck@lyx.org>
Tue, 17 Apr 2018 02:49:06 +0000 (22:49 -0400)
committerRichard Heck <rikiheck@lyx.org>
Tue, 17 Apr 2018 02:56:01 +0000 (22:56 -0400)
src/BufferView.cpp
src/Text3.cpp
src/mathed/InsetMathNest.cpp

index dafcc9d19428517e227a238a8f2e8219b103b847..27176b350a48f677b68d5a804bd3d561af0f2ecf 100644 (file)
@@ -65,6 +65,7 @@
 #include "insets/InsetText.h"
 
 #include "mathed/MathData.h"
+#include "mathed/InsetMathNest.h"
 
 #include "frontends/alert.h"
 #include "frontends/Application.h"
@@ -1907,6 +1908,33 @@ void BufferView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
        }
 
 
+       case LFUN_UNICODE_INSERT: {
+               if (cmd.argument().empty())
+                       break;
+
+               FuncCode code = cur.inset().currentMode() == Inset::MATH_MODE ?
+                       LFUN_MATH_INSERT : LFUN_SELF_INSERT;
+               int i = 0;
+               while (true) {
+                       docstring const arg = from_utf8(cmd.getArg(i));
+                       if (arg.empty())
+                               break;
+                       if (!isHex(arg)) {
+                               LYXERR0("Not a hexstring: " << arg);
+                               ++i;
+                               continue;
+                       }
+                       char_type c = hexToInt(arg);
+                       if (c >= 32 && c < 0x10ffff) {
+                               LYXERR(Debug::KEY, "Inserting c: " << c);
+                               lyx::dispatch(FuncRequest(code, docstring(1, c)));
+                       }
+                       ++i;
+               }
+               break;
+       }
+
+
        // This would be in Buffer class if only Cursor did not
        // require a bufferview
        case LFUN_INSET_FORALL: {
index 833a7ed645340aa110571e32e1c4c1c689bf3e56..e3e436bac559ca82090c74d39064311c19cd4d1e 100644 (file)
@@ -1696,29 +1696,6 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd)
                bv->buffer().errors("Paste");
                break;
 
-       case LFUN_UNICODE_INSERT: {
-               if (cmd.argument().empty())
-                       break;
-               int i = 0;
-               while (true) {
-                       docstring const arg = from_utf8(cmd.getArg(i));
-                       if (arg.empty())
-                               break;
-                       if (!isHex(arg)) {
-                               LYXERR0("Not a hexstring: " << arg);
-                               ++i;
-                               continue;
-                       }
-                       char_type c = hexToInt(arg);
-                       if (c >= 32 && c < 0x10ffff) {
-                               LYXERR(Debug::KEY, "Inserting c: " << c);
-                               lyx::dispatch(FuncRequest(LFUN_SELF_INSERT, docstring(1, c)));
-                       }
-                       ++i;
-               }
-               break;
-       }
-
        case LFUN_QUOTE_INSERT: {
                cap::replaceSelection(cur);
                cur.recordUndo();
index 6f415913b1250fd1b1fa0ef39e7258aca1319cd0..b026b888f03046c89ddb4139e63e14ee644c9547 100644 (file)
@@ -1246,31 +1246,6 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                break;
        }
 
-       case LFUN_UNICODE_INSERT: {
-               if (cmd.argument().empty())
-                       break;
-               int i = 0;
-               while (true) {
-                       docstring const arg = from_utf8(cmd.getArg(i));
-                       if (arg.empty())
-                               break;
-                       if (!isHex(arg)) {
-                               LYXERR0("Not a hexstring: " << arg);
-                               ++i;
-                               continue;
-                       }
-                       char_type c = hexToInt(arg);
-                       if (c >= 32 && c < 0x10ffff) {
-                               LYXERR(Debug::KEY, "Inserting c: " << c);
-                               FuncCode code = currentMode() == MATH_MODE ?
-                                       LFUN_MATH_INSERT : LFUN_SELF_INSERT;
-                               lyx::dispatch(FuncRequest(code, docstring(1, c)));
-                       }
-                       ++i;
-               }
-               break;
-       }
-
        case LFUN_DIALOG_SHOW_NEW_INSET: {
                docstring const & name = cmd.argument();
                string data;