diff options
| author | Matthias Melcher <fltk@matthiasm.com> | 2006-04-28 02:57:15 +0000 |
|---|---|---|
| committer | Matthias Melcher <fltk@matthiasm.com> | 2006-04-28 02:57:15 +0000 |
| commit | 37e05f9df234bb3af3096a15df7d19ac194f8fd0 (patch) | |
| tree | 310c49b1da6e33447b1578037eb7730363764719 | |
| parent | 4e038ef82b626b47adf9e28531235cdca9066be7 (diff) | |
Fixed maximizing in OS X (STR #1221)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5041 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | CHANGES | 1 | ||||
| -rw-r--r-- | src/Fl_Text_Display.cxx | 4 | ||||
| -rw-r--r-- | src/Fl_mac.cxx | 7 |
3 files changed, 9 insertions, 3 deletions
@@ -1,5 +1,6 @@ CHANGES IN FLTK 1.1.8 + - Fixed maximizing in OS X (STR #1221) - Fixed 'make distclean' to remove binaries inside MacOS app packages (STR #1169) - Fluid Code Viewer is now truly a viewer, not a text diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx index 74e7aebc4..a0c8a5e05 100644 --- a/src/Fl_Text_Display.cxx +++ b/src/Fl_Text_Display.cxx @@ -659,10 +659,10 @@ void Fl_Text_Display::wrap_mode(int wrap, int wrapMargin) { mContinuousWrap = wrap; if (buffer()) { - /* wrapping can change change the total number of lines, re-count */ + /* wrapping can change the total number of lines, re-count */ mNBufferLines = count_lines(0, buffer()->length(), true); - /* changing wrap margins wrap or changing from wrapped mode to non-wrapped + /* changing wrap margins or changing from wrapped mode to non-wrapped can leave the character at the top no longer at a line start, and/or change the line number */ mFirstChar = line_start(mFirstChar); diff --git a/src/Fl_mac.cxx b/src/Fl_mac.cxx index 64c27925f..f29a2cda8 100644 --- a/src/Fl_mac.cxx +++ b/src/Fl_mac.cxx @@ -1890,6 +1890,7 @@ void Fl_X::make(Fl_Window* w) Fl_Tooltip::enter(0); } + if (w->size_range_set) w->size_range_(); ShowWindow(x->xid); Rect rect; @@ -1909,10 +1910,14 @@ void Fl_X::make(Fl_Window* w) /** - * this is a leftover from X Windows + * Tell the OS what window sizes we want to allow */ void Fl_Window::size_range_() { size_range_set = 1; + HISize minSize = { minw, minh }; + HISize maxSize = { maxw?maxw:32000, maxh?maxh:32000 }; + if (i && i->xid) + SetWindowResizeLimits(i->xid, &minSize, &maxSize); } |
