Skip to content
Discussion options

You must be logged in to vote

Hi Steve,

Thanks for the report — this turned out to be a genuine bug in fpGUI, not a misunderstanding on your part. Your instinct was right: Label.Text := ... followed by fpgApplication.ProcessMessages should update the UI, and it wasn't.

What was going wrong

fpGUI has two message queues, and ProcessMessages was only checking one.

Setting Label.Text posts an internal FPGM_PAINT message onto fpGUI's own queue — it generates no X11 event. But ProcessMessages gated its whole body on MessagesPending, which on X11 is just XPending(display) > 0, i.e. native events only. With no X events pending the loop never ran, the internal queue was never drained, and the paint sat there until the app retu…

Replies: 1 comment 2 replies

Comment options

You must be logged in to vote
2 replies
@sfein1000
Comment options

@sfein1000
Comment options

Answer selected by graemeg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants