Commit Graph

1601 Commits

Author SHA1 Message Date
Kartik K. Agaram d2a9ef873d suggest a default layout for freewheeling apps 2023-11-11 10:31:25 -08:00
Kartik K. Agaram acc6e97db0 debug animations
https://merveilles.town/@akkartik/111333888472146119
2023-11-11 10:00:54 -08:00
Kartik K. Agaram d49dd49dd6 Merge text0 2023-11-10 16:51:04 -08:00
Kartik K. Agaram 6adc5f5ae0 Merge text.love 2023-11-10 16:50:35 -08:00
Kartik K. Agaram a1da45228a Merge lines.love 2023-11-10 16:40:36 -08:00
Kartik K. Agaram d90dff3286 improve a name 2023-11-10 10:21:52 -08:00
Kartik K. Agaram f86ebf6247 clean up a debug print 2023-11-10 10:20:57 -08:00
Kartik K. Agaram 279c42966b Merge text0
I've tested both syntax error and run-time error flows.
2023-11-10 10:15:35 -08:00
Kartik K. Agaram 69afab3840 Merge text.love 2023-11-10 09:10:20 -08:00
Kartik K. Agaram 3007ea0014 Merge lines.love 2023-11-10 09:05:04 -08:00
Kartik K. Agaram a6738b49c4 clean up some cruft from error callstacks
before:

  stack traceback:
    [string "text.lua"]:9: in function 'draw'
    [string "edit.lua"]:200: in function 'draw'
    [string "run.lua"]:140: in function 'draw'
    [string "main.lua"]:162: in function <[string "main.lua"]:155>
    [C]: in function 'xpcall'
    [string "app.lua"]:38: in function <[string "app.lua"]:20>
    [C]: in function 'xpcall'
    [love "boot.lua"]:370: in function <[love "boot.lua"]:337>

after:

  stack traceback:
    text.lua:9: in function 'draw'
    edit.lua:200: in function 'draw'
    run.lua:140: in function 'draw'
    main.lua:162: in function <[string "main.lua"]:155>
    [C]: in function 'xpcall'
    app.lua:38: in function <[string "app.lua"]:20>
    [C]: in function 'xpcall'
    [love "boot.lua"]:370: in function <[love "boot.lua"]:337>
2023-11-10 08:41:56 -08:00
Kartik K. Agaram 8b70258978 remove a no-op regex munging on callstacks
Port of a fix "upstream": commit b38f172ceb in template-live-editor.
2023-11-10 07:24:46 -08:00
Kartik K. Agaram 66ef316503 strip numeric prefix from callstack filenames 2023-11-10 07:06:37 -08:00
Kartik K. Agaram b38f172ceb remove a no-op regex munging on callstacks
It seems to have been introduced in commit 46889593da back in Jan, and I
was using it to summarize multiple failing tests. However, it's not used
in that scenario anymore (and anyway it seems wasteful to compute the
stack for each failing test and then throw it all away).
2023-11-09 21:16:13 -08:00
Kartik K. Agaram f6ee78f824 bugfix 2023-11-09 18:03:29 -08:00
Kartik K. Agaram cd5ab62971 provide a filename for clearer error callstacks 2023-11-09 17:53:30 -08:00
Kartik K. Agaram 3fb7854008 Merge text0 2023-10-28 01:05:35 -07:00
Kartik K. Agaram 6cc83d5691 Merge text.love 2023-10-28 01:02:30 -07:00
Kartik K. Agaram f737d63c69 Merge lines.love 2023-10-28 00:54:14 -07:00
Kartik K. Agaram aa9a0b0b15 use my name for a dir 2023-10-27 23:58:42 -07:00
Kartik K. Agaram 5d41640d2f remove stale variable from docs 2023-10-27 23:57:18 -07:00
Kartik K. Agaram e310bb11bc Merge text0 2023-10-22 10:18:13 -07:00
Kartik K. Agaram 3985f51aef fix a bullet 2023-10-22 10:16:41 -07:00
Kartik K. Agaram 996425dbf4 add a fork 2023-10-20 22:34:07 -07:00
Kartik K. Agaram 523db004d9 change section delimiters in log for OpenBSD
Thanks eril for the report and patch.
2023-10-20 15:53:03 -07:00
Kartik K. Agaram 598b7dfa8c Merge text0 2023-10-16 23:33:19 -07:00
Kartik K. Agaram 6f9f6b591a Merge text.love 2023-10-16 23:31:13 -07:00
Kartik K. Agaram 0f115e4501 Merge lines.love 2023-10-16 23:25:09 -07:00
Kartik K. Agaram f61976c61a use color alpha in button backgrounds 2023-10-16 22:59:04 -07:00
Kartik K. Agaram 4b3f359526 clearer API for drawing a button
Make it more obvious that the color passed in is just for the background.
The icon will do the rest.
r/g/b keys are more consistent with App.color().
2023-10-16 22:57:46 -07:00
Kartik K. Agaram cdc3168608 Merge text0 2023-10-15 14:46:50 -07:00
Kartik K. Agaram 881a70e4f5 Merge text.love 2023-10-15 14:46:24 -07:00
Kartik K. Agaram 80ba5851e7 Merge lines.love 2023-10-15 14:42:28 -07:00
Kartik K. Agaram ea4a8379fe rfind bugfix: handle empty pattern like string.find 2023-10-15 14:21:41 -07:00
Kartik K. Agaram 6b723363b8 add some tests for rfind 2023-10-15 14:20:55 -07:00
Kartik K. Agaram a4f6165ee7 Merge text0 2023-10-09 21:18:58 -07:00
Kartik K. Agaram d5b23f1a2e merge bugfix 2023-10-09 21:17:15 -07:00
Kartik K. Agaram 8d50a56eb7 Merge text0 2023-10-09 21:15:21 -07:00
Kartik K. Agaram 3c92631bdf Merge text.love 2023-10-09 21:13:28 -07:00
Kartik K. Agaram b84cbf6d21 Merge lines.love 2023-10-09 20:55:24 -07:00
Kartik K. Agaram 69d86cae5b fix all tests in LÖVE v12
This is all quite hacky. Many of my tests are unfortunately brittle to
changes in text rendering. Fortunately there's only one test that
currently requires a hacky special case (and a second test I tweaked
slightly to be more robust).

