From a8d00ecb0b59eabca896553636b45aaa0d1f3ccd Mon Sep 17 00:00:00 2001 From: Lenoch <81lennoch@gmail.com> Date: Wed, 11 Dec 2024 18:23:41 +0100 Subject: [PATCH] Fix QR code and change port windows for Linux - Fixed an issue with the QR code and change port windows where the icon was not displaying correctly, causing an error on Linux. - Added platform-specific handling for setting window icons. - Used PNG images instead of ICO for Linux compatibility. --- app/tray.py | 14 +++++++++++--- static/icons/icon.png | Bin 0 -> 9094 bytes static/icons/icon_black.png | Bin 0 -> 3012 bytes 3 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 static/icons/icon.png create mode 100644 static/icons/icon_black.png diff --git a/app/tray.py b/app/tray.py index 20887e4..d1ecd5c 100644 --- a/app/tray.py +++ b/app/tray.py @@ -100,7 +100,11 @@ def show_qrcode(): text_label = tk.Label(window, text=f"http://{local_ip}:{get_port()}/", font=("Helvetica", 13)) text_label.pack() - window.iconbitmap("static/icons/icon.ico") + if is_win: + window.iconbitmap("static/icons/icon.ico") + else: + icon_image = ImageTk.PhotoImage(file="static/icons/icon.ico") + window.iconphoto(False, icon_image) window.lift() window.focus_force() @@ -168,7 +172,7 @@ def create_language_menu_item(lang): def generate_tray_icon(): global icon - image = Image.open("static/icons/icon.ico") + image = Image.open("static/icons/icon.png") menu = generate_menu(language, server_status=0) @@ -211,7 +215,11 @@ def close_prompt(event=None): prompt_window.title(text('change_server_port')) prompt_window.geometry("300x160") prompt_window.resizable(False, False) - prompt_window.iconbitmap("static/icons/icon_black.ico") + if is_win: + prompt_window.iconbitmap("static/icons/icon_black.ico") + else: + icon_image = ImageTk.PhotoImage(file="static/icons/icon_black.png") + prompt_window.iconphoto(False, icon_image) frame = tk.Frame(prompt_window, padx=10, pady=10) frame.pack(expand=True) diff --git a/static/icons/icon.png b/static/icons/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1f2002fe25c23c4818b406d1491267c74700d0c4 GIT binary patch literal 9094 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

V~IQVR49#{?ju1D8`9a8T%7H^`Nx-E+~W zH$QR$O?Pxls@f+^o$cOfdf+1=eDYugB2ljM`3pa2#DgAQ{D}8tNgz|2o6TzeqM$8v zxz~oi#CsWZPI^YG$WYg%MIe3dNkAb^XShc$l3Axr5K)=a8Z*CR;_`jD>5#G4k3o{riVXu)}=R2za`@?e-R`h$AQeH zX?$%P{h38y=Lr={RV)h0OIZcaUwi)C=iWpOvmUyLHq9yLkkr<8A}C7yCc zxb*-2T+q9^BWUx1uy)vg(ITFSuIv?vPp$zCw9Z_p0x#tcOoZI&;duu7^>{A+6Q5#u z%E+JA65&W0s>PF0KNao2=&q9-p*>h+4>s}Z(h;;t6!(I)s7(?0z6NA;(M-Qa&n4=A DWhp3O literal 0 HcmV?d00001 diff --git a/static/icons/icon_black.png b/static/icons/icon_black.png new file mode 100644 index 0000000000000000000000000000000000000000..5d369b8f1bfbd6b0da56d78c50b26a3d38cbbe5a GIT binary patch literal 3012 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