# HG changeset patch # User wenzelm # Date 1609879595 -3600 # Node ID 7ef8d77ee7611af0111caad183bf9ca35d4bd4f2 # Parent 8d9fb810462b6419544682223c799605ec5a0f91 proper dock icon for macOS; diff -r 8d9fb810462b -r 7ef8d77ee761 lib/logo/isabelle_transparent-128.png Binary file lib/logo/isabelle_transparent-128.png has changed diff -r 8d9fb810462b -r 7ef8d77ee761 src/Pure/Admin/build_release.scala --- a/src/Pure/Admin/build_release.scala Tue Jan 05 20:53:57 2021 +0100 +++ b/src/Pure/Admin/build_release.scala Tue Jan 05 21:46:35 2021 +0100 @@ -305,8 +305,6 @@ CFBundleDevelopmentRegion English -CFBundleIconFile -isabelle.icns CFBundleIdentifier de.tum.in.isabelle.""" + isabelle_name + """ CFBundleDisplayName @@ -340,8 +338,6 @@ thy -CFBundleTypeIconFile -theory.icns CFBundleTypeName Isabelle theory file CFBundleTypeRole diff -r 8d9fb810462b -r 7ef8d77ee761 src/Pure/GUI/gui.scala --- a/src/Pure/GUI/gui.scala Tue Jan 05 20:53:57 2021 +0100 +++ b/src/Pure/GUI/gui.scala Tue Jan 05 21:46:35 2021 +0100 @@ -157,6 +157,21 @@ def isabelle_image(): Image = isabelle_icon().getImage + def isabelle_image_large(): Image = + Toolkit.getDefaultToolkit.getImage( + File.platform_path(Path.explode("~~/lib/logo/isabelle_transparent-128.png"))) + + def set_application_icon() + { + if (Platform.is_macos) { + val image = isabelle_image_large() + val app = + Class.forName("com.apple.eawt.Application") + .getDeclaredMethod("getApplication").invoke(null) + app.getClass.getDeclaredMethod("setDockIconImage", classOf[Image]).invoke(app, image) + } + } + /* location within multi-screen environment */ diff -r 8d9fb810462b -r 7ef8d77ee761 src/Tools/jEdit/src-base/plugin.scala --- a/src/Tools/jEdit/src-base/plugin.scala Tue Jan 05 20:53:57 2021 +0100 +++ b/src/Tools/jEdit/src-base/plugin.scala Tue Jan 05 21:46:35 2021 +0100 @@ -19,6 +19,8 @@ { Isabelle_System.init() + GUI.set_application_icon() + Debug.DISABLE_SEARCH_DIALOG_POOL = true Syntax_Style.dummy_style_extender()