I can't think of a better approach. It doesn't help to standardize the
font, because version changes still come with changes to text-shaping
algorithms even if the font itself is unchanged. I could base all my
assertions on the widths of individual characters, but that would make
the tests much less readable and not express intent as clearly. So here
we are, with hopefully just a few hacky special cases (there might be a
few more as LÖVE v12 advances towards publication, and in further
versions).
2023-10-09 20:25:08 -07:00
Kartik K. Agaram 6e391d7875 start supporting LÖVE v12
To do this I need some support for multiple versions. And I need an
'error' mode to go with existing 'run' and 'source' modes
(`Current_app`). Most errors will automatically transition to 'source'
editor mode, but some errors aren't really actionable in the editor. For
those we'll use 'error' mode.

The app doesn't yet work with LÖVE v12. There are some unit tests failing
because of differences in font rendering.
2023-10-09 20:05:19 -07:00
Kartik K. Agaram 6aae154734 merge bugfix 2023-09-20 16:40:20 -07:00
Kartik K. Agaram 4e7538d05e Merge text0 2023-09-20 14:52:31 -07:00
Kartik K. Agaram 3aaa267468 Merge text.love 2023-09-20 14:49:18 -07:00
Kartik K. Agaram 3aec915559 Merge lines.love 2023-09-20 14:32:01 -07:00
Kartik K. Agaram bd6f7d48e7 bugfix: clear selection when clicking above or below lines
Matt Wynne pointed out that snap.love would crash when a node went off
screen. While debugging it I noticed that selection1 was being set when
it shouldn't be.

Turns out I introduced a bug when I fixed the inscript bug back in June
(commit 9656e13774). One invariant I want to preserve is: selection1
should be unset after a mouse click (press and release without
intervening drag). This invariant was violated in my bugfix back in
June. I was concerned only with selection back then, and I didn't
realize I was breaking the mouse click case (in a fairly subtle way; you
can have selection set, and when it's set identically to the cursor
everything looks the same).

I think there might still be an issue in snap.love after this fix. I
noticed screen_bottom1.pos was nil, and as far as I recall that should
never happen.
2023-09-20 13:39:29 -07:00
Kartik K. Agaram d6d2ff365d Merge text0 2023-09-17 09:31:19 -07:00
Kartik K. Agaram a41e5151e9 Merge text.love 2023-09-17 09:29:59 -07:00
Kartik K. Agaram 5c5a8a88ab Merge lines.love 2023-09-17 09:24:52 -07:00