timetracker

Commits at 5cf2699daea0e932dd3d595512c0d1b655de95a9

  1. 5cf2699d cli: Trim space from stdin (start / stop) Running "timetracker status -c title | timetracker start" starts a timer with the latest timer's title and trailing newline character, due to how stdin (shell?) works. Shota FUJI authored at Shota FUJI comitted at
  2. 3b406c68 cli: Rename command Shota FUJI authored at Shota FUJI comitted at
  3. 8fbf5f0d cli: Don't put running timers on top of "list" It's difficult to use, and unintuitive. Now the list is sorted by start datetime in ascending order. Shota FUJI authored at Shota FUJI comitted at
  4. 25513247 cli: Fix "status" displays deleted entry Shota FUJI authored at Shota FUJI comitted at
  5. 3ddab495 cli: Fix loading from non-existent path That env var is a space separated list of paths. Shota FUJI authored at Shota FUJI comitted at
  6. 2762bc05 cli: Add CLI There is zero TUI libraries for Zig that is usable. Majority of ones I found online are vibecoded non-working fakers. CLI should be okay for my usage, as I don't record micro tasks nowadays. The reason I choose Zig is simplicity. As there is virtually no hidden stuffs, I can "feel" the raw speed of event processing everytime interacting with the CLI. If this minimal implementation got slowed down, future implementations in different platform such as GC-ed one would be much slower thus I know the fundamental data / file design needs redesign. Shota FUJI authored at Shota FUJI comitted at
  7. 5e4bac21 gtk: Move the directory under apps/ Tried to add `tui` app at root, but felt unorganized. Shota FUJI authored at Shota FUJI comitted at
  8. a53b55f3 Upgrade to Zig v0.16 Shota FUJI authored at Shota FUJI comitted at
  9. abfd123e nix: Update Flake input (nixpkgs) Shota FUJI authored at Shota FUJI comitted at
  10. fdb971c8 gtk: Add desktop entry Shota FUJI authored at Shota FUJI comitted at
  11. 8ba72d01 Use "nix fmt" as formatter command To get rid of "nix development .#fhs-fish". It's also simple and easier to migrate to other formatter frontend. Shota FUJI authored at Shota FUJI comitted at
  12. 54722fde Simple calendar view Shota FUJI authored at Shota FUJI comitted at
  13. 56257cdc Setup FHS fish devshell for NixOS dprint-plugin-exec cannot work non-FHS environment. https://github.com/dprint/dprint-plugin-exec/issues/38 https://github.com/dprint/dprint-plugin-exec/issues/42 Shota FUJI authored at Shota FUJI comitted at
  14. a062860c Move gtk app into gtk/ directory To introduce FlatBuffer scheme files and web app. Shota FUJI authored at Shota FUJI comitted at
  15. 0c05856f Add edit dialog to active timers Shota FUJI authored at Shota FUJI comitted at
  16. bfc041e1 Move to active timer tab after starting stopped timer Without this, it's difficult to know what happened. Consequence of pressing "Start" button was unclear. Shota FUJI authored at Shota FUJI comitted at
  17. dc83b206 Add edit dialog to stopped timers For now, only the title field can be updated. Shota FUJI authored at Shota FUJI comitted at
  18. a700127a Fix directory/file creation log appears when target already exists Shota FUJI authored at Shota FUJI comitted at
  19. 62807afb Explictly call "log()" function instead of shortcuts These shortcut functions ("debug", "info", "warn", "critical") are simply bad. They can't be filtered and looks ugly due to the log source (identifier?) missing from output. I used those because many samples and real world code use those simple functions. I don't get it. Shota FUJI authored at Shota FUJI comitted at
  20. 14e93648 Log restoration time at debug level As this GTK4 app is benchmark/PoC, these two information is the most important. Shota FUJI authored at Shota FUJI comitted at
  21. 798ace2d Fix active timers do not show up Why is GObject binding this garbage? "SYNC_CREATE" flag is useless and there are no warnings or documentations. Shota FUJI authored at Shota FUJI comitted at
  22. 4efbb676 Reverse sort order of history items I'm not sure this is the right place to change. But none of `GtkListView`, `GListModel`, `GListStore`, `GtkSelectionModel` and `GtkSingleSelection` provides sorting / ordering methods. Shota FUJI authored at Shota FUJI comitted at
  23. 625adf1e Display history nicely Shota FUJI authored at Shota FUJI comitted at
  24. 8facf3d9 Display placeholder text on timer title input Shota FUJI authored at Shota FUJI comitted at
  25. 0bbc2552 Fix long timer name overflows Shota FUJI authored at Shota FUJI comitted at
  26. 2fc05f9e Save and Restore application data to / from file system To test how storing events in event sourcing system, as a linked list in file system. Although hashing is absent, testing this in real world environment with actual data would be useful. Shota FUJI authored at Shota FUJI comitted at
  27. b7fa8473 Make timer list scrollable (active & history) Shota FUJI authored at Shota FUJI comitted at
  28. a98bdd8d nix: Fix building default package fails Shota FUJI authored at Shota FUJI comitted at
  29. d71205b6 Remove unnecessary widget update method call I don't know why this works and why ActiveTimersView.vala#L34 does not work. Shota FUJI authored at Shota FUJI comitted at
  30. 98a3162c Use add/remove_css_class method from Gtk.Widget This is safer and easier to maintain. Shota FUJI authored at Shota FUJI comitted at