Fixed XExpose event for soome WM's (STR #2039)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7880 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
430789d8be
commit
57083d0222
@ -1409,13 +1409,14 @@ int fl_handle(const XEvent& thisevent)
|
|||||||
void Fl_Window::resize(int X,int Y,int W,int H) {
|
void Fl_Window::resize(int X,int Y,int W,int H) {
|
||||||
int is_a_move = (X != x() || Y != y());
|
int is_a_move = (X != x() || Y != y());
|
||||||
int is_a_resize = (W != w() || H != h());
|
int is_a_resize = (W != w() || H != h());
|
||||||
|
int is_a_enlarge = (W > w() || H > h());
|
||||||
int resize_from_program = (this != resize_bug_fix);
|
int resize_from_program = (this != resize_bug_fix);
|
||||||
if (!resize_from_program) resize_bug_fix = 0;
|
if (!resize_from_program) resize_bug_fix = 0;
|
||||||
if (is_a_move && resize_from_program) set_flag(FORCE_POSITION);
|
if (is_a_move && resize_from_program) set_flag(FORCE_POSITION);
|
||||||
else if (!is_a_resize && !is_a_move) return;
|
else if (!is_a_resize && !is_a_move) return;
|
||||||
if (is_a_resize) {
|
if (is_a_resize) {
|
||||||
Fl_Group::resize(X,Y,W,H);
|
Fl_Group::resize(X,Y,W,H);
|
||||||
if (shown()) {redraw(); i->wait_for_expose = 1;}
|
if (shown()) {redraw(); if(is_a_enlarge) i->wait_for_expose = 1;}
|
||||||
} else {
|
} else {
|
||||||
x(X); y(Y);
|
x(X); y(Y);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user