purge obsolete term 'fragment'
This commit is contained in:
parent
0fcbe310a2
commit
5a74b6938e
8
edit.lua
8
edit.lua
|
@ -395,7 +395,7 @@ function edit.keychord_press(State, chord, key)
|
|||
State.cursor1 = State.search_backup.cursor
|
||||
State.screen_top1 = State.search_backup.screen_top
|
||||
State.search_backup = nil
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
elseif chord == 'return' then
|
||||
State.search_term = nil
|
||||
State.search_backup = nil
|
||||
|
@ -443,8 +443,7 @@ function edit.keychord_press(State, chord, key)
|
|||
patch_placeholders(State.line_cache, event.after, event.before)
|
||||
-- invalidate various cached bits of lines
|
||||
State.lines.current_drawing = nil
|
||||
-- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
schedule_save(State)
|
||||
end
|
||||
elseif chord == 'C-y' then
|
||||
|
@ -457,8 +456,7 @@ function edit.keychord_press(State, chord, key)
|
|||
patch(State.lines, event.before, event.after)
|
||||
-- invalidate various cached bits of lines
|
||||
State.lines.current_drawing = nil
|
||||
-- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
schedule_save(State)
|
||||
end
|
||||
-- clipboard
|
||||
|
|
|
@ -53,8 +53,7 @@ function edit.initialize_state(top, left, right, font, font_height, line_height)
|
|||
|
||||
-- rendering wrapped text lines needs some additional short-lived data per line:
|
||||
-- startpos, the index of data the line starts rendering from, can only be >1 for topmost line on screen
|
||||
-- fragments: snippets of the line guaranteed to not straddle screen lines
|
||||
-- screen_line_starting_pos: optional array of grapheme indices if it wraps over more than one screen line
|
||||
-- screen_line_starting_pos: optional array of codepoint indices if it wraps over more than one screen line
|
||||
line_cache = {},
|
||||
|
||||
-- Given wrapping, any potential location for the text cursor can be described in two ways:
|
||||
|
@ -400,7 +399,7 @@ function edit.keychord_press(State, chord, key)
|
|||
State.cursor1 = State.search_backup.cursor
|
||||
State.screen_top1 = State.search_backup.screen_top
|
||||
State.search_backup = nil
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
elseif chord == 'return' then
|
||||
State.search_term = nil
|
||||
State.search_backup = nil
|
||||
|
@ -445,8 +444,7 @@ function edit.keychord_press(State, chord, key)
|
|||
patch_placeholders(State.line_cache, event.after, event.before)
|
||||
-- invalidate various cached bits of lines
|
||||
State.lines.current_drawing = nil
|
||||
-- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
schedule_save(State)
|
||||
end
|
||||
elseif chord == 'C-y' then
|
||||
|
@ -459,8 +457,7 @@ function edit.keychord_press(State, chord, key)
|
|||
patch(State.lines, event.before, event.after)
|
||||
-- invalidate various cached bits of lines
|
||||
State.lines.current_drawing = nil
|
||||
-- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
schedule_save(State)
|
||||
end
|
||||
-- clipboard
|
||||
|
|
|
@ -289,7 +289,7 @@ function Text.keychord_press(State, chord)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
Text.clear_screen_line_cache(State, State.cursor1.line)
|
||||
assert(Text.le1(State.screen_top1, State.cursor1), ('screen_top (line=%d,pos=%d) is below cursor (line=%d,pos=%d)'):format(State.screen_top1.line, State.screen_top1.pos, State.cursor1.line, State.cursor1.pos))
|
||||
|
@ -427,7 +427,7 @@ function Text.pageup(State)
|
|||
State.screen_top1 = Text.previous_screen_top1(State)
|
||||
State.cursor1 = deepcopy(State.screen_top1)
|
||||
Text.move_cursor_down_to_next_text_line_while_scrolling_again_if_necessary(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
-- return the top y coordinate of a given line_index,
|
||||
|
@ -476,7 +476,7 @@ function Text.pagedown(State)
|
|||
State.screen_top1 = Text.screen_bottom1(State)
|
||||
State.cursor1 = deepcopy(State.screen_top1)
|
||||
Text.move_cursor_down_to_next_text_line_while_scrolling_again_if_necessary(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
-- return the location of the start of the bottom-most line on screen
|
||||
|
@ -538,7 +538,7 @@ function Text.up(State)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -684,7 +684,7 @@ function Text.left(State)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -829,7 +829,7 @@ function Text.snap_cursor_to_bottom_of_screen(State)
|
|||
State.screen_top1 = Text.to1(State, top2)
|
||||
--? print('top1 finally:', State.screen_top1.line, State.screen_top1.pos)
|
||||
--? print('snap =>', State.screen_top1.line, State.screen_top1.pos, State.cursor1.line, State.cursor1.pos)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
function Text.in_line(State, line_index, x,y)
|
||||
|
@ -1118,7 +1118,7 @@ function Text.cursor_out_of_screen(State)
|
|||
end
|
||||
|
||||
function Text.redraw_all(State)
|
||||
--? print('clearing fragments')
|
||||
--? print('clearing line caches')
|
||||
-- Perform some early sanity checking here, in hopes that we correctly call
|
||||
-- this whenever we change editor state.
|
||||
if State.right <= State.left then
|
||||
|
|
16
text.lua
16
text.lua
|
@ -47,7 +47,7 @@ function Text.draw(State, line_index, y, startpos)
|
|||
end
|
||||
end
|
||||
end
|
||||
-- render fragment
|
||||
-- render screen line
|
||||
App.color(Text_color)
|
||||
App.screen.print(screen_line, State.left,y)
|
||||
y = y + State.line_height
|
||||
|
@ -215,7 +215,7 @@ function Text.keychord_press(State, chord)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
Text.clear_screen_line_cache(State, State.cursor1.line)
|
||||
assert(Text.le1(State.screen_top1, State.cursor1), ('screen_top (line=%d,pos=%d) is below cursor (line=%d,pos=%d)'):format(State.screen_top1.line, State.screen_top1.pos, State.cursor1.line, State.cursor1.pos))
|
||||
|
@ -353,7 +353,7 @@ function Text.pageup(State)
|
|||
State.screen_top1 = Text.previous_screen_top1(State)
|
||||
State.cursor1 = deepcopy(State.screen_top1)
|
||||
Text.move_cursor_down_to_next_text_line_while_scrolling_again_if_necessary(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
-- return the top y coordinate of a given line_index,
|
||||
|
@ -402,7 +402,7 @@ function Text.pagedown(State)
|
|||
State.screen_top1 = Text.screen_bottom1(State)
|
||||
State.cursor1 = deepcopy(State.screen_top1)
|
||||
Text.move_cursor_down_to_next_text_line_while_scrolling_again_if_necessary(State)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
-- return the location of the start of the bottom-most line on screen
|
||||
|
@ -464,7 +464,7 @@ function Text.up(State)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -610,7 +610,7 @@ function Text.left(State)
|
|||
line=State.cursor1.line,
|
||||
pos=Text.pos_at_start_of_screen_line(State, State.cursor1),
|
||||
}
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -755,7 +755,7 @@ function Text.snap_cursor_to_bottom_of_screen(State)
|
|||
State.screen_top1 = Text.to1(State, top2)
|
||||
--? print('top1 finally:', State.screen_top1.line, State.screen_top1.pos)
|
||||
--? print('snap =>', State.screen_top1.line, State.screen_top1.pos, State.cursor1.line, State.cursor1.pos)
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all fragments to avoid memory leaks
|
||||
Text.redraw_all(State) -- if we're scrolling, reclaim all line caches to avoid memory leaks
|
||||
end
|
||||
|
||||
function Text.in_line(State, line_index, x,y)
|
||||
|
@ -1044,7 +1044,7 @@ function Text.cursor_out_of_screen(State)
|
|||
end
|
||||
|
||||
function Text.redraw_all(State)
|
||||
--? print('clearing fragments')
|
||||
--? print('clearing line caches')
|
||||
-- Perform some early sanity checking here, in hopes that we correctly call
|
||||
-- this whenever we change editor state.
|
||||
if State.right <= State.left then
|
||||
|
|
Loading…
Reference in New Issue