Merge text0

[?]
Dec 24, 2022, 4:17 AM
CYGNFOA5CP46F5A4JHWLLE2Y7IYTYUQ52XRYWTECTCUMT7PPL2NAC

Dependencies

  • [2] QMTFHF3S bugfix: chords with modifiers
  • [3] GZ2OYPSH configurable colors and cursor in editor widget
  • [4] GDAWPFAV more streamlined test names
  • [5] C3GUE45I Merge text.love
  • [6] LRDM35CE app running again
  • [7] UHB4GARJ left/right margin -> left/right coordinates
  • [8] LNUHQOGH start passing in Editor_state explicitly
  • [9] NZKYPBSK check for scroll when just typing
  • [10] KVHUFUFV reorg
  • [11] ZLJGZYQG select text with shift + mouseclick
  • [12] Y2ZIPXEM new test
  • [13] ORKN6EOB Merge lines.love
  • [14] JOPVPUSA editing source code from within the app
  • [15] 2Y7YH7UP infrastructure for caching LÖVE text objects
  • [16] AVTNUQYR basic test-enabled framework
  • [17] LAW2O3NW extract variable Margin_left
  • [18] JCSLDGAH beginnings of support for multiple shapes
  • [19] OAHNWDYG .
  • [20] 2CTN2IEF Merge lines.love
  • [21] XX7G2FFJ intermingle freehand line drawings with text
  • [22] 2L5MEZV3 experiment: new edit namespace
  • [23] H3ECRBXF bugfix: clicking on empty lines
  • [24] ILOA5BYF separate data structure for each line's cache data
  • [25] 2JLVAYHB start decoupling editor tests from App
  • [26] AJB4LFRB try to maintain a reasonable line width
  • [27] LF7BWEG4 group all editor globals
  • [28] EKKFWP4D bugfix: couple of margin-relative computations
  • [29] RT6EV6OP delegate update events to drawings
  • [30] DJGC4ZEF simplify hysteresis logic
  • [31] KKMFQDR4 editing source code from within the app
  • [32] 2CK5QI7W make love event names consistent
  • [33] APYPFFS3 call edit rather than App callbacks in tests
  • [34] OTIBCAUJ love2d scaffold
  • [35] KOTI3MFG bugfix in previous commit
  • [36] PX7DDEMO autosave slightly less aggressively
  • [37] TXDMRA5J bugfix: alt-tab shouldn't emit keypress events
  • [38] IFTYOERM line.y -> line_cache.starty in a few more places
  • [39] 36Z442IV back to commit 8123959e52f without code editing
  • [40] VP5KC4XZ Merge lines.love
  • [41] YJ6ASFBG yet another fork trying to integrate my live framework with everything else
  • [42] P6SYWBLB remove a duplicate test
  • [43] LXTTOB33 extract a couple of files

