Adding ability to change application font size (#822)

This commit is contained in:
Raivis Dejus 2024-07-02 22:36:22 +03:00 committed by GitHub
commit ea58afa892
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 50 additions and 17 deletions

View file

@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-07-02 20:57+0300\n"
"PO-Revision-Date: 2024-07-02 21:00+0300\n"
"POT-Creation-Date: 2024-07-02 22:07+0300\n"
"PO-Revision-Date: 2024-07-02 22:09+0300\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: lv_LV\n"
@ -55,42 +55,46 @@ msgstr "Jūsu ievadītā URL adrese nav derīga."
msgid "Reset to Defaults"
msgstr "Atjaunot noklusētos"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:45
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:47
msgid "Font Size"
msgstr "Fonta izmērs"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:54
msgid "Test"
msgstr "Pārbaudīt"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:51
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:60
msgid "OpenAI API key"
msgstr "OpenAI API atslēga"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:64
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:73
msgid "OpenAI base url"
msgstr "OpenAI adrese"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:73
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:82
msgid "Default export file name"
msgstr "Eksporta fails"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:79
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:88
msgid "Enable live recording transcription export"
msgstr "Eksportēt dzīvā ieraksta transkriptus"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:85
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:94
#: buzz/widgets/preferences_dialog/folder_watch_preferences_widget.py:47
#: buzz/widgets/preferences_dialog/folder_watch_preferences_widget.py:50
msgid "Browse"
msgstr "Izvēlēties"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:104
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:113
msgid "Export folder"
msgstr "Eksportēt mapē"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:129
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:135
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:138
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:144
msgid "OpenAI API Key Test"
msgstr "OpenAI API atslēgas pārbaude"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:130
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:139
msgid ""
"Your API key is valid. Buzz will use this key to perform Whisper API "
"transcriptions and AI translations with ChatGPT."
@ -98,11 +102,11 @@ msgstr ""
"Jūsu API atslēga ir derīga. Buzz izmantos to runas atpazīšanai ar Whisper "
"API un tulkošanai ar ChatGPT."
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:157
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:166
msgid "Select Export Folder"
msgstr "Izvēlieties mapi kurā eksportēt"
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:189
#: buzz/widgets/preferences_dialog/general_preferences_widget.py:207
msgid "OpenAI API returned invalid response, status code: "
msgstr "OpenAI API atbildēja ar nederīgu atbildi, statusa kods: "

View file

@ -43,6 +43,8 @@ class Settings:
SHORTCUTS = "shortcuts"
FONT_SIZE = "font-size"
TRANSCRIPTION_TASKS_TABLE_COLUMN_VISIBILITY = (
"transcription-tasks-table/column-visibility"
)

View file

@ -8,7 +8,8 @@ from buzz.db.dao.transcription_dao import TranscriptionDAO
from buzz.db.dao.transcription_segment_dao import TranscriptionSegmentDAO
from buzz.db.db import setup_app_db
from buzz.db.service.transcription_service import TranscriptionService
from buzz.settings.settings import APP_NAME
from buzz.settings.settings import APP_NAME, Settings
from buzz.transcriber.transcriber import FileTranscriptionTask
from buzz.widgets.main_window import MainWindow
@ -22,8 +23,16 @@ class Application(QApplication):
self.setApplicationName(APP_NAME)
self.setApplicationVersion(VERSION)
self.settings = Settings()
font_size = self.settings.value(
key=Settings.Key.FONT_SIZE, default_value=self.font().pointSize()
)
if sys.platform == "darwin":
self.setFont(QFont("SF Pro", self.font().pointSize()))
self.setFont(QFont("SF Pro", font_size))
else:
self.setFont(QFont(self.font().family(), font_size))
db = setup_app_db()
transcription_service = TranscriptionService(

View file

@ -11,7 +11,8 @@ from PyQt6.QtWidgets import (
QMessageBox,
QCheckBox,
QHBoxLayout,
QFileDialog
QFileDialog,
QSpinBox,
)
from openai import AuthenticationError, OpenAI
@ -37,6 +38,14 @@ class GeneralPreferencesWidget(QWidget):
layout = QFormLayout(self)
self.font_size_spin_box = QSpinBox(self)
self.font_size_spin_box.setMinimum(8)
self.font_size_spin_box.setMaximum(32)
self.font_size_spin_box.setValue(self.font().pointSize())
self.font_size_spin_box.valueChanged.connect(self.on_font_size_changed)
layout.addRow(_("Font Size"), self.font_size_spin_box)
self.openai_api_key_line_edit = OpenAIAPIKeyLineEdit(self.openai_api_key, self)
self.openai_api_key_line_edit.key_changed.connect(
self.on_openai_api_key_changed
@ -164,6 +173,15 @@ class GeneralPreferencesWidget(QWidget):
folder,
)
def on_font_size_changed(self, value):
from buzz.widgets.application import Application
font = self.font()
font.setPointSize(value)
self.setFont(font)
Application.instance().setFont(font)
self.settings.set_value(Settings.Key.FONT_SIZE, value)
class TestOpenAIApiKeyJob(QRunnable):
class Signals(QObject):