    void paintGL() override;
    void initializeGL() override;
    void resizeGL(int w, int h) override { updateFrameMat(); }
    void showEvent(QShowEvent *event) override;
    void hideEvent(QHideEvent *event) override;
    void mouseReleaseEvent(QMouseEvent *event) override { emit clicked(); }
    virtual void updateFrameMat();
    void updateCalibration(const mat3 &calib);
    void vipcThread();
    void clearFrames();
 
</s> remove   updateFrameMat();
 </s> add  </s> remove 
  updateFrameMat();
 </s> add  </s> remove           qDebug() << "Skipped frame" << frames.front().first;
 </s> add  </s> remove static int get_path_length_idx(const cereal::ModelDataV2::XYZTData::Reader &line, const float path_height) {
 </s> add int get_path_length_idx(const cereal::ModelDataV2::XYZTData::Reader &line, const float path_height) {
    void paintGL() override;
    void initializeGL() override;
    void resizeGL(int w, int h) override { updateFrameMat(); }
    void showEvent(QShowEvent *event) override;

    void mouseReleaseEvent(QMouseEvent *event) override { emit clicked(); }
    virtual void updateFrameMat();
    void updateCalibration(const mat3 &calib);
    void vipcThread();
    void clearFrames();
keep keep keep keep replace keep keep keep keep keep
 UI: draw onroad objects on right frame (#26306)

* update before draw

* fix a lot of janky

* fix more flicker

* cleanup

* fix flicker when opening settings

* simplify 
selfdrive/ui/qt/widgets/cameraview.h