Fix: Query windows may be partially drawn initially. (#9184)

Query window was not marked dirty after being moved on init. It was then marked dirty once the white border flash completed.

(cherry picked from commit 08781d96ed)
pull/259/head
PeterN 3 years ago committed by Jonathan G Rennison
parent b36bfc7ab0
commit 0d1c848f78

@ -1243,12 +1243,9 @@ struct QueryWindow : public Window {
this->caption = caption;
this->message = message;
this->proc = callback;
this->parent = parent;
this->InitNested(WN_CONFIRM_POPUP_QUERY);
this->parent = parent;
this->left = parent->left + (parent->width / 2) - (this->width / 2);
this->top = parent->top + (parent->height / 2) - (this->height / 2);
}
~QueryWindow()
@ -1256,6 +1253,14 @@ struct QueryWindow : public Window {
if (this->proc != nullptr) this->proc(this->parent, false);
}
void FindWindowPlacementAndResize(int def_width, int def_height) override
{
/* Position query window over the calling window, ensuring it's within screen bounds. */
this->left = Clamp(parent->left + (parent->width / 2) - (this->width / 2), 0, _screen.width - this->width);
this->top = Clamp(parent->top + (parent->height / 2) - (this->height / 2), 0, _screen.height - this->height);
this->SetDirty();
}
void SetStringParameters(int widget) const override
{
switch (widget) {

Loading…
Cancel
Save