This might be all it takes to prevent the desync. needs local/remote testing. Also toggle 2nd barrel state on 0 movement
#include <QLabel>
#include <QRect>
#include <QList>
#include <QMouseEvent>
class PixLabel : public QLabel
{
Q_OBJECT
public:
PixLabel();
QList<QRect> rects;
public slots:
void AddRect();
private:
void paintEvent(QPaintEvent * event);
void mousePressEvent(QMouseEvent * e);
};