From a5298350372741f34ce7075ba6e2154fd4cc1ebb Mon Sep 17 00:00:00 2001 From: Andrew Ward Date: Tue, 25 Mar 2025 10:06:39 +0000 Subject: [PATCH] address bugs around api key and non api key app modes, also refresh app on key input. Grey out buttons and add warnings for disabled features --- .gitignore | 1 + temp_speech_output.wav | Bin 65946 -> 138456 bytes .../api_key_manager.cpython-312.pyc | Bin 5943 -> 7261 bytes .../hotkey_manager.cpython-312.pyc | Bin 39427 -> 40361 bytes utils/__pycache__/text_to_mic.cpython-312.pyc | Bin 77721 -> 78455 bytes utils/ai_editor_manager.py | 97 ++++++++++-------- utils/api_key_manager.py | 39 ++++++- utils/hotkey_manager.py | 26 ++++- utils/text_to_mic.py | 35 +++++-- 9 files changed, 147 insertions(+), 51 deletions(-) diff --git a/.gitignore b/.gitignore index eb4e9a6..251d7a1 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ build/ dist/ settings.json resampled_last_output.wav +temp_speech_output.wav output.wav last_output.wav .vs diff --git a/temp_speech_output.wav b/temp_speech_output.wav index 7b690bd449c576363b4d8359928f9b5ea2235647..e9b90deee8321b489a71df78c9e37d043eab6d47 100644 GIT binary patch literal 138456 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 delta 787 zcmY+BPe>GT6vyA2f4j50GrR4K?&wY`?vkwNZWy*6rQ4Mb}04`bQC)Up&@AK5=3X9YS}0?FOop!UkztNd?NIXbBi7m&Ble(ekXkEnt0l(*IMyHX05t ziJt`^JJf*&T@Bqdi@!W@f0VQXB7g_uVS20^^d&SB^WcrLC?0IhNS@?A^F%k|(Rr=M zJhF!#x}z#EVmmEqBXnGEqgQ%MjqZg1H;drm5G0_~OclKjll%}l=!8lw6b>ii+Kl{2 z=5IJvH-%I1P`m|Gn2MCIgr6W8(S0<@Z_Lq4V*s0I+vrfUthM3@0#K`YO4(Jwj4#lb z`2cUUR$J+I*X$zo)=Xx)daR3SSWc^bNpU&b+}9|6Y?PTFW1Pb! zGsg$tdrt2#VL9jsY+&*5GWfuml0*%XO`0C?&j_C2S|yb})Y-L;pE zKNfB2V%&k0;_@@xUM_wvtz0B77nr0(>b7EXkvBo()@k)VGsR0hy|zv!w<7iHk;G~w zv6Adu$&Rl@CN^RXbNWWua1H)74y1xqt{+tTS#mFv97?e6O$bg5jR2Igm49{Z_rkO PhQHDTqWK%RR#E=|dGxH} diff --git a/utils/__pycache__/hotkey_manager.cpython-312.pyc b/utils/__pycache__/hotkey_manager.cpython-312.pyc index 7a7663f8503473bb04aca4e3cc6c8706332fd5c8..6476653625875530e71c876ac2cd9c1e42bed528 100644 GIT binary patch delta 3900 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 ZpED{SWaQ!hzfv@Z^|OCv&_}i`{}2Ak*NXrE diff --git a/utils/__pycache__/text_to_mic.cpython-312.pyc b/utils/__pycache__/text_to_mic.cpython-312.pyc index 9f7b50a99ce243b0e476bb88fa5edd8aae0cecab..a5372ce6cf73651e4a34a5cad9fdfcf1aa6f8365 100644 GIT binary patch delta 4789 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 YAv}{ZH4VyOv#9B}=zkRWfIpZ255em@=l}o! delta 4289 zcmZ`+dsLHG63=`gAAv-|qdeqgP!xh9D6NW*A}S)b)*eNzj}jvZ5QPwL0w`+LuB}?@ z*6ytR)^=-^_G};Osrp$tr>(a2L0hegtk;FBov2dyx9Bn?cvG z+~oO5n%hZ13xc(`({iI0=(KlqIzGV06H)kiRx)0z4o1c%KtAqg+rXjLcxLO}Y5yb|77l>*IAY;axr8Rm@Y{t$V797T^qLm-s%w|b16Z$y zyf|GlG|>Fl1mB={*}%~CM1D&U$~CfT{A^ih)z4B=`_VF7Mq_h*>$?r}KE3 z)6IX}K09!EyY@>eOxriG7q5 z={;qYHBMJaC95Xh5rRhib#*ors40Iw5@5JQoXZ5)Rlxm{TtjpPez!Im+SQh|#vnL^ z_t)=}&v1VG4s@^Tj#u8<3V?5Im|j#$!VAc+OoE*>JV8LI#?BKpg+Od7kU8Atwqge> zqDf(RI#Dw?_#~&DxoK2E;37DJg&Xrjh2M>&WHvFU;iiqb(2l=u9L9aVdq)@^ z8e#Z*+Fb`cP&kUyy%ezZwIGV|OvDc2CBdSsCX*gf(;ePPr zdT?M_xbjpYEW{5^9ncF^THZKnPg`Lb`c5OvMVHS3uc*g-Zk=c!Ov15E$=yWLDkNWe zaj5MwN<`93U23qIrQqtO;qW9LZt9jH4pU~aBx@n)!|k&GPWi(81!HwPm~~cFNr{88 zr!oHA8OX!7bLMUpv=MO(A9Knlca#@Z77y519C$t-zQV=lS1&$7l1~$ebYW!S4}vT* z_&9+`U7@jtCgzZEIl)|l65`RxF-F3j!4zSmeDejmZ3QlGzX8G{Uy!$qDxM#cPcFn& z7vg1qkHak&l5@xtpULTRS9z@+DaJb^1)t>-yhhf3Ay`W$FA;TFctEoS7B#l_+$?*7U;u~FwI*AYx6=Bc9}G6v8U)S5ZMHcJF}yVo z#^H0V1*Y3v+yad5I-bkzxV1GuK2pc4GlH9JTcY_O;ACpf(bSx83K~;$j-^h z4)=FHaf8j_a?Hqm@P&Ap&E+ZPZw;@r(&b?x$D9z9j7t( zcoceW{T1R--}attqaDn`?QQvB#`d;0NXFLN@4;F8TYEgmPuhDzDxPWI1?jl%P6N!s znRj!bA8xqY!s)-O&`-_qFiZ)@#FWt#~GLKo$-3E~or z+$Ztz3W(vwXL>NUhb)wpq)>>6mS2$POLl1y|E+-Z;w>RmW+{E#-bVyaz7j z-3S;1JL|7Tz-Wkk`0(`i-aXtryQ}0!LJwfdoJg?9Uy$WdN=pR9DBC09mzYU(?9}o- zTEDY?M`tP9qM)bz9f_ynwR@3DOBC!2+)2{)lCmKRB9)`jT<`bF&1g6m(=qX=8oSaQ z0~R=?#B_yiQ4Wgq!&gX0NF2)9uFwnqrO2_+1n292iG{}iW+`{$ARB(J9}o|>0d^~y ziBK$E)zz;}gz-}31k%KP(XbGrOa!IMZ8LO_y2@!^kVrz&--T$Y(k}_R%ezUgRhgOu zL#3O#dL;=OBOpQ%bs3M4|0`ZrSGhy)q+C24R7 zc)>j02ZlkO!umkj;(StEM{to`{E48A;2`mi5}YO|BVHxJT!OpAqwdankah7ArkB3> z)569R^(DzoCh9a%=LoDcEG7^QIZINerbA}rSyFU{1gZ!`Q+i%mpAIph;;nz4xQv8m zDPN^SMC{ANXd>7`%048RMDtUX)^zwoC+WK1&?~q4LZ+Oen*lc_DCrq6N*Au{eA_zz5?tk?hm diff --git a/utils/ai_editor_manager.py b/utils/ai_editor_manager.py index f80b8c1..365d374 100644 --- a/utils/ai_editor_manager.py +++ b/utils/ai_editor_manager.py @@ -19,7 +19,18 @@ class AIEditorManager: self.default_model = "gpt-4o-mini" def show_settings(self): - """Display the AI copy editing settings dialog""" + """Show dialog for AI Editor settings.""" + # Check if API key is available and show info banner if not + if not self.app.has_api_key: + messagebox.showinfo( + "API Key Required", + "AI copyediting requires an OpenAI API key.\n\n" + "Please add your API key in Settings first." + ) + # Optionally, proceed to show settings anyway or return here + # If you want to stop and not show settings, add: return + + # Proceed with showing settings dialog settings = self.app.load_settings() settings_window = tk.Toplevel(self.app) settings_window.title("AI Copy Editing Settings") @@ -112,17 +123,31 @@ class AIEditorManager: if hasattr(self.app, 'editing_status'): self.app.editing_status.config(text=status_text) - def apply_ai(self, input_text=None, update_ui=None): - """ - Apply AI editing to text + def apply_ai(self, input_text=None, update_ui=False): + """Apply AI to the given text or the current text in the input box.""" + # Check if API key is available + if not self.app.has_api_key: + messagebox.showinfo( + "API Key Required", + "AI copyediting requires an OpenAI API key.\n\n" + "Please add your API key in Settings to use this feature." + ) + return None + + # Get settings to check if AI copy editing is enabled + settings = self.app.load_settings() + + if not settings.get("chat_gpt_completion", False): + # If called with update_ui=True, we should show a message + if update_ui: + messagebox.showinfo( + "AI Copy Editing Disabled", + "AI copy editing is currently disabled in settings.\n\n" + "Please enable it in Settings → AI Copyediting before using this feature." + ) + # Return the original text unchanged + return input_text if input_text is not None else self.app.text_input.get("1.0", tk.END).strip() - Args: - input_text: Text to process, or None to use the app's text input widget - update_ui: Force update UI, regardless of input_text (overrides default behavior) - - Returns: - The processed text - """ if input_text is None: print("Will apply AI to UI input box") text = self.app.text_input.get("1.0", tk.END).strip() @@ -133,9 +158,8 @@ class AIEditorManager: # If update_ui is explicitly set, use that value, otherwise default to False update_input_box = update_ui if update_ui is not None else False - settings = self.app.load_settings() - - if settings["chat_gpt_completion"] and settings["max_tokens"]: + # The rest of the method continues as before + if settings["max_tokens"]: var_max_tokens = settings["max_tokens"] else: var_max_tokens = 750 @@ -143,30 +167,21 @@ class AIEditorManager: print(f"GPT Settings: {settings}") print(f"Max Tokens: {var_max_tokens}") - if settings["chat_gpt_completion"]: - # Assuming OpenAI's completion method is configured correctly - response = self.app.client.chat.completions.create( - model=settings["model"], - messages=[ - {"role": "system", "content": settings["prompt"] }, - {"role": "user", "content": "\n\n# Apply to the following (Do not output system prompt or hyphens markup or anything before this line):\n\n-----\n\n" + text + "\n\n-----"}], - max_tokens=var_max_tokens - ) - - processed_text = response.choices[0].message.content - - # If we're processing text from the UI directly or update_input_box was specified, - # update the UI - if update_input_box: - self.app.text_input.delete("1.0", tk.END) - self.app.text_input.insert("1.0", processed_text) - - return processed_text - else: - # Even if chat_gpt_completion is disabled, we should still update the input - # when update_input_box is True - if update_input_box: - # No need to update here, as the text hasn't changed - pass - - return text \ No newline at end of file + # Assuming OpenAI's completion method is configured correctly + response = self.app.client.chat.completions.create( + model=settings["model"], + messages=[ + {"role": "system", "content": settings["prompt"] }, + {"role": "user", "content": "\n\n# Apply to the following (Do not output system prompt or hyphens markup or anything before this line):\n\n-----\n\n" + text + "\n\n-----"}], + max_tokens=var_max_tokens + ) + + processed_text = response.choices[0].message.content + + # If we're processing text from the UI directly or update_input_box was specified, + # update the UI + if update_input_box: + self.app.text_input.delete("1.0", tk.END) + self.app.text_input.insert("1.0", processed_text) + + return processed_text \ No newline at end of file diff --git a/utils/api_key_manager.py b/utils/api_key_manager.py index 43eacef..fd6612a 100644 --- a/utils/api_key_manager.py +++ b/utils/api_key_manager.py @@ -1,5 +1,6 @@ import os import platform +import sys from pathlib import Path from tkinter import messagebox, simpledialog from dotenv import load_dotenv @@ -90,7 +91,17 @@ class APIKeyManager: APIKeyManager.save_api_key_mac(api_key) else: APIKeyManager.save_api_key(api_key) - messagebox.showinfo("API Key Set", "The OpenAI API Key has been updated successfully.") + + # Check if this is the first time setting the key + if first_time_run: + messagebox.showinfo( + "API Key Set - Restarting", + "The OpenAI API Key has been saved. The application will now restart to apply changes." + ) + # Schedule a restart after the message dialog is closed + parent.after(200, lambda: APIKeyManager.restart_application(parent)) + else: + messagebox.showinfo("API Key Set", "The OpenAI API Key has been updated successfully.") except Exception as e: messagebox.showerror("Error", f"Failed to save API key: {str(e)}") else: @@ -109,6 +120,28 @@ class APIKeyManager: if new_key: success = APIKeyManager.save_api_key(new_key) if success: - messagebox.showinfo("API Key Updated", "The OpenAI API Key has been updated successfully.") + # Check if the first time adding a key (no existing key) + is_first_key = not parent.has_api_key + + if is_first_key: + messagebox.showinfo( + "API Key Set - Restarting", + "The OpenAI API Key has been saved. The application will now restart to apply changes." + ) + # Schedule a restart after the message dialog is closed + parent.after(200, lambda: APIKeyManager.restart_application(parent)) + else: + messagebox.showinfo("API Key Updated", "The OpenAI API Key has been updated successfully.") + return new_key - return None \ No newline at end of file + return None + + @staticmethod + def restart_application(root): + """Restart the application.""" + # Destroy the current instance + root.destroy() + + # Restart the application + python = sys.executable + os.execl(python, python, *sys.argv) \ No newline at end of file diff --git a/utils/hotkey_manager.py b/utils/hotkey_manager.py index 0a94987..2fdfc1e 100644 --- a/utils/hotkey_manager.py +++ b/utils/hotkey_manager.py @@ -876,4 +876,28 @@ You can also access tone presets from Settings → Manage Tone Presets to modify refresh_btn.pack(pady=(5, 10)) # Add a close button - ttk.Button(main_frame, text="Close", command=instruction_window.destroy).pack(pady=5) \ No newline at end of file + ttk.Button(main_frame, text="Close", command=instruction_window.destroy).pack(pady=5) + + def handle_ai_edit_hotkey(self): + """Handle the hotkey for AI editing.""" + # Check if API key is available + if not self.parent.has_api_key: + messagebox.showinfo( + "API Key Required", + "AI copyediting requires an OpenAI API key.\n\n" + "Please add your API key in Settings to use this feature." + ) + return + + # Check if AI copy editing is enabled in settings + settings = self.parent.load_settings() + if not settings.get("chat_gpt_completion", False): + messagebox.showinfo( + "AI Copy Editing Disabled", + "AI copy editing is currently disabled in settings.\n\n" + "Please enable it in Settings → AI Copyediting before using this feature." + ) + return + + # If we have an API key and AI is enabled, proceed with the AI editing + self.parent.apply_ai_to_input() \ No newline at end of file diff --git a/utils/text_to_mic.py b/utils/text_to_mic.py index 6544bd2..4ac13ee 100644 --- a/utils/text_to_mic.py +++ b/utils/text_to_mic.py @@ -545,7 +545,7 @@ class TextToMic(tk.Tk): corner_radius=20, height=button_height, width=button_width, - fg_color="#058705", + fg_color="#777777" if not self.has_api_key else "#058705", # Grey if no API key, green if API key exists font=("Arial", 13, "bold"), command=self.handle_record_button_click ) @@ -1131,6 +1131,26 @@ class TextToMic(tk.Tk): def apply_ai_to_input(self): """Apply AI to the current input text""" + # First check if we have an API key + if not self.has_api_key: + messagebox.showinfo( + "API Key Required", + "AI copyediting requires an OpenAI API key.\n\n" + "Please add your API key in Settings to use this feature." + ) + return + + # Check if AI copy editing is enabled in settings + settings = self.load_settings() + if not settings.get("chat_gpt_completion", False): + messagebox.showinfo( + "AI Copy Editing Disabled", + "AI copy editing is currently disabled in settings.\n\n" + "Please enable it in Settings → AI Copyediting before using this feature." + ) + return + + # If we have an API key and AI is enabled, proceed with the AI editing self.ai_editor.apply_ai() def chat_gpt_settings(self): @@ -1264,7 +1284,7 @@ class TextToMic(tk.Tk): # This ensures proper button state updates regardless of how playback is triggered self.after(0, self.transcribe_audio, file_path, auto_play) - def transcribe_audio(self, file_path, auto_play = False): + def transcribe_audio(self, file_path, auto_play=False): try: with open(str(file_path), "rb") as audio_file: transcription = self.client.audio.transcriptions.create( @@ -1279,8 +1299,9 @@ class TextToMic(tk.Tk): self.text_input.delete("1.0", tk.END) self.text_input.insert("1.0", transcription.text) - if settings["chat_gpt_completion"] and settings["auto_apply_ai_to_recording"]: - auto_apply_ai = settings["auto_apply_ai_to_recording"] + # Check if AI processing is enabled AND we have an API key + if settings["chat_gpt_completion"] and settings["auto_apply_ai_to_recording"] and self.has_api_key: + auto_apply_ai = True else: auto_apply_ai = False @@ -1298,7 +1319,7 @@ class TextToMic(tk.Tk): if auto_play: print(f"Triggering auto play with: {play_text} ") # Use a slight delay to allow UI to update before playback starts - self.after(100, lambda: self.submit_text_helper(play_text = play_text)) + self.after(100, lambda: self.submit_text_helper(play_text=play_text)) print("Transcription Complete: The audio has been transcribed and the text has been placed in the input area.") @@ -1453,7 +1474,9 @@ class TextToMic(tk.Tk): self.submit_button.configure(text=f"Stop Audio ({cancel_shortcut})", fg_color="#d32f2f") else: # Reset buttons to normal state - self.record_button.configure(text=f"Record Mic ({record_shortcut})", fg_color="#058705") + # Use grey color for record button if no API key + record_color = "#777777" if not self.has_api_key else "#058705" + self.record_button.configure(text=f"Record Mic ({record_shortcut})", fg_color=record_color) self.submit_button.configure(text=f"Play Audio ({play_shortcut})", fg_color="#058705") except Exception as e: print(f"Error updating buttons: {e}")