Mercurial > vim
comparison src/vim.h @ 17069:76ae212a9075 v8.1.1534
patch 8.1.1534: modeless selection in popup window selects too much
commit https://github.com/vim/vim/commit/bd75b5333d10e63f7a667d4b65e80d309435629e
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jun 14 23:41:55 2019 +0200
patch 8.1.1534: modeless selection in popup window selects too much
Problem: Modeless selection in popup window selects too much.
Solution: Restrict the selection to insde of the popup window.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 14 Jun 2019 23:45:06 +0200 |
parents | 58bf4faa5c05 |
children | 620e9011b685 |
comparison
equal
deleted
inserted
replaced
17068:70b81915f7f7 | 17069:76ae212a9075 |
---|---|
2006 # endif | 2006 # endif |
2007 | 2007 |
2008 /* Info about selected text */ | 2008 /* Info about selected text */ |
2009 typedef struct | 2009 typedef struct |
2010 { | 2010 { |
2011 int available; /* Is clipboard available? */ | 2011 int available; // Is clipboard available? |
2012 int owned; /* Flag: do we own the selection? */ | 2012 int owned; // Flag: do we own the selection? |
2013 pos_T start; /* Start of selected area */ | 2013 pos_T start; // Start of selected area |
2014 pos_T end; /* End of selected area */ | 2014 pos_T end; // End of selected area |
2015 int vmode; /* Visual mode character */ | 2015 int vmode; // Visual mode character |
2016 | 2016 |
2017 /* Fields for selection that doesn't use Visual mode */ | 2017 // Fields for selection that doesn't use Visual mode |
2018 short_u origin_row; | 2018 short_u origin_row; |
2019 short_u origin_start_col; | 2019 short_u origin_start_col; |
2020 short_u origin_end_col; | 2020 short_u origin_end_col; |
2021 short_u word_start_col; | 2021 short_u word_start_col; |
2022 short_u word_end_col; | 2022 short_u word_end_col; |
2023 | 2023 #ifdef FEAT_TEXT_PROP |
2024 pos_T prev; /* Previous position */ | 2024 // limits for selection inside a popup window |
2025 short_u state; /* Current selection state */ | 2025 short_u min_col; |
2026 short_u mode; /* Select by char, word, or line. */ | 2026 short_u max_col; |
2027 short_u min_row; | |
2028 short_u max_row; | |
2029 #endif | |
2030 | |
2031 pos_T prev; // Previous position | |
2032 short_u state; // Current selection state | |
2033 short_u mode; // Select by char, word, or line. | |
2027 | 2034 |
2028 # if defined(FEAT_GUI_X11) || defined(FEAT_XCLIPBOARD) | 2035 # if defined(FEAT_GUI_X11) || defined(FEAT_XCLIPBOARD) |
2029 Atom sel_atom; /* PRIMARY/CLIPBOARD selection ID */ | 2036 Atom sel_atom; // PRIMARY/CLIPBOARD selection ID |
2030 # endif | 2037 # endif |
2031 | 2038 |
2032 # ifdef FEAT_GUI_GTK | 2039 # ifdef FEAT_GUI_GTK |
2033 GdkAtom gtk_sel_atom; /* PRIMARY/CLIPBOARD selection ID */ | 2040 GdkAtom gtk_sel_atom; // PRIMARY/CLIPBOARD selection ID |
2034 # endif | 2041 # endif |
2035 | 2042 |
2036 # if defined(MSWIN) || defined(FEAT_CYGWIN_WIN32_CLIPBOARD) | 2043 # if defined(MSWIN) || defined(FEAT_CYGWIN_WIN32_CLIPBOARD) |
2037 int_u format; /* Vim's own special clipboard format */ | 2044 int_u format; // Vim's own special clipboard format |
2038 int_u format_raw; /* Vim's raw text clipboard format */ | 2045 int_u format_raw; // Vim's raw text clipboard format |
2039 # endif | 2046 # endif |
2040 } Clipboard_T; | 2047 } Clipboard_T; |
2041 #else | 2048 #else |
2042 typedef int Clipboard_T; // This is required for the prototypes. | 2049 typedef int Clipboard_T; // This is required for the prototypes. |
2043 #endif | 2050 #endif |