mirror of
https://github.com/neovim/neovim.git
synced 2025-09-13 06:48:17 +00:00
api: Move switch_to_win_for_buf/restore_win_for_buf to api helpers
This commit is contained in:
@@ -516,33 +516,6 @@ ArrayOf(Integer, 2) buffer_get_mark(Buffer buffer, String name, Error *err)
|
|||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find a window that contains "buf" and switch to it.
|
|
||||||
// If there is no such window, use the current window and change "curbuf".
|
|
||||||
// Caller must initialize save_curbuf to NULL.
|
|
||||||
// restore_win_for_buf() MUST be called later!
|
|
||||||
static void switch_to_win_for_buf(buf_T *buf,
|
|
||||||
win_T **save_curwinp,
|
|
||||||
tabpage_T **save_curtabp,
|
|
||||||
buf_T **save_curbufp)
|
|
||||||
{
|
|
||||||
win_T *wp;
|
|
||||||
tabpage_T *tp;
|
|
||||||
|
|
||||||
if (!find_win_for_buf(buf, &wp, &tp)
|
|
||||||
|| switch_win(save_curwinp, save_curtabp, wp, tp, true) == FAIL)
|
|
||||||
switch_buffer(save_curbufp, buf);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void restore_win_for_buf(win_T *save_curwin,
|
|
||||||
tabpage_T *save_curtab,
|
|
||||||
buf_T *save_curbuf)
|
|
||||||
{
|
|
||||||
if (save_curbuf == NULL) {
|
|
||||||
restore_win(save_curwin, save_curtab, true);
|
|
||||||
} else {
|
|
||||||
restore_buffer(save_curbuf);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if deleting lines made the cursor position invalid.
|
// Check if deleting lines made the cursor position invalid.
|
||||||
// Changed the lines from "lo" to "hi" and added "extra" lines (negative if
|
// Changed the lines from "lo" to "hi" and added "extra" lines (negative if
|
||||||
|
@@ -553,6 +553,34 @@ Dictionary api_metadata(void)
|
|||||||
return copy_object(DICTIONARY_OBJ(metadata)).data.dictionary;
|
return copy_object(DICTIONARY_OBJ(metadata)).data.dictionary;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Find a window that contains "buf" and switch to it.
|
||||||
|
// If there is no such window, use the current window and change "curbuf".
|
||||||
|
// Caller must initialize save_curbuf to NULL.
|
||||||
|
// restore_win_for_buf() MUST be called later!
|
||||||
|
void switch_to_win_for_buf(buf_T *buf,
|
||||||
|
win_T **save_curwinp,
|
||||||
|
tabpage_T **save_curtabp,
|
||||||
|
buf_T **save_curbufp)
|
||||||
|
{
|
||||||
|
win_T *wp;
|
||||||
|
tabpage_T *tp;
|
||||||
|
|
||||||
|
if (!find_win_for_buf(buf, &wp, &tp)
|
||||||
|
|| switch_win(save_curwinp, save_curtabp, wp, tp, true) == FAIL)
|
||||||
|
switch_buffer(save_curbufp, buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
void restore_win_for_buf(win_T *save_curwin,
|
||||||
|
tabpage_T *save_curtab,
|
||||||
|
buf_T *save_curbuf)
|
||||||
|
{
|
||||||
|
if (save_curbuf == NULL) {
|
||||||
|
restore_win(save_curwin, save_curtab, true);
|
||||||
|
} else {
|
||||||
|
restore_buffer(save_curbuf);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void init_error_type_metadata(Dictionary *metadata)
|
static void init_error_type_metadata(Dictionary *metadata)
|
||||||
{
|
{
|
||||||
Dictionary types = ARRAY_DICT_INIT;
|
Dictionary types = ARRAY_DICT_INIT;
|
||||||
|
Reference in New Issue
Block a user