Title: Tk window not going full screen on 90° rotated screen on mac
Type: enhancement Stage:
Components: macOS, Tkinter Versions: Python 3.10, Python 3.9, Python 3.8
Status: pending Resolution: third party
Dependencies: Superseder:
Assigned To: Nosy List: Tim Z, epaine, ned.deily, ronaldoussoren, terry.reedy
Priority: normal Keywords:

Created on 2020-07-20 15:38 by Tim Z, last changed 2020-12-15 17:05 by serhiy.storchaka.

Messages (11)
msg374014 - (view) Author: Tim Z (Tim Z) Date: 2020-07-20 15:38
It refuses to go full screen when I rotate screen 90° on mac
msg374041 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2020-07-21 00:24
On Windows, right clicking on the desktop produces a context menu with Display Settings.  The dialog has an Orientation pulldown menu with the 4 choices.  Without actually rotating my screen, I clicked Portrait and managed to start IDLE and click the full-screen box.  It worked.

I could not find a similar option on my Macbook.  Since the screen is attached to the keyboard, it would be pretty useless.

IDLE has some control over whether the full screen button appears on the window title bar, but has nothing to do with what happens when you click it.  So this is almost certainly a python-on-macOS installation issue or more likely a tck/tk-on-macOS issue.  (One could eliminate IDLE for sure with a minimal tkinter program creating an empty window: "import tkinter; tkinter.Tk()".  If that worked, as a Text widget.

Kevin, is not maximizing in portrait mode a known issue with tk on macOS?
msg374059 - (view) Author: Tim Z (Tim Z) Date: 2020-07-21 10:15
I have 2nd screen that rotate to portrait. Is there a way to launch "import tkinter; tkinter.Tk()" at idle start? Or I better wait the next update?
It's not related but...
  ...why idle3.8 don't have cut/copy/paste on right click? (I mean the paste is broken when you paste-replace selected text). What's up with this one ?
Is there a shortage of volunteers ? Or it's all macOS fault?
msg374061 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2020-07-21 10:37
I meant to run 'import tkinter; tkinter.Tk()' directly in python, without IDLE involved, in your portrait window.  Do that by running terminal in the portrait window.  Then try to maximize.

Yes we need more volunteers, but #38946 is an issue between macOS Catalina and tk.
msg374064 - (view) Author: Tim Z (Tim Z) Date: 2020-07-21 11:22
It works even after restart. I thought I had to run it after each restart I did it in idle only once.
So no need to do it again in python
msg374236 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2020-07-25 04:40
What is 'it' in 'it works even after restart'?
msg374255 - (view) Author: Tim Z (Tim Z) Date: 2020-07-25 12:21
idle shell window
msg374273 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2020-07-25 17:21
I can somewhat reproduce the problem with both IDLE and tkinter.Tk() in 3.9b3 and an external monitor.

What I did:
- Start IDLE (or a shell running tkinter.Tk()
- Maximize window without changing monitor settings: OK
- Revert to regular window
- Rotate monitor 90 degrees in the Display settings (monitor itself not rotated)
- Maximize window again and revert back to regular size
- Revert changes to monitor settings

When I maximise the window with a rotated display the window grows to cover most of the display, but not all of it: There is a blank area between the menu bar and the top of the window. The height of that area is about that of the titlebar of the window. 

The window grows to the right size if I first rotate the screen and then start tkinter.Tk(). But then window won't go full-size when the screen is rotated back, some space is left between the righthand side of the window and the edge of the screen (again about the same amount of pixels as the height of the title bar).

Issues like this tend to be problems with the macOS port of Tk itself, I expect that to be the case in this instance as well. 

- Python 3.9b3 ( installer)
- macOS 10.15.6
msg374293 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2020-07-25 22:21
The way to tell if _tkinter is involved or if this is purely tcl/tk issue would be for someone open a window directly with tcl/tk commands using either wish or maybe tkinter.tcl.  I don't know how.  I think that _tkinter involvement is maximize handling is sufficiently unlikely that I would close this as 3rd party.
msg374368 - (view) Author: E. Paine (epaine) * Date: 2020-07-27 09:01
I am unfortunately unable to reproduce the issue (with the method provided by Ronald), but the way to create a blank window (equivalent to `import tkinter; tkinter.Tk()`) is simply to run `wish` in a terminal without giving it any commands (using `exit` to escape the shell after the test).
msg378987 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2020-10-19 18:54
The installers don't include wish, which means I cannot attempt to reproduce the issue without using tkinter.

I agree that this likely is an issue with Tk itself.  Maybe keep the issue open for a bit longer to check if the upcoming Tk 8.6.11 release fixes this issue.
Date User Action Args
2020-12-15 17:05:08serhiy.storchakasetstatus: open -> pending
resolution: third party
2020-10-19 18:54:44ronaldoussorensetmessages: + msg378987
versions: + Python 3.9, Python 3.10
2020-07-27 09:01:59epainesetnosy: + epaine
messages: + msg374368
2020-07-27 00:58:48terry.reedysetassignee: terry.reedy ->
2020-07-26 20:14:51terry.reedysetassignee: terry.reedy
components: + Tkinter
title: idle not going full screen when I rotate screen 90° on mac -> Tk window not going full screen on 90° rotated screen on mac
2020-07-25 22:21:07terry.reedysetassignee: terry.reedy -> (no value)
messages: + msg374293
2020-07-25 17:21:42ronaldoussorensetmessages: + msg374273
2020-07-25 12:21:35Tim Zsetmessages: + msg374255
2020-07-25 04:40:37terry.reedysetmessages: + msg374236
2020-07-21 11:22:13Tim Zsetmessages: + msg374064
2020-07-21 10:37:12terry.reedysetmessages: + msg374061
2020-07-21 10:15:48Tim Zsetmessages: + msg374059
2020-07-21 00:24:16terry.reedysetmessages: + msg374041
components: - IDLE
2020-07-20 15:46:27ned.deilysetassignee: terry.reedy

components: + IDLE
nosy: + terry.reedy
2020-07-20 15:38:15Tim Zcreate