| [ Return to Bugs & Features | Roadmap 1.1 | SVN ⇄ GIT ]
STR #1748
Application: | FLTK Library |
Status: | 1 - Closed w/Resolution |
Priority: | 4 - High, e.g. key functionality not working |
Scope: | 2 - Specific to an operating system |
Subsystem: | WIN32 |
Summary: | hide window bug -> max out CPU |
Version: | 1.1.7 |
Created By: | danh |
Assigned To: | mike |
Fix Version: | 1.1-current (SVN: v5984) |
Update Notification: | |
Trouble Report Files:
No files
Trouble Report Comments:
|
#1 | danh 08:35 Jul 23, 2007 |
| On windows XP, this program will take all the CPU. The problem seems to hinge on hiding a Fl_Group with a window inside. The 'wait_for_expose' parameter gets set on the indirectly hidden window, but it never gets reset. This can get triggered from a resize of the group that contains the window. I tried 1.1.7, and also fltk-1.1.x-r5917.
#include <FL/Fl.H> #include <FL/Fl_Window.H> #include <FL/Fl_Group.H>
int main(int argc, char **argv) { Fl_Window window(220,220,"Hello"); Fl_Group* grp = new Fl_Group(0, 0, 110, 220); Fl_Window testWindow(5,5,15,15); testWindow.color(FL_BLUE); testWindow.box(FL_DOWN_BOX); grp->end(); Fl_Group grp2(110, 0, 110, 220); grp2.color(FL_GREEN); grp2.box(FL_DOWN_BOX); grp2.end(); grp->color(FL_BLACK); grp->box(FL_DOWN_BOX); grp->end(); window.resizable(grp); window.end(); window.show(argc,argv); grp->hide(); return Fl::run(); } | |
|
#2 | mike 08:16 Nov 20, 2007 |
| Try changing line 1121 of Fl_win32.cxx to read:
if (visible_r()) {redraw(); i->wait_for_expose = 1;}
and let us know if that fixes the problem. | |
|
#3 | danh 08:30 Nov 20, 2007 |
| That fixed it! Thank you very much! | |
|
#4 | mike 09:01 Nov 20, 2007 |
| Fixed in Subversion repository. | |
[ Return to Bugs & Features ]
|
| |