| [ Return to Bugs & Features | Roadmap 1.1 | SVN ⇄ GIT ]
STR #791
Application: | FLTK Library |
Status: | 1 - Closed w/Resolution |
Priority: | 2 - Low, e.g. a documentation error or undocumented side-effect |
Scope: | 3 - Applies to all machines and operating systems |
Subsystem: | FLUID |
Summary: | Fluid: Window resizing via property window |
Version: | 1.1-current |
Created By: | Portale |
Assigned To: | matt |
Fix Version: | 1.1-current |
Update Notification: | |
Trouble Report Files:
Trouble Report Comments:
|
#1 | Portale 06:22 Apr 08, 2005 |
| Resizing and positioning a window via the property window (GUI Tab) has a bug.
When dragging around with the mouse on the "Width:" input (in order to scroll the value), also the height is affected and vice versa. The same is for X and Y.
Entering numbers with the keyboard is not easy because after a keystroke the focus leaves the property window.
(I'm sure that this is known, but didn't find an STR# for it) | |
|
#2 | Portale 09:11 Apr 08, 2005 |
| addendum: I tested it on Windows XP and now also on OSX. It occurrs only on Windows XP. So it seems to be an OS system specific issue. | |
|
#3 | mike 14:51 Apr 10, 2005 |
|
| |
|
#4 | Portale 17:25 Apr 15, 2005 |
| A reason seems to be what Fl_X::fake_X_wm(..) returns to Fl_Window::resize(..) in Fl_win32.cxx, if fluid tells to resize the window. It returns the window border width and height (bx, by) of a fixed (not resizable) window. The system call is GetSystemMetrics(SM_CXFIXEDFRAME); and returns 3 pixels on my system.
In other cases GetSystemMetrics(SM_CYSIZEFRAME); is called in Fl_X::fake_X_wm(..) and the border size for resizable windows is returned.
The window that is displayed in fluids preview/editing mode is of the resizable type in MS Windows (even if "resizable" is not set in fluid). This is for sure in order to make the window resizable with the mouse. So the system call GetSystemMetrics(SM_CYSIZEFRAME); seems always to be the correct one in the fluid case. If returns 4 pixels on my system. And in fact using that call (by hacking Fl_X::fake_X_wm(..)), my positioning problem is gone!
Conclusion: It seems that Fl_X::fake_X_wm(..) must always call GetSystemMetrics(SM_CYSIZEFRAME); if fluid is calling it. | |
|
#5 | Portale 17:31 Apr 15, 2005 |
| If You cannot reproduce the bug on windows, try to increase the border width for resizable dialogs (not sure, how the dialog is called on a US system see http://www.fltk.org/strfiles/791/windows_dialog_settings.png). That made the bug #791 worse on my system. | |
|
#6 | matt 15:43 May 29, 2005 |
| Fixed in Subversion repository.
fake_x_wm would not return the correct window decoration size | |
[ Return to Bugs & Features ]
|
| |