* qt ui boilerplate
* this kinda works
* cleanup
* render inside other widget
* cleanup
* more cleanup
* Not needed
* Handle click
* Draw at 20Hz
* create paint.hpp
* move stuff around
* update sidebar
* Draw vision
* this works again
* add clickable settings button
* Only collapse sidebar when started
* always use qt on linux
* fix width
* scrollable area
* talk to NetworkManager
* code to add a connection
* params toggles
* small cleanup
* add qt5 to dockerfile
* Qt on mac
* Add qt to release files
* fix macos build
* nore more ifdefs needed
* add icons
* make a bit nicer
* Hide scrollbar
Co-authored-by: Comma Device <device@comma.ai>
* remove read_model
* remove structs for c-capnp
* remove duplicate #define from modeld
* add function fill_path_points
* fix Indentation
* use MODEL_PATH_DISTANCE instead of 192
* fix type
use validLen
* rename left_path_points&right_path_points to xxx_lane_points
* wip, ready to test
* tweaks
* fix
* fix
* fix power monitoring
* fix param writing
* no forced charging on high voltage
* reset capacity on reboot
* don't shutdown unless started seen
* fix unused var warning
* fix linting errors
* time is always valid
* QCOM gate
* Local params
* decimate saving
* fix linting
* rename param
* Log car battery capacity
* fix put_nonblocking
* Added some unit tests
* Add test to docker test list
* fix precommit
* cleanup
* run tests in CI
* bump cereal
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* alert when update fails more than 10 times
* bring over offroad alert refactor from other branch
* and we have tests
* use it in snapshot
* bump apk
* don't show exceptions on release branches
* only write when changed
* why does delete use so much cpu
* clean that up
* little more
* Add preglobal Forester and Outback
* Tests and values cleanup
* Update units in carstate
* Remove ()
* Add OUTBACK_PREGLOBAL_2018 to non_tested_cars
* Add replay route for OUTBACK_PREGLOBAL_2018
* Car port Genesis G70
* Car port G70
* rebase
* update G70 car port
* Update README.md
* no space
* rebase mistake
* Update values.py
* Update values.py
* Update values.py
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>