Skip to content

Commit

Permalink
gh-88516: show file proxy icon in IDLE editor windows on macOS (#112894)
Browse files Browse the repository at this point in the history
The platform standard on macOS is to show a proxy icon for open
files in the titlebar of Windows. Make sure IDLE matches this
behaviour.

Don't use both the long and short names in the window title.
The behaviour of other editors (such as Text Editor) is to show
only the short name with the proxy icon.

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
  • Loading branch information
ronaldoussoren and terryjreedy authored Feb 23, 2024
1 parent 4ee6bdf commit b481018
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
11 changes: 10 additions & 1 deletion Lib/idlelib/editor.py
Original file line number Diff line number Diff line change
Expand Up @@ -1044,7 +1044,9 @@ def open_recent_file(fn_closure=file_name):
def saved_change_hook(self):
short = self.short_title()
long = self.long_title()
if short and long:
if short and long and not macosx.isCocoaTk():
# Don't use both values on macOS because
# that doesn't match platform conventions.
title = short + " - " + long + _py_version
elif short:
title = short
Expand All @@ -1059,6 +1061,13 @@ def saved_change_hook(self):
self.top.wm_title(title)
self.top.wm_iconname(icon)

if macosx.isCocoaTk():
# Add a proxy icon to the window title
self.top.wm_attributes("-titlepath", long)

# Maintain the modification status for the window
self.top.wm_attributes("-modified", not self.get_saved())

def get_saved(self):
return self.undo.get_saved()

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
On macOS show a proxy icon in the title bar of editor windows to match
platform behaviour.

0 comments on commit b481018

Please sign in to comment.