Add localization keys for fallback and status messages in UI
Replaced hardcoded status and fallback messages with localized strings across downloader, update, and main UI modules. Updated language files for all supported languages to include new keys for fallback download status, pip timeout, invalid URL, zero selected, and playlist selection dialog title. This improves internationalization and consistency of user-facing messages.
This commit is contained in:
@@ -568,7 +568,7 @@ class DownloadThread(QThread):
|
||||
self.status_signal.emit(_("download.downloading"))
|
||||
except Exception as e:
|
||||
logger.exception(f"Error extracting filename from line '{line}': {e}")
|
||||
self.status_signal.emit("⚡ Downloading...") # Fallback status
|
||||
self.status_signal.emit(_("download.downloading_fallback")) # Fallback status
|
||||
return # Don't process this line further for speed/ETA
|
||||
|
||||
# Check for specific download types in the output
|
||||
@@ -693,7 +693,7 @@ class DownloadThread(QThread):
|
||||
self.file_exists_signal.emit(filename)
|
||||
else:
|
||||
logger.info(f"Could not extract filename from 'already downloaded' line: {line}")
|
||||
self.status_signal.emit("⚠️ File already exists") # Fallback status
|
||||
self.status_signal.emit(_("download.file_exists")) # Fallback status
|
||||
elif "Finished downloading" in line:
|
||||
self.progress_signal.emit(100)
|
||||
|
||||
|
||||
@@ -198,7 +198,7 @@ class SubtitleSelectionDialog(QDialog):
|
||||
class PlaylistSelectionDialog(QDialog):
|
||||
def __init__(self, playlist_entries, previously_selected_string, parent=None) -> None:
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("Select Playlist Videos")
|
||||
self.setWindowTitle(_("playlist.select_videos_title"))
|
||||
self.setMinimumWidth(500)
|
||||
self.setMinimumHeight(400) # Allow more vertical space
|
||||
|
||||
|
||||
@@ -276,7 +276,7 @@ class UpdateThread(QThread):
|
||||
return False
|
||||
|
||||
except subprocess.TimeoutExpired:
|
||||
self.update_status.emit("❌ Pip update timed out after 5 minutes")
|
||||
self.update_status.emit(_("update.pip_timeout"))
|
||||
return False
|
||||
except Exception as e:
|
||||
self.update_status.emit(f"❌ Error during pip update: {e}")
|
||||
|
||||
@@ -675,7 +675,7 @@ class YTSageApp(QMainWindow, FormatTableMixin, VideoInfoMixin): # Inherit from
|
||||
def analyze_url(self) -> None:
|
||||
url = self.url_input.text().strip()
|
||||
if not url:
|
||||
self.signals.update_status.emit("Invalid URL or please enter a URL.")
|
||||
self.signals.update_status.emit(_("main_ui.invalid_url_or_enter"))
|
||||
return
|
||||
|
||||
self.signals.update_status.emit(_("main_ui.analyzing_preparing"))
|
||||
@@ -1830,7 +1830,7 @@ class YTSageApp(QMainWindow, FormatTableMixin, VideoInfoMixin): # Inherit from
|
||||
|
||||
# Show playlist selection button
|
||||
# update signal method from QMetaObject.invokeMethod to signals
|
||||
self.signals.playlist_select_btn_text.emit("Select Videos... (All selected)")
|
||||
self.signals.playlist_select_btn_text.emit(_("main_ui.select_videos_all"))
|
||||
|
||||
# update signal method from QMetaObject.invokeMethod to signals
|
||||
self.signals.playlist_select_btn_visible.emit(True)
|
||||
@@ -1883,10 +1883,10 @@ class YTSageApp(QMainWindow, FormatTableMixin, VideoInfoMixin): # Inherit from
|
||||
|
||||
# Update subtitle UI
|
||||
# update signal method from QMetaObject.invokeMethod to signals
|
||||
self.signals.selected_subs_label_text.emit("0 selected")
|
||||
self.signals.selected_subs_label_text.emit(_("main_ui.zero_selected"))
|
||||
|
||||
# Update format table
|
||||
self.signals.update_status.emit("Analyzing (95%)... Updating format table")
|
||||
self.signals.update_status.emit(_("main_ui.analyzing_updating_table"))
|
||||
self.video_button.setChecked(True)
|
||||
self.audio_button.setChecked(False)
|
||||
self.filter_formats()
|
||||
|
||||
Reference in New Issue
Block a user