Move doc entry to match menu and refactor zoom function.
A followup patch will include a blurb.
menu. For more, see
:ref:`Setting preferences <preferences>` under Help and preferences.
-Zoom/Restore Height
- Toggles the window between normal size and maximum height. The initial size
- defaults to 40 lines by 80 chars unless changed on the General tab of the
- Configure IDLE dialog.
-
Show/Hide Code Context (Editor Window only)
Open a pane at the top of the edit window which shows the block context
of the code which has scrolled above the top of the window. See
:ref:`Code Context <code-context>` in the Editing and Navigation section below.
+Zoom/Restore Height
+ Toggles the window between normal size and maximum height. The initial size
+ defaults to 40 lines by 80 chars unless changed on the General tab of the
+ Configure IDLE dialog.
+
Window menu (Shell and Editor)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
configuration dialog by selecting Preferences in the application
menu. For more, see
<a class="reference internal" href="#preferences"><span class="std std-ref">Setting preferences</span></a> under Help and preferences.</dd>
-<dt>Zoom/Restore Height</dt>
-<dd>Toggles the window between normal size and maximum height. The initial size
-defaults to 40 lines by 80 chars unless changed on the General tab of the
-Configure IDLE dialog.</dd>
<dt>Show/Hide Code Context (Editor Window only)</dt>
<dd>Open a pane at the top of the edit window which shows the block context
of the code which has scrolled above the top of the window. See
<a class="reference internal" href="#code-context"><span class="std std-ref">Code Context</span></a> in the Editing and Navigation section below.</dd>
+<dt>Zoom/Restore Height</dt>
+<dd>Toggles the window between normal size and maximum height. The initial size
+defaults to 40 lines by 80 chars unless changed on the General tab of the
+Configure IDLE dialog.</dd>
</dl>
</div>
<div class="section" id="window-menu-shell-and-editor">
<br />
<br />
- Last updated on May 19, 2019.
+ Last updated on May 25, 2019.
<a href="https://docs.python.org/3/bugs.html">Found a bug</a>?
<br />
return
width, height, x, y = map(int, m.groups())
newheight = top.winfo_screenheight()
- if sys.platform == 'win32':
- newy = 0
- newheight = newheight - 72
-
- elif macosx.isAquaTk():
- # The '88' below is a magic number that avoids placing the bottom
- # of the window below the panel on my machine. I don't know how
- # to calculate the correct value for this with tkinter.
- newy = 22
- newheight = newheight - newy - 88
-
- else:
- #newy = 24
- newy = 0
- #newheight = newheight - 96
- newheight = newheight - 88
- if height >= newheight:
- newgeom = ""
- else:
- newgeom = "%dx%d+%d+%d" % (width, newheight, x, newy)
+
+ # The constants below for Windows and Mac Aqua are visually determined
+ # to avoid taskbar or menubar and app icons.
+ newy, bot_y = ((0, 72) if sys.platform == 'win32' else
+ (22, 88) if macosx.isAquaTk() else
+ (0, 88) ) # Guess for anything else.
+ newheight = newheight - newy - bot_y
+ newgeom = '' if height >= newheight else f"{width}x{newheight}+{x}+{newy}"
top.wm_geometry(newgeom)
return newgeom != ""