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)
This commit is contained in:
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) {
|
||||
|
||||
Reference in New Issue
Block a user