selection bugfix

This commit is contained in:
Kartik K. Agaram 2022-06-20 12:02:51 -07:00
parent c1b6bac187
commit 7508a70ed5
2 changed files with 19 additions and 1 deletions

View File

@ -551,7 +551,7 @@ function App.keychord_pressed(chord)
for _,line in ipairs(Lines) do line.y = nil end -- just in case we scroll
Text.keychord_pressed(chord)
end
if not App.shift_down() then
if not App.shift_down() and chord ~= 'C-c' then
Selection1 = {}
end
end

View File

@ -243,6 +243,24 @@ function test_edit_deletes_selection()
check_eq(Lines[1].data, 'xbc', 'F - test_edit_deletes_selection')
end
function test_copy_does_not_reset_selection()
io.write('\ntest_copy_does_not_reset_selection')
-- display a line of text with a selection
App.screen.init{width=80, height=80}
Lines = load_array{'abc'}
Line_width = 75
Cursor1 = {line=1, pos=1}
Selection1 = {line=1, pos=2}
Screen_top1 = {line=1, pos=1}
Screen_bottom1 = {}
App.draw()
-- copy selection
App.run_after_keychord('C-c')
check_eq(App.clipboard, 'a', 'F - test_copy_does_not_reset_selection/clipboard')
-- selection is reset since shift key is not pressed
check(Selection1.line, 'F - test_copy_does_not_reset_selection')
end
function test_edit_wrapping_text()
io.write('\ntest_edit_wrapping_text')
App.screen.init{width=50, height=60}