summaryrefslogtreecommitdiffstats
path: root/src/terminal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/terminal.c')
-rw-r--r--src/terminal.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/terminal.c b/src/terminal.c
index f4e1ef1b45..9519c819fa 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -40,12 +40,12 @@
* TODO:
* - in GUI vertical split causes problems. Cursor is flickering. (Hirohito
* Higashi, 2017 Sep 19)
- * - Can we get the default fg/bg color of the terminal and use it for
- * libvterm? Should also fix ssh-in-a-win.
+ * - patch to handle composing characters. (Ozaki Kiichi, #2195)
* - double click in Window toolbar starts Visual mode (but not always?).
* - Shift-Tab does not work.
* - after resizing windows overlap. (Boris Staletic, #2164)
* - :wall gives an error message. (Marius Gedminas, #2190)
+ * patch suggested by Yasuhiro Matsumoto, Oct 10
* - Redirecting output does not work on MS-Windows, Test_terminal_redir_file()
* is disabled.
* - cursor blinks in terminal on widows with a timer. (xtal8, #2142)
@@ -59,7 +59,7 @@
* - GUI: when 'confirm' is set and trying to exit Vim, dialog offers to save
* changes to "!shell".
* (justrajdeep, 2017 Aug 22)
- * - Redrawing is slow with Athena and Motif.
+ * - Redrawing is slow with Athena and Motif. Also other GUI? (Ramel Eshed)
* - For the GUI fill termios with default values, perhaps like pangoterm:
* http://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/head:/main.c#L134
* - if the job in the terminal does not support the mouse, we can use the
@@ -2608,28 +2608,37 @@ create_vterm(term_T *term, int rows, int cols)
if (cterm_bg >= 0)
cterm_color2rgb(cterm_bg, bg);
}
-#if defined(WIN3264) && !defined(FEAT_GUI_W32)
else
{
+#if defined(WIN3264) && !defined(FEAT_GUI_W32)
int tmp;
+#endif
/* In an MS-Windows console we know the normal colors. */
if (cterm_normal_fg_color > 0)
{
cterm_color2rgb(cterm_normal_fg_color - 1, fg);
+# if defined(WIN3264) && !defined(FEAT_GUI_W32)
tmp = fg->red;
fg->red = fg->blue;
fg->blue = tmp;
+# endif
}
+ else
+ term_get_fg_color(&fg->red, &fg->green, &fg->blue);
+
if (cterm_normal_bg_color > 0)
{
cterm_color2rgb(cterm_normal_bg_color - 1, bg);
+# if defined(WIN3264) && !defined(FEAT_GUI_W32)
tmp = bg->red;
bg->red = bg->blue;
bg->blue = tmp;
+# endif
}
+ else
+ term_get_bg_color(&bg->red, &bg->green, &bg->blue);
}
-#endif
vterm_state_set_default_colors(vterm_obtain_state(vterm), fg, bg);