Programmatic QGraphicsView scrolling not updating properly
===

I have a custom class derived from QGraphicsView that implements a slot call scrollHorizontal(int dx), inside the code is simply

    void CustomView::scrollHorizontal(int dx){
        scrollContentsBy(dx, 0);
    }

My problem is, scrolling like this works but doesn't update the scene properly, instead any pixels found on the edge of the view are repeated instead of having a fresh call to the item's paint() method.

I've attempted calling update() after, but nothing happens. I tried enabling scrolling by dragging and updates work fine! But I need it done programmatically, and since I have the scroll bars hidden things like horizontalScrollBar()->setValue() do not scroll the view.

I also tried   :
   
    scrollContentsBy(dx, 0);
    this->scene()->invalidate(sceneRect());
    this->update();