Commit Graph

809 Commits

Author SHA1 Message Date
b291959a97 refactor(tracker/gioui): rewrote Editor to link to String.Value() 2025-06-20 18:50:44 +03:00
840fe3ef0e refactor(tracker): remove SetCursorFloat method from TableData 2025-06-20 15:17:21 +03:00
430b01d143 refactor(tracker): remove unused code and improve style 2025-06-20 15:05:22 +03:00
28a0006b6a docs(tracker): improve comments and formatting 2025-06-20 14:57:12 +03:00
8eb5f17f73 style(tracker): oneline functions and remove spurious comments 2025-06-20 14:52:46 +03:00
f47bee37b0 style(tracker): clean up Alerts Push and Pop 2025-06-20 14:49:07 +03:00
4f2c73d0db refactor(tracker): Player sends PlayerStatus to the Model 2025-06-19 11:37:11 +03:00
c77d541dc6 docs: update README.md; claim that native synth is faster was false 2025-06-17 18:22:14 +03:00
340620ed49 feat(tracker): show CPU load percentage in the song panel 2025-06-17 17:59:54 +03:00
1a13fadd75 docs: add link to Discussions to the README.md 2025-06-17 14:12:23 +03:00
b6e8ab5c25 style(examples/code/C): rename .unix. examples to .linux.
Closes #191
2025-06-16 18:55:01 +03:00
c6b70560f6 fix(tracker): update derived data after undo/redo 2025-06-16 18:44:33 +03:00
1eea263dc9 fix(tracker/gioui): show muted instruments in different style 2025-06-16 18:35:06 +03:00
c023dc08b8 fix(tracker/gioui): BPM tooltip showed "Song length", not BPM 2025-06-11 19:43:05 +03:00
0e32608872 refactor(tracker): remove unnecessary Enabled function 2025-06-11 19:41:58 +03:00
283fbc1171 feat(tracker): rework the MIDI input and note event handling 2025-06-11 19:14:11 +03:00
7ef868a434 refactor(tracker): rewrite params to avoid heap allocations 2025-06-11 19:14:11 +03:00
4f779edb88 perf(tracker/gioui): avoid heap escapes in the menubar 2025-06-11 19:14:11 +03:00
d20a23d57b refactor(tracker/gioui): move element etc. functions away from style
Now the element / fg / bg functions are passed to the actual Layout
function, not first put to the style. This avoids moving of the
element function to heap.
2025-06-11 19:14:11 +03:00
de2e64533d refactor(tracker): refactor StringData to StringValue 2025-06-11 19:14:11 +03:00
74f37318d6 refactor(tracker): refactor IntData to IntValue, following Bool example 2025-06-11 19:14:11 +03:00
fb3a0da3ed refactor(tracker): make Bool have separate BoolValue and Enabler 2025-06-11 19:14:11 +03:00
036cb1f34d refactor(tracker): Make Action have separate Doer and Enabler 2025-06-11 19:14:11 +03:00
d6badb97be feat(examples): added playback timestamp extraction to ALSA example. (#190) 2025-06-04 16:44:31 +03:00
d342c9961d build: update gioui to latest version for performance optimization 2025-05-27 12:37:22 +03:00
32f1e1baea refactor(tracker/gioui): unify default & user config yaml handling 2025-05-23 23:35:51 +03:00
5b260d19f5 refactor(tracker/gioui): rename keyevent.go to keybindings.go
This way all the .go files that embed .yml files have matching
file names.
2025-05-23 21:46:34 +03:00
ddbaf6a4bb refactor(tracker): use UnmarshalStrict when decoding embedded yamls
Since we have 100% control over what data gets embedded, there is no
reason to embed anything that doesn't pass the strict yaml parsing
and it's better we throw a panic right away so it's easy to catch
this during development.
2025-05-23 21:44:23 +03:00
27bf8220c0 ci: use go version < 1.23.9 due to duplicate dlopen link error on mac
https://github.com/golang/go/issues/73617
2025-05-21 15:56:43 +03:00
448bc9f236 fix(tracker): OOB checks used index > len, but should've used >= 2025-05-20 19:05:17 +03:00
afb1fee4ed feat(tracker/gioui): add theme.yml which contains all styling 2025-05-20 19:02:16 +03:00
8245fbda24 feat(track/gioui): ctrl + scrollwheel adjusts global GUI zoom
Closes #153
2025-05-01 19:16:39 +03:00
0f42a993dc feat(tracker/gioui): oscilloscope allows y-scaling and shows limits
Closes #61
2025-05-01 12:05:32 +03:00
554a840982 refactor(tracker): new closing mechanism logic 2025-05-01 10:20:41 +03:00
9f89c37956 refactor(tracker): rename trySend to TrySend to make it public 2025-04-30 22:00:34 +03:00
0199658025 style(tracker): use for range loops everywhere in detector.go 2025-04-30 16:24:48 +03:00
afc6b1f4a9 build: update gioui to v0.8.0 2025-04-30 16:22:13 +03:00
3623bdf5b2 refactor(tracker): bake 1 kHz gain offset into filter coeffs 2025-04-29 20:45:14 +03:00
fe9daf7988 fix(tracker): loudness A- and C-weighting did not have proper scale 2025-04-29 15:12:57 +03:00
bf0d697b80 fix(tracker): reset also biquad filter states to avoid endless nans 2025-04-28 15:23:00 +03:00
f72f29188b feat(vm/compiler): increase native synth delaylines to 128
Closes #155
2025-04-27 21:47:27 +03:00
5fd78d8362 feat(tracker): buttons for loudness weighting and peak oversampling
Closes #186
2025-04-27 21:30:10 +03:00
805b98524c fix(tracker/gioui): use Clickables instead of widget.Clickables 2025-04-27 20:24:40 +03:00
54176cc2b3 refactor(tracker/gioui): separate MenuBar from SongPanel 2025-04-27 20:16:35 +03:00
845f0119c8 fix(tracker): peak amplitude dBs should be 20*log10, not 10*log10 2025-04-27 19:55:25 +03:00
5a3c859a51 fix(tracker): also peak detector windows were in wrong order 2025-04-27 19:29:23 +03:00
5c0b86a0f0 fix(tracker): the peak detector result was in wrong layout 2025-04-27 14:13:31 +03:00
e0392323c0 feat(tracker/gioui): add expander panel showing peaks 2025-04-27 14:13:31 +03:00
bb605ffa0b feat(tracker/gioui): add expanders into song panel 2025-04-27 13:03:34 +03:00
40be82de46 feat(tracker/gioui): refactor & rework playbar with the play buttons 2025-04-27 11:34:00 +03:00