diff options
author | mitchell <70453897+orbitalquark@users.noreply.github.com> | 2021-01-28 15:49:34 -0500 |
---|---|---|
committer | mitchell <70453897+orbitalquark@users.noreply.github.com> | 2021-01-28 15:49:34 -0500 |
commit | 639c415d0d27796c6ef54ba1fd27a5b72a1ff328 (patch) | |
tree | 7718f369abe088ef7110289adc389799e3cc8e5f | |
parent | 8908625df80ac87c9d3db79d2f5f657fc75875fa (diff) |
Fixed navigating back through history from a print buffer.
-rw-r--r-- | modules/textadept/history.lua | 2 | ||||
-rw-r--r-- | test/test.lua | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/modules/textadept/history.lua b/modules/textadept/history.lua index d619363f..db23c4a4 100644 --- a/modules/textadept/history.lua +++ b/modules/textadept/history.lua @@ -83,7 +83,7 @@ function M.back() if #history == 0 then return end -- nothing to do local record = history[history.pos] local line = buffer:line_from_position(buffer.current_pos) - if buffer.filename ~= record.filename or + if buffer.filename ~= record.filename and buffer._type ~= record.filename or math.abs(record.line - line) > M.minimum_line_distance then -- When navigated away from the most recent record, and if that record is -- not a soft record, jump back to it first, then navigate backwards. diff --git a/test/test.lua b/test/test.lua index 91365563..14811e65 100644 --- a/test/test.lua +++ b/test/test.lua @@ -2847,6 +2847,18 @@ function test_history_per_view() buffer:close(true) end +function test_history_print_buffer() + local tabs = ui.tabs + ui.tabs = true + ui.print('hi') + textadept.history.back() + assert(buffer._type ~= _L['[Message Buffer]']) + textadept.history.forward() + assert_equal(buffer._type, _L['[Message Buffer]']) + buffer:close() + ui.tabs = tabs -- restore +end + function test_macro_record_play_save_load() textadept.macros.save() -- should not do anything textadept.macros.play() -- should not do anything |