-
Notifications
You must be signed in to change notification settings - Fork 237
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: state refactor #571
Commits on Aug 23, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f73ea0d - Browse repository at this point
Copy the full SHA f73ea0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5749c32 - Browse repository at this point
Copy the full SHA 5749c32View commit details -
Configuration menu - View commit details
-
Copy full SHA for fceae8d - Browse repository at this point
Copy the full SHA fceae8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f0eb7b - Browse repository at this point
Copy the full SHA 4f0eb7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for e657fec - Browse repository at this point
Copy the full SHA e657fecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 64c6d0c - Browse repository at this point
Copy the full SHA 64c6d0cView commit details
Commits on Aug 24, 2021
-
refactor: add glue to prep for the transition
Write some glue code to transition from the old code to the new one.
Configuration menu - View commit details
-
Copy full SHA for 88ebcab - Browse repository at this point
Copy the full SHA 88ebcabView commit details
Commits on Aug 25, 2021
-
refactor: more glue code to build layout
Even more glue code to help glue together our layout options to our new layout system! Note that this PR will most likely likely break the two options: - default_widget_type - default_widget_count and as such, they'll probably be deleted in a later commit. As for why, it's since they're kinda a pain to support and don't work well. Users can still enable default widget selection through the layout system (which will also see a revamp in the future).
Configuration menu - View commit details
-
Copy full SHA for b5e6dea - Browse repository at this point
Copy the full SHA b5e6deaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 189be96 - Browse repository at this point
Copy the full SHA 189be96View commit details -
refactor: rip out trait system for drawing widgets
This rips out this weird trait system I previously used for drawing widgets, where I implemented a trait onto the Painter struct that did the drawing. I have no idea what I was thinking back then.
Configuration menu - View commit details
-
Copy full SHA for dd7e183 - Browse repository at this point
Copy the full SHA dd7e183View commit details
Commits on Aug 28, 2021
-
refactor: start moving over drawing system
In particular, moving over table-style widgets
Configuration menu - View commit details
-
Copy full SHA for 0afc371 - Browse repository at this point
Copy the full SHA 0afc371View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b69e37 - Browse repository at this point
Copy the full SHA 6b69e37View commit details -
Configuration menu - View commit details
-
Copy full SHA for b72e76a - Browse repository at this point
Copy the full SHA b72e76aView commit details
Commits on Aug 29, 2021
-
refactor: port over graph widgets
Things working as of now: - Actually drawing - Interpolation - Styling
Configuration menu - View commit details
-
Copy full SHA for 2bff04d - Browse repository at this point
Copy the full SHA 2bff04dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 64d47d5 - Browse repository at this point
Copy the full SHA 64d47d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74293aa - Browse repository at this point
Copy the full SHA 74293aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ec203c - Browse repository at this point
Copy the full SHA 1ec203cView commit details -
refactor: change up event handling logistics
Slightly move around the ideas of EventResult, ReturnSignalResult, and how they all work. The gist of it is that we now have widgets returning EventResults (and renamed to WidgetEventResult), and the main app event handler returns ReturnSignalResult (now named EventResult). Also add a new signal to handle re-updating data inputs! This is needed for the process, and any sortable/configurable widget.
Configuration menu - View commit details
-
Copy full SHA for 48c572d - Browse repository at this point
Copy the full SHA 48c572dView commit details
Commits on Aug 30, 2021
-
bug: fix bug causing click bounds to fail
There were three bugs: 1. The click bounds calculation was incorrect. I did the silly mistake of checking for <= bounds for the bottom and right sections of a Rect when checking if the mouse intersected - this is WRONG. For example, let's say you want to calculate if an x value of 5 falls between something that starts at 0 and is 5 long. It shouldn't, right? Because it draws from 0 to 4? But if you just did <= Rect.right(), you would get a hit - because it just does (start + width), so you get 5, and 5 <= 5! So, easy fix, change all far bounds checks to <. 2. The second bug is a mistake where I accidentally did not include bounds sets for my memory and net widgets. Instead, they set their bounds to the underlying graph representation, which is WRONG, since that bound gets updated on draw, and gets set to a slightly smaller rect due to borders! 3. A slightly sneakier one. This broke my bounds checks for the CPU widget - and it would have broken my process widget too. The problem lies in the concept of widgets that handle multiple "sub"-blocks internally, and how I was doing click detection internally - I would check if the bounds of the internal Components were hit. Say, the CPU, I would check if the internal graph was hit, then if the internal table was hit. But wait! I said in point 2 that a graph gets its borders updated on draw to something slightly smaller, due to borders! And there's the problem - it affected tables too. I was setting the bounds of components to that of the *internal* representation - without borders - but my click detection *needed* borders included! Solution? Add another trait function to check bordered bounds, and make the default implementation just check the existing bounds. For cases like internal Components that may need it, I add a separate implementation. I also switched over all border bounds checks for Widgets to that, since it's a bit more consistent.
Configuration menu - View commit details
-
Copy full SHA for 3fa5060 - Browse repository at this point
Copy the full SHA 3fa5060View commit details
Commits on Sep 5, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 27736b7 - Browse repository at this point
Copy the full SHA 27736b7View commit details -
Configuration menu - View commit details
-
Copy full SHA for b1889b0 - Browse repository at this point
Copy the full SHA b1889b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 204b4dc - Browse repository at this point
Copy the full SHA 204b4dcView commit details -
refactor: move basic mode over
Because writing your own layout system and management is just *so much fun*. Totally. ------------------------------------------------------------------- Moves the basic mode system over to the new drawing/widget system. In the process, it has forced me to completely redo how we do layouts... again. This is because basic mode has widgets that control their own height - this means the height of the columns and rows that wrap it are also affected by the widget's height. The previous system, using a constraint tree and splitting draw Rects via tui-rs' built-in constraint solver, did not support this concept very well. It was not simple to propagate up the widths/heights towards parents while also using tui-rs' built-in constraint solver. In the end, it was easier to just rewrite it using another algorithm. We now follow a process very similar to Flutter's layout system. Relevant links to the Flutter docs are found in the code or below: - https://flutter.dev/docs/development/ui/layout/constraints - https://flutter.dev/docs/resources/inside-flutter#sublinear-layouts The gist of it, however, is that we now instead a few new options for any element in the layout tree. A node can either: - Grow to fill remaining space - Take up as much room as its children - Be a specific length Technically right now, it's not perfect, in that leaf nodes can be as large as their children (which makes no sense), though in that case it just treats it as an expand.
Configuration menu - View commit details
-
Copy full SHA for eddc9a1 - Browse repository at this point
Copy the full SHA eddc9a1View commit details -
Configuration menu - View commit details
-
Copy full SHA for fa00dec - Browse repository at this point
Copy the full SHA fa00decView commit details -
Configuration menu - View commit details
-
Copy full SHA for 18af6b0 - Browse repository at this point
Copy the full SHA 18af6b0View commit details
Commits on Sep 7, 2021
-
refactor: add back widget titles
Also has a few clippy fixes and bug fixes: - Fix redundant rerendering on scroll on time graphs. - Fix being off by one cell during rendering for no-battery situation on the battery widget. - Fix having empty columns for rtl column width calculations (as otherwise it goes to the wrong column). - Fix rendering issue on small windows with text tables. We also now ensure that the CPU legend has enough room to draw!
Configuration menu - View commit details
-
Copy full SHA for 9ef38cb - Browse repository at this point
Copy the full SHA 9ef38cbView commit details
Commits on Sep 8, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d8a6a23 - Browse repository at this point
Copy the full SHA d8a6a23View commit details -
Configuration menu - View commit details
-
Copy full SHA for 955840b - Browse repository at this point
Copy the full SHA 955840bView commit details
Commits on Sep 9, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 587987a - Browse repository at this point
Copy the full SHA 587987aView commit details
Commits on Sep 11, 2021
-
refactor: add general keybinds, fix buggy movement
Adds back some of the general program keybinds, and fixes both a bug causing widget movement via keybinds to be incorrect, and not correcting the last selected widget in the layout tree rows/cols after clicking/setting the default widget!
Configuration menu - View commit details
-
Copy full SHA for e7b9c72 - Browse repository at this point
Copy the full SHA e7b9c72View commit details
Commits on Sep 22, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 7ee85a8 - Browse repository at this point
Copy the full SHA 7ee85a8View commit details
Commits on Sep 25, 2021
-
Configuration menu - View commit details
-
Copy full SHA for abcca77 - Browse repository at this point
Copy the full SHA abcca77View commit details
Commits on Sep 26, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 35ec66e - Browse repository at this point
Copy the full SHA 35ec66eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c87974 - Browse repository at this point
Copy the full SHA 5c87974View commit details -
Configuration menu - View commit details
-
Copy full SHA for b6ca3e0 - Browse repository at this point
Copy the full SHA b6ca3e0View commit details -
Mostly previously re-added files during the merge conflict resolution, and a lot of unused code. Still more to delete after I finish rewriting the process kill dialog.
Configuration menu - View commit details
-
Copy full SHA for 9089231 - Browse repository at this point
Copy the full SHA 9089231View commit details
Commits on Oct 2, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f02daa0 - Browse repository at this point
Copy the full SHA f02daa0View commit details
Commits on Oct 31, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 5833cb8 - Browse repository at this point
Copy the full SHA 5833cb8View commit details
Commits on Nov 21, 2021
-
refactor: mostly add back tree mode for process
Mouse control on collapse is not working yet, need to do some work internally first.
Configuration menu - View commit details
-
Copy full SHA for cc66f1f - Browse repository at this point
Copy the full SHA cc66f1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 16babea - Browse repository at this point
Copy the full SHA 16babeaView commit details
Commits on Nov 24, 2021
-
Configuration menu - View commit details
-
Copy full SHA for e89d46e - Browse repository at this point
Copy the full SHA e89d46eView commit details
Commits on Nov 25, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 1593847 - Browse repository at this point
Copy the full SHA 1593847View commit details