Change contents

  • resurrect zombie in text_tests.lua at line 39
    [6.446][3.41:79](),[6.446][3.41:79]()
    edit.draw(Editor_state, Text_color)
  • resurrect zombie in text_tests.lua at line 40
    [6.82][6.2:49](),[6.82][6.2:49]()
    edit.run_after_text_input(Editor_state, 'a')
  • resolve order conflict in text_tests.lua at line 40
    [3.79]
    [6.2]
  • resurrect zombie in text_tests.lua at line 251
    [6.329][3.665:703](),[6.329][3.665:703]()
    edit.draw(Editor_state, Text_color)
  • edit in text_tests.lua at line 251
    [6.7400]
    [3.665]
    -- click on the other line
  • edit in text_tests.lua at line 253
    [6.7400][6.140:354](),[6.354][4.78:244](),[4.244][6.435:492](),[6.435][6.435:492](),[6.492][4.245:419]()
    Editor_state.selection1 = {}
    edit.draw(Editor_state) -- populate line_cache.starty for each line Editor_state.line_cache
    edit.run_after_mouse_release(Editor_state, Editor_state.left+8,Editor_state.top+5, 1)
    check_eq(Editor_state.cursor1.line, 1, 'F - test_click_moves_cursor/cursor:line')
    check_eq(Editor_state.cursor1.pos, 2, 'F - test_click_moves_cursor/cursor:pos')
    -- selection is empty to avoid perturbing future edits
    check_nil(Editor_state.selection1.line, 'F - test_click_moves_cursor/selection:line')
    check_nil(Editor_state.selection1.pos, 'F - test_click_moves_cursor/selection:pos')
  • resolve order conflict in text_tests.lua at line 253
    [3.703]
  • edit in text_tests.lua at line 253
    [0.35]
    [6.2]
    edit.run_after_mouse_click(Editor_state, Editor_state.left+8,Editor_state.top+5, 1)
    -- cursor moves
    check_eq(Editor_state.cursor1.line, 1, 'F - test_click_with_mouse/cursor:line')
    check_nil(Editor_state.selection1.line, 'F - test_click_with_mouse/selection is empty to avoid perturbing future edits')
  • resurrect zombie in text_tests.lua at line 741
    [6.16691][3.1601:1639](),[6.16691][3.1601:1639]()
    edit.draw(Editor_state, Text_color)
  • resurrect zombie in text_tests.lua at line 742
    [6.1095][6.316:363](),[6.1095][6.316:363]()
    edit.run_after_text_input(Editor_state, 'g')
  • resolve order conflict in text_tests.lua at line 742
    [3.1639]
    [6.316]
  • resurrect zombie in text_tests.lua at line 830
    [6.19386][3.1718:1825](),[6.19386][3.1718:1825]()
    edit.draw(Editor_state, Text_color) -- populate line_cache.starty for each line Editor_state.line_cache
  • edit in text_tests.lua at line 830
    [6.5652]
    [3.1718]
    function test_move_cursor_using_mouse()
    io.write('\ntest_move_cursor_using_mouse')
    App.screen.init{width=50, height=60}
    Editor_state = edit.initialize_test_state()
    Editor_state.lines = load_array{'abc', 'def', 'xyz'}
    Text.redraw_all(Editor_state)
    Editor_state.cursor1 = {line=1, pos=1}
    Editor_state.screen_top1 = {line=1, pos=1}
    Editor_state.screen_bottom1 = {}
    Editor_state.selection1 = {}
  • edit in text_tests.lua at line 841
    [3.1825]
    [6.184]
    edit.run_after_mouse_release(Editor_state, Editor_state.left+8,Editor_state.top+5, 1)
    check_eq(Editor_state.cursor1.line, 1, 'F - test_move_cursor_using_mouse/cursor:line')
    check_eq(Editor_state.cursor1.pos, 2, 'F - test_move_cursor_using_mouse/cursor:pos')
    check_nil(Editor_state.selection1.line, 'F - test_move_cursor_using_mouse/selection:line')
    check_nil(Editor_state.selection1.pos, 'F - test_move_cursor_using_mouse/selection:pos')
    end
  • resurrect zombie in text_tests.lua at line 1874
    [6.40830][3.3281:3319](),[6.40830][3.3281:3319]()
    edit.draw(Editor_state, Text_color)
  • resurrect zombie in text_tests.lua at line 1875
    [6.2291][6.696:743](),[6.2291][6.696:743]()
    edit.run_after_text_input(Editor_state, 'g')
  • resolve order conflict in text_tests.lua at line 1875
    [3.3319]
    [6.696]
  • resurrect zombie in main.lua at line 128
    [6.8][6.478:524](),[6.8][6.478:524]()
    -- App.keypressed is defined in keychord.lua
  • resolve order conflict in main.lua at line 130
    [6.524]
    [6.8133]
  • replacement in main.lua at line 136
    [6.7306][2.7:73](),[6.7306][5.11:11](),[5.11][5.12:67]()
    if on.keychord_pressed then on.keychord_pressed(chord, key) end
    return edit.keychord_press(Editor_state, chord, key)
    [6.7306]
    [6.223]
    if on.keychord_press then on.keychord_press(chord, key) end
  • replacement in main.lua at line 145
    [6.7438][6.605:648](),[6.7438][5.69:69](),[5.69][5.70:112]()
    if on.textinput then on.textinput(t) end
    return edit.text_input(Editor_state, t)
    [6.7438]
    [6.3116]
    if on.text_input then on.text_input(t) end
  • replacement in main.lua at line 154
    [6.7595][6.649:720](),[6.7595][5.114:114](),[5.114][5.115:170]()
    if on.key_released then on.key_released(key, scancode, isrepeat) end
    return edit.key_release(Editor_state, key, scancode)
    [6.7595]
    [6.190712]
    if on.key_release then on.key_release(key, scancode, isrepeat) end
  • edit in main.lua at line 164
    [6.268][5.172:172](),[6.3019][5.9:9](),[6.3019][5.9:9]()
  • resolve order conflict in main.lua at line 164
    [6.268]