QWidget::repaint() not working on ARM on program exit



  • Hello Qt-perts,

    I'd appreciate any suggestions on how to set a QStackedWidget view upon program exit on ARM? The code shown below works on x86 but not on ARM (using Qt 5.6 & linuxfb). No errors are generated but the repaint of the view widget does not have any effect and the last active view persists upon program exit. Any fixes and/or workarounds are appreciated.

    TIA,

    Eric Gilbertson
    Peloton Technology

    // Invoked in response to SIGINT.
    void DriverGui::AppShutdown() {
    // View persists after exiting so set this on the way out (works on x86 but not on ARM)
    ui_->view_stack->setCurrentIndex((int)TruckInfo::ViewEnum::VIEW_CONNECTING);
    ui_->view_stack->repaint();
    ui_->connecting_view->repaint();
    //ui_->view_stack->setVisible(false);
    //ui_->view_stack->repaint();
    //ui_->view_stack->setVisible(true);
    //ui_->view_stack->repaint();
    //qApp->processEvents();

    QThread::msleep(5000);
    exit(0);
    }


  • Lifetime Qt Champion

    Hi,

    Do you mean you would like to clear the content of your LinuxFB frame buffer on application exit ?



  • @SGaist Preferably I would like to put up a view that contains a logo image but failing that setting itl black would suffice. I didn't mention it in the post but I am looking for something that will also work with eglfs which I suspect rules out sending 0's to the frame buffer. What I really don't get is why using Widget::repaint() works in x86 and yet appears to be a nop in ARM


  • Lifetime Qt Champion

    What should happen to your device when your application exits ?


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.