Push current position to navqueue before navigating back (#1537)
This commit is contained in:
parent
088aaefea0
commit
2abf72a178
@ -192,6 +192,20 @@ static gboolean goto_file_pos(const gchar *file, gint pos)
|
||||
void navqueue_go_back(void)
|
||||
{
|
||||
filepos *fprev;
|
||||
GeanyDocument *doc = document_get_current();
|
||||
|
||||
/* If the navqueue is currently at some position A, but the actual cursor is at some other
|
||||
* place B, we should add B to the navqueue, so that (1) we go back to A, not to the next
|
||||
* item in the queue; and (2) we can later restore B by going forward.
|
||||
* (If A = B, add_new_position will ignore it.) */
|
||||
if (doc)
|
||||
{
|
||||
if (doc->file_name)
|
||||
add_new_position(doc->file_name, sci_get_current_position(doc->editor->sci));
|
||||
}
|
||||
else
|
||||
/* see also https://github.com/geany/geany/pull/1537 */
|
||||
g_warning("Attempted navigation when nothing is open");
|
||||
|
||||
/* return if theres no place to go back to */
|
||||
if (g_queue_is_empty(navigation_queue) ||
|
||||
|
Loading…
x
Reference in New Issue
Block a user