Add localization
This commit is contained in:
parent
8ea7b49602
commit
8ef0b04db4
|
|
@ -4,3 +4,4 @@ __pycache__
|
||||||
gschemas.compiled
|
gschemas.compiled
|
||||||
.flatpak-builder/
|
.flatpak-builder/
|
||||||
out/
|
out/
|
||||||
|
*.po~
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
|
||||||
|
|
||||||
|
pushd $SCRIPT_DIR/..
|
||||||
|
|
||||||
|
xgettext --from-code=UTF-8 -k_ -kN_ -L Python -o po/breezydesktop.pot src/*.py
|
||||||
|
xgettext --from-code=UTF-8 -k_ -kN_ -j -L Glade -o po/breezydesktop.pot src/gtk/*.ui
|
||||||
|
|
||||||
|
msgmerge --update po/de.po po/breezydesktop.pot
|
||||||
|
msgmerge --update po/es.po po/breezydesktop.pot
|
||||||
|
msgmerge --update po/fr.po po/breezydesktop.pot
|
||||||
|
msgmerge --update po/it.po po/breezydesktop.pot
|
||||||
|
msgmerge --update po/zh_CN.po po/breezydesktop.pot
|
||||||
|
msgmerge --update po/ja.po po/breezydesktop.pot
|
||||||
|
|
||||||
|
for file in po/*.po; do
|
||||||
|
lang=${file##*/}
|
||||||
|
lang=${lang%.po}
|
||||||
|
outdir="po/$lang/LC_MESSAGES"
|
||||||
|
mkdir -p "$outdir"
|
||||||
|
msgfmt -o "$outdir/breezydesktop.mo" "$file"
|
||||||
|
done
|
||||||
|
|
||||||
|
popd
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
de es fr it ja zh_CN
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
data/com.xronlinux.BreezyDesktop.desktop.in
|
|
||||||
data/com.xronlinux.BreezyDesktop.metainfo.xml.in
|
|
||||||
data/com.xronlinux.BreezyDesktop.gschema.xml
|
|
||||||
src/main.py
|
|
||||||
src/window.py
|
|
||||||
src/window.ui
|
|
||||||
|
|
@ -0,0 +1,434 @@
|
||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:36-0700\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"Language: \n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
|
|
@ -0,0 +1,434 @@
|
||||||
|
# German translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:36-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 20:54-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
|
||||||
|
"Language: de\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,434 @@
|
||||||
|
# Spanish translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:19-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 20:55-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: Spanish <es@tp.org.es>\n"
|
||||||
|
"Language: es\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,434 @@
|
||||||
|
# French translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:19-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 20:54-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: French <traduc@traduc.org>\n"
|
||||||
|
"Language: fr\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,434 @@
|
||||||
|
# Italian translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:19-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 21:14-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: Italian <tp@lists.linux.it>\n"
|
||||||
|
"Language: it\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,434 @@
|
||||||
|
# Japanese translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:19-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 20:55-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
|
||||||
|
"Language: ja\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -0,0 +1,433 @@
|
||||||
|
# Chinese translations for PACKAGE package.
|
||||||
|
# Copyright (C) 2024 THE PACKAGE'S COPYRIGHT HOLDER
|
||||||
|
# This file is distributed under the same license as the PACKAGE package.
|
||||||
|
# <wayne@xronlinux.com>, 2024.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2024-08-15 15:19-0700\n"
|
||||||
|
"PO-Revision-Date: 2024-08-02 20:55-0700\n"
|
||||||
|
"Last-Translator: <wayne@xronlinux.com>\n"
|
||||||
|
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
|
||||||
|
"Language: zh_CN\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:16
|
||||||
|
msgid ""
|
||||||
|
"Switches your glasses into side-by-side mode and doubles the width of the "
|
||||||
|
"display."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/connecteddevice.py:17
|
||||||
|
msgid "This feature is not currently supported for your device."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:49
|
||||||
|
msgid "Paid Tier Status"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensedialog.py:57
|
||||||
|
msgid "Feature Availability"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:15 src/shortcutdialog.py:107
|
||||||
|
msgid "Disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "In trial"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:18
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:24 src/licensetierrow.py:30
|
||||||
|
#, python-brace-format
|
||||||
|
msgid " ({time_remaining} remaining)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:32
|
||||||
|
msgid "Side-by-side mode (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:33
|
||||||
|
msgid "Smooth Follow (gaming)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensefeaturerow.py:34
|
||||||
|
msgid "Breezy Desktop (productivity)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Active"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:24
|
||||||
|
msgid "Inactive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:41
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "<b>${amount}</b> USD"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:43
|
||||||
|
msgid " to renew"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:45
|
||||||
|
msgid " to upgrade"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:47
|
||||||
|
msgid "Paid through next renewal period"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:56
|
||||||
|
msgid "Gaming"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:57
|
||||||
|
msgid "Productivity"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:63
|
||||||
|
msgid " - renewing monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:64
|
||||||
|
msgid " - renewing yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:65
|
||||||
|
msgid "with lifetime access"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:72
|
||||||
|
msgid "Monthly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:73
|
||||||
|
msgid "Yearly"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/licensetierrow.py:74
|
||||||
|
msgid "Lifetime"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:14
|
||||||
|
msgid "less than an hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
msgid "1 hour"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:17
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} hours"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
msgid "1 day"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/time.py:20
|
||||||
|
#, python-brace-format
|
||||||
|
msgid "{time_remaining} days"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:21
|
||||||
|
msgid "connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:31
|
||||||
|
msgid "General Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:41
|
||||||
|
msgid "Features"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:44
|
||||||
|
msgid "XR effect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:45
|
||||||
|
msgid "Enables the Breezy Desktop XR effect."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:55
|
||||||
|
msgid "Widescreen mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:66
|
||||||
|
msgid "Follow mode"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:67
|
||||||
|
msgid "Keep the virtual display near the center of your view."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:77
|
||||||
|
msgid "Curved display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:78
|
||||||
|
msgid "Switch between flat and curved displays."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:91
|
||||||
|
msgid "Adjustments"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:94
|
||||||
|
msgid "Display distance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:95
|
||||||
|
msgid ""
|
||||||
|
"Closer appears larger, further appears smaller. Controls depth when in "
|
||||||
|
"widescreen mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:123
|
||||||
|
msgid "Display size"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:124
|
||||||
|
msgid ""
|
||||||
|
"Combine with display distance to achieve a comfortable level of depth and "
|
||||||
|
"size."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:152
|
||||||
|
msgid "Display toggle distances"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:153
|
||||||
|
msgid ""
|
||||||
|
"Use the buttons to capture the current display distance for use with the "
|
||||||
|
"keyboard shortcut."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:178
|
||||||
|
msgid "Follow threshold"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:179
|
||||||
|
msgid "How far away you can look before the display follows."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:209 src/gtk/connected-device.ui:215
|
||||||
|
msgid "Keyboard Shortcuts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:218
|
||||||
|
msgid "Re-center display shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:219
|
||||||
|
msgid "Pin the virtual display to the current position."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:238 src/gtk/connected-device.ui:267
|
||||||
|
#: src/gtk/connected-device.ui:296
|
||||||
|
msgid "Change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:247
|
||||||
|
msgid "Display distance shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:248
|
||||||
|
msgid "Quickly toggle between two predefined distances."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:276
|
||||||
|
msgid "Toggle follow mode shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:277
|
||||||
|
msgid "Quickly toggle follow mode."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:312 src/gtk/connected-device.ui:318
|
||||||
|
msgid "Advanced Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:321
|
||||||
|
msgid "Find optimal display config"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:322
|
||||||
|
msgid ""
|
||||||
|
"Automatically modify the glasses display configuration for maximum "
|
||||||
|
"resolution and best scaling when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:332
|
||||||
|
msgid "Use highest refresh rate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:333
|
||||||
|
msgid "Refresh rate may affect performance, disable this to set it manually."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:343
|
||||||
|
msgid "Always primary display"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:344
|
||||||
|
msgid "Automatically set the glasses as the primary display when plugged in."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:354
|
||||||
|
msgid "Fast SBS mode switching"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:355
|
||||||
|
msgid ""
|
||||||
|
"Switches glasses to SBS mode immediately when plugged in, if widescreen mode "
|
||||||
|
"is on. May cause instability."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:365
|
||||||
|
msgid "Movement look-ahead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:366
|
||||||
|
msgid ""
|
||||||
|
"Counteracts input lag by predicting head-tracking position ahead of render "
|
||||||
|
"time. Stick with default unless virtual display drags behind your head "
|
||||||
|
"movements, jumps ahead, or is very shaky."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/connected-device.ui:384
|
||||||
|
msgid "Default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME invalid setup"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/failed-verification.ui:14
|
||||||
|
msgid ""
|
||||||
|
"Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup "
|
||||||
|
"script. Report this issue if it persists."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:5 src/gtk/window.ui:55
|
||||||
|
msgid "License Details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:27
|
||||||
|
msgid "Donate"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:44
|
||||||
|
msgid "Request a token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/license-dialog.ui:52
|
||||||
|
msgid "Verify token"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:13
|
||||||
|
msgid "No device connected"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-device.ui:14
|
||||||
|
msgid "Breezy Desktop was unable to detect any supported XR devices."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:13
|
||||||
|
msgid "No driver running"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-driver.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" If you installed via AUR, make sure you ran the recommended post-"
|
||||||
|
"install command:\n"
|
||||||
|
" systemctl --user enable --now xr-driver.service\n"
|
||||||
|
"\n"
|
||||||
|
" Otherwise, please file an issue on GitHub, or create a new thread "
|
||||||
|
"in the #troubleshooting channel on Discord.\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:13
|
||||||
|
msgid "Breezy Desktop GNOME extension not ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-extension.ui:14
|
||||||
|
msgid ""
|
||||||
|
"If you have just run the setup, then you may need to log out and back in to "
|
||||||
|
"use it. Otherwise, please follow the Breezy GNOME setup instructions."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:13
|
||||||
|
msgid "No license file was found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:14
|
||||||
|
msgid ""
|
||||||
|
"\n"
|
||||||
|
" The first time you use Breezy Desktop, an internet connection is "
|
||||||
|
"required to retrieve your device's license.\n"
|
||||||
|
" \n"
|
||||||
|
" Don't worry, there's no obligation to donate at this time. If you "
|
||||||
|
"haven't, you'll be given a trial license so you can decide if Breezy Desktop "
|
||||||
|
"fits your needs. \n"
|
||||||
|
" \n"
|
||||||
|
" Once you obtain a license, trial or otherwise, you can use Breezy "
|
||||||
|
"Desktop offline until features expire (or indefinitely, if you've chosen "
|
||||||
|
"lifetime access).\n"
|
||||||
|
" "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/no-license.ui:27
|
||||||
|
msgid "Try Again"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:5
|
||||||
|
msgid "Assign Keyboard Shortcut"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/shortcut-dialog.ui:20
|
||||||
|
msgid "Press your keyboard shortcut or 'Backspace' to disable..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:10
|
||||||
|
msgid "Breezy Desktop"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:23
|
||||||
|
msgid "Menu"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:35
|
||||||
|
msgid "Some features expire soon"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:36 src/gtk/window.ui:43
|
||||||
|
msgid "View details"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:42
|
||||||
|
msgid "Productivity features are disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:59
|
||||||
|
msgid "Force Reset"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/gtk/window.ui:63
|
||||||
|
msgid "About BreezyDesktop"
|
||||||
|
msgstr ""
|
||||||
Binary file not shown.
|
|
@ -13,6 +13,9 @@ _ = gettext.gettext
|
||||||
class ConnectedDevice(Gtk.Box):
|
class ConnectedDevice(Gtk.Box):
|
||||||
__gtype_name__ = "ConnectedDevice"
|
__gtype_name__ = "ConnectedDevice"
|
||||||
|
|
||||||
|
widescreen_mode_subtitle = _("Switches your glasses into side-by-side mode and doubles the width of the display.")
|
||||||
|
widescreen_mode_not_supported_subtitle = _("This feature is not currently supported for your device.")
|
||||||
|
|
||||||
device_label = Gtk.Template.Child()
|
device_label = Gtk.Template.Child()
|
||||||
effect_enable_switch = Gtk.Template.Child()
|
effect_enable_switch = Gtk.Template.Child()
|
||||||
display_distance_scale = Gtk.Template.Child()
|
display_distance_scale = Gtk.Template.Child()
|
||||||
|
|
@ -55,9 +58,6 @@ class ConnectedDevice(Gtk.Box):
|
||||||
self.movement_look_ahead_scale
|
self.movement_look_ahead_scale
|
||||||
]
|
]
|
||||||
|
|
||||||
self.widescreen_mode_subtitle = _("Switches your glasses into side-by-side mode and doubles the width of the display.")
|
|
||||||
self.widescreen_mode_not_supported_subtitle = _("This feature is not currently supported for your device.")
|
|
||||||
|
|
||||||
self.settings = SettingsManager.get_instance().settings
|
self.settings = SettingsManager.get_instance().settings
|
||||||
self.ipc = XRDriverIPC.get_instance()
|
self.ipc = XRDriverIPC.get_instance()
|
||||||
self.extensions_manager = ExtensionsManager.get_instance()
|
self.extensions_manager = ExtensionsManager.get_instance()
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwViewStackPage">
|
<object class="AdwViewStackPage">
|
||||||
<property name="name">general</property>
|
<property name="name">general</property>
|
||||||
<property name="title">General Settings</property>
|
<property name="title" translatable="yes"><!-- tab for navigating to the general settings -->General Settings</property>
|
||||||
<property name="icon-name">applications-system-symbolic</property>
|
<property name="icon-name">applications-system-symbolic</property>
|
||||||
<property name="child">
|
<property name="child">
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
|
|
@ -38,11 +38,11 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwPreferencesGroup">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="title" translatable="true">Features</property>
|
<property name="title" translatable="yes"><!-- section heading for switches that enable certain features -->Features</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">XR effect</property>
|
<property name="title" translatable="yes"><!-- feature switch -->XR effect</property>
|
||||||
<property name="subtitle" translatable="true">Enables the Breezy Desktop XR effect.</property>
|
<property name="subtitle" translatable="yes">Enables the Breezy Desktop XR effect.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="effect_enable_switch">
|
<object class="GtkSwitch" id="effect_enable_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -52,7 +52,7 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow" id="widescreen_mode_row">
|
<object class="AdwActionRow" id="widescreen_mode_row">
|
||||||
<property name="title" translatable="true">Widescreen mode</property>
|
<property name="title" translatable="yes"><!-- feature switch -->Widescreen mode</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="widescreen_mode_switch">
|
<object class="GtkSwitch" id="widescreen_mode_switch">
|
||||||
|
|
@ -63,8 +63,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Follow mode</property>
|
<property name="title" translatable="yes"><!-- feature switch -->Follow mode</property>
|
||||||
<property name="subtitle" translatable="true">Keep the virtual display near the center of your view.</property>
|
<property name="subtitle" translatable="yes">Keep the virtual display near the center of your view.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="follow_mode_switch">
|
<object class="GtkSwitch" id="follow_mode_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -74,8 +74,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Curved display</property>
|
<property name="title" translatable="yes"><!-- feature switch -->Curved display</property>
|
||||||
<property name="subtitle" translatable="true">Switch between flat and curved displays.</property>
|
<property name="subtitle" translatable="yes">Switch between flat and curved displays.</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="curved_display_switch">
|
<object class="GtkSwitch" id="curved_display_switch">
|
||||||
|
|
@ -88,11 +88,11 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwPreferencesGroup">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="title" translatable="true">Adjustments</property>
|
<property name="title" translatable="yes"><!-- Section containing sliders for adjusting the XR effect -->Adjustments</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow" id="display_distance_row">
|
<object class="AdwActionRow" id="display_distance_row">
|
||||||
<property name="title" translatable="true">Display distance</property>
|
<property name="title" translatable="yes"><!-- adjustment slider -->Display distance</property>
|
||||||
<property name="subtitle" translatable="true">Closer appears larger, further appears smaller. Controls depth when in widescreen mode.</property>
|
<property name="subtitle" translatable="yes">Closer appears larger, further appears smaller. Controls depth when in widescreen mode.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScale" id="display_distance_scale">
|
<object class="GtkScale" id="display_distance_scale">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -120,8 +120,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Display size</property>
|
<property name="title" translatable="yes"><!-- adjustment slider -->Display size</property>
|
||||||
<property name="subtitle" translatable="true">Combine with display distance to achieve a comfortable level of depth and size.</property>
|
<property name="subtitle" translatable="yes">Combine with display distance to achieve a comfortable level of depth and size.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScale" id="display_size_scale">
|
<object class="GtkScale" id="display_size_scale">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -149,8 +149,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Display toggle distances</property>
|
<property name="title" translatable="yes"><!-- adjustment slider -->Display toggle distances</property>
|
||||||
<property name="subtitle" translatable="true">Use the buttons to capture the current display distance for use with the keyboard shortcut.</property>
|
<property name="subtitle" translatable="yes">Use the buttons to capture the current display distance for use with the keyboard shortcut.</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
|
|
@ -175,8 +175,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Follow threshold</property>
|
<property name="title" translatable="yes"><!-- adjustment slider -->Follow threshold</property>
|
||||||
<property name="subtitle" translatable="true">How far away you can look before the display follows.</property>
|
<property name="subtitle" translatable="yes">How far away you can look before the display follows.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScale" id="follow_threshold_scale">
|
<object class="GtkScale" id="follow_threshold_scale">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -206,17 +206,17 @@
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwViewStackPage">
|
<object class="AdwViewStackPage">
|
||||||
<property name="name">shortcuts</property>
|
<property name="name">shortcuts</property>
|
||||||
<property name="title">Keyboard Shortcuts</property>
|
<property name="title" translatable="yes"><!-- tab for navigating to keyboard shortcuts -->Keyboard Shortcuts</property>
|
||||||
<property name="icon-name">preferences-desktop-keyboard-shortcuts-symbolic</property>
|
<property name="icon-name">preferences-desktop-keyboard-shortcuts-symbolic</property>
|
||||||
<property name="child">
|
<property name="child">
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwPreferencesGroup">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="title" translatable="true">Keyboard Shortcuts</property>
|
<property name="title" translatable="yes"><!-- section heading for updating keyboard shortcuts -->Keyboard Shortcuts</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Re-center display shortcut</property>
|
<property name="title" translatable="yes">Re-center display shortcut</property>
|
||||||
<property name="subtitle" translatable="true">Pin the virtual display to the current position.</property>
|
<property name="subtitle" translatable="yes">Pin the virtual display to the current position.</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
|
|
@ -235,7 +235,7 @@
|
||||||
</style>
|
</style>
|
||||||
<property name="name">recenter-display-shortcut</property>
|
<property name="name">recenter-display-shortcut</property>
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
<property name="label" translatable="true">Change</property>
|
<property name="label" translatable="yes">Change</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
|
@ -244,8 +244,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Display distance shortcut</property>
|
<property name="title" translatable="yes">Display distance shortcut</property>
|
||||||
<property name="subtitle" translatable="true">Quickly toggle between two predefined distances.</property>
|
<property name="subtitle" translatable="yes">Quickly toggle between two predefined distances.</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
|
|
@ -264,7 +264,7 @@
|
||||||
</style>
|
</style>
|
||||||
<property name="name">toggle-display-distance-shortcut</property>
|
<property name="name">toggle-display-distance-shortcut</property>
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
<property name="label" translatable="true">Change</property>
|
<property name="label" translatable="yes">Change</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
|
@ -273,8 +273,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Toggle follow mode shortcut</property>
|
<property name="title" translatable="yes">Toggle follow mode shortcut</property>
|
||||||
<property name="subtitle" translatable="true">Quickly toggle follow mode.</property>
|
<property name="subtitle" translatable="yes">Quickly toggle follow mode.</property>
|
||||||
<property name="valign">2</property>
|
<property name="valign">2</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
|
|
@ -293,7 +293,7 @@
|
||||||
</style>
|
</style>
|
||||||
<property name="name">toggle-follow-shortcut</property>
|
<property name="name">toggle-follow-shortcut</property>
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
<property name="label" translatable="true">Change</property>
|
<property name="label" translatable="yes">Change</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
|
@ -309,17 +309,17 @@
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwViewStackPage">
|
<object class="AdwViewStackPage">
|
||||||
<property name="name">advanced</property>
|
<property name="name">advanced</property>
|
||||||
<property name="title">Advanced Settings</property>
|
<property name="title" translatable="yes"><!-- tab for navigating to the advanced settings -->Advanced Settings</property>
|
||||||
<property name="icon-name">applications-system-symbolic</property>
|
<property name="icon-name">applications-system-symbolic</property>
|
||||||
<property name="child">
|
<property name="child">
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwPreferencesGroup">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="title" translatable="true">Advanced Settings</property>
|
<property name="title" translatable="yes"><!-- section heading for the advanced settings -->Advanced Settings</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Find optimal display config</property>
|
<property name="title" translatable="yes"><!-- feature that tries to the find best-fit monitor config -->Find optimal display config</property>
|
||||||
<property name="subtitle" translatable="true">Automatically modify the glasses display configuration for maximum resolution and best scaling when plugged in.</property>
|
<property name="subtitle" translatable="yes">Automatically modify the glasses display configuration for maximum resolution and best scaling when plugged in.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="use_optimal_monitor_config_switch">
|
<object class="GtkSwitch" id="use_optimal_monitor_config_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -329,8 +329,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Use highest refresh rate</property>
|
<property name="title" translatable="yes">Use highest refresh rate</property>
|
||||||
<property name="subtitle" translatable="true">Refresh rate may affect performance, disable this to set it manually.</property>
|
<property name="subtitle" translatable="yes">Refresh rate may affect performance, disable this to set it manually.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="use_highest_refresh_rate_switch">
|
<object class="GtkSwitch" id="use_highest_refresh_rate_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -340,8 +340,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Always primary display</property>
|
<property name="title" translatable="yes">Always primary display</property>
|
||||||
<property name="subtitle" translatable="true">Automatically set the glasses as the primary display when plugged in.</property>
|
<property name="subtitle" translatable="yes">Automatically set the glasses as the primary display when plugged in.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="headset_as_primary_switch">
|
<object class="GtkSwitch" id="headset_as_primary_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -351,8 +351,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Fast SBS mode switching</property>
|
<property name="title" translatable="yes">Fast SBS mode switching</property>
|
||||||
<property name="subtitle" translatable="true">Switches glasses to SBS mode immediately when plugged in, if widescreen mode is on. May cause instability.</property>
|
<property name="subtitle" translatable="yes">Switches glasses to SBS mode immediately when plugged in, if widescreen mode is on. May cause instability.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="fast_sbs_mode_switch">
|
<object class="GtkSwitch" id="fast_sbs_mode_switch">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -362,8 +362,8 @@
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Movement look-ahead</property>
|
<property name="title" translatable="yes">Movement look-ahead</property>
|
||||||
<property name="subtitle" translatable="true">Counteracts input lag by predicting head-tracking position ahead of render time. Stick with default unless virtual display drags behind your head movements, jumps ahead, or is very shaky.</property>
|
<property name="subtitle" translatable="yes">Counteracts input lag by predicting head-tracking position ahead of render time. Stick with default unless virtual display drags behind your head movements, jumps ahead, or is very shaky.</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScale" id="movement_look_ahead_scale">
|
<object class="GtkScale" id="movement_look_ahead_scale">
|
||||||
<property name="valign">3</property>
|
<property name="valign">3</property>
|
||||||
|
|
@ -381,7 +381,7 @@
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<marks>
|
<marks>
|
||||||
<mark value="-1" position="bottom">Default</mark>
|
<mark value="-1" position="bottom" translatable="yes">Default</mark>
|
||||||
<mark value="10" position="bottom">10ms</mark>
|
<mark value="10" position="bottom">10ms</mark>
|
||||||
<mark value="20" position="bottom">20ms</mark>
|
<mark value="20" position="bottom">20ms</mark>
|
||||||
<mark value="30" position="bottom">30ms</mark>
|
<mark value="30" position="bottom">30ms</mark>
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwStatusPage">
|
<object class="AdwStatusPage">
|
||||||
<property name="title" translatable="true">Breezy Desktop GNOME invalid setup</property>
|
<property name="title" translatable="yes">Breezy Desktop GNOME invalid setup</property>
|
||||||
<property name="description" translatable="true">Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup script. Report this issue if it persists.</property>
|
<property name="description" translatable="yes">Your Breezy GNOME setup is invalid or incomplete. Please re-run the setup script. Report this issue if it persists.</property>
|
||||||
<property name="width-request">650</property>
|
<property name="width-request">650</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<interface>
|
<interface>
|
||||||
<requires lib="gtk" version="4.0"/>
|
<requires lib="gtk" version="4.0"/>
|
||||||
<template class="LicenseDialog" parent="GtkDialog">
|
<template class="LicenseDialog" parent="GtkDialog">
|
||||||
<property name="title">License Details</property>
|
<property name="title" translatable="yes">License Details</property>
|
||||||
<property name="modal">1</property>
|
<property name="modal">1</property>
|
||||||
<property name="default_width">440</property>
|
<property name="default_width">440</property>
|
||||||
<property name="default_height">200</property>
|
<property name="default_height">200</property>
|
||||||
|
|
@ -24,8 +24,8 @@
|
||||||
<property name="margin-top">10</property>
|
<property name="margin-top">10</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwActionRow">
|
<object class="AdwActionRow">
|
||||||
<property name="title" translatable="true">Donate</property>
|
<property name="title" translatable="yes">Donate</property>
|
||||||
<property name="subtitle" translatable="true">ko-fi.com/wheaney</property>
|
<property name="subtitle">ko-fi.com/wheaney</property>
|
||||||
<property name="subtitle-selectable">True</property>
|
<property name="subtitle-selectable">True</property>
|
||||||
<child type="suffix">
|
<child type="suffix">
|
||||||
<object class="GtkLinkButton">
|
<object class="GtkLinkButton">
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwEntryRow" id="request_token">
|
<object class="AdwEntryRow" id="request_token">
|
||||||
<property name="visible">0</property>
|
<property name="visible">0</property>
|
||||||
<property name="title" translatable="true">Request a token</property>
|
<property name="title" translatable="yes">Request a token</property>
|
||||||
<property name="input-purpose">6</property>
|
<property name="input-purpose">6</property>
|
||||||
<property name="show-apply-button">1</property>
|
<property name="show-apply-button">1</property>
|
||||||
</object>
|
</object>
|
||||||
|
|
@ -49,7 +49,7 @@
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwEntryRow" id="verify_token">
|
<object class="AdwEntryRow" id="verify_token">
|
||||||
<property name="visible">0</property>
|
<property name="visible">0</property>
|
||||||
<property name="title" translatable="true">Verify token</property>
|
<property name="title" translatable="yes">Verify token</property>
|
||||||
<property name="input-hints">16</property>
|
<property name="input-hints">16</property>
|
||||||
<property name="show-apply-button">1</property>
|
<property name="show-apply-button">1</property>
|
||||||
</object>
|
</object>
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwStatusPage">
|
<object class="AdwStatusPage">
|
||||||
<property name="title" translatable="true">No device connected</property>
|
<property name="title" translatable="yes">No device connected</property>
|
||||||
<property name="description" translatable="true">Breezy Desktop was unable to detect any supported XR devices.</property>
|
<property name="description" translatable="yes">Breezy Desktop was unable to detect any supported XR devices.</property>
|
||||||
<property name="width-request">650</property>
|
<property name="width-request">650</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwStatusPage">
|
<object class="AdwStatusPage">
|
||||||
<property name="title" translatable="true">No driver running</property>
|
<property name="title" translatable="yes">No driver running</property>
|
||||||
<property name="description" translatable="true">
|
<property name="description" translatable="yes">
|
||||||
If you installed via AUR, make sure you ran the recommended post-install command:
|
If you installed via AUR, make sure you ran the recommended post-install command:
|
||||||
systemctl --user enable --now xr-driver.service
|
systemctl --user enable --now xr-driver.service
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwStatusPage">
|
<object class="AdwStatusPage">
|
||||||
<property name="title" translatable="true">Breezy Desktop GNOME extension not ready</property>
|
<property name="title" translatable="yes">Breezy Desktop GNOME extension not ready</property>
|
||||||
<property name="description" translatable="true">If you have just run the setup, then you may need to log out and back in to use it. Otherwise, please follow the Breezy GNOME setup instructions.</property>
|
<property name="description" translatable="yes">If you have just run the setup, then you may need to log out and back in to use it. Otherwise, please follow the Breezy GNOME setup instructions.</property>
|
||||||
<property name="width-request">650</property>
|
<property name="width-request">650</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@
|
||||||
<property name="spacing">20</property>
|
<property name="spacing">20</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="AdwStatusPage">
|
<object class="AdwStatusPage">
|
||||||
<property name="title" translatable="true">No license file was found</property>
|
<property name="title" translatable="yes">No license file was found</property>
|
||||||
<property name="description" translatable="true">
|
<property name="description" translatable="yes">
|
||||||
The first time you use Breezy Desktop, an internet connection is required to retrieve your device's license.
|
The first time you use Breezy Desktop, an internet connection is required to retrieve your device's license.
|
||||||
|
|
||||||
Don't worry, there's no obligation to donate at this time. If you haven't, you'll be given a trial license so you can decide if Breezy Desktop fits your needs.
|
Don't worry, there's no obligation to donate at this time. If you haven't, you'll be given a trial license so you can decide if Breezy Desktop fits your needs.
|
||||||
|
|
@ -24,7 +24,7 @@
|
||||||
</child>
|
</child>
|
||||||
<child type="action">
|
<child type="action">
|
||||||
<object class="GtkButton" id="refresh_license_button">
|
<object class="GtkButton" id="refresh_license_button">
|
||||||
<property name="label" translatable="true">Try Again</property>
|
<property name="label" translatable="yes">Try Again</property>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<interface>
|
<interface>
|
||||||
<requires lib="gtk" version="4.0"/>
|
<requires lib="gtk" version="4.0"/>
|
||||||
<template class="ShortcutDialog" parent="GtkDialog">
|
<template class="ShortcutDialog" parent="GtkDialog">
|
||||||
<property name="title">Assign Keyboard Shortcut</property>
|
<property name="title" translatable="yes">Assign Keyboard Shortcut</property>
|
||||||
<property name="modal">1</property>
|
<property name="modal">1</property>
|
||||||
<property name="default_width">440</property>
|
<property name="default_width">440</property>
|
||||||
<property name="default_height">200</property>
|
<property name="default_height">200</property>
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@
|
||||||
<attribute name="action">app.reset_driver</attribute>
|
<attribute name="action">app.reset_driver</attribute>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<attribute name="label" translatable="yes">_About BreezyDesktop</attribute>
|
<attribute name="label" translatable="yes">About BreezyDesktop</attribute>
|
||||||
<attribute name="action">app.about</attribute>
|
<attribute name="action">app.about</attribute>
|
||||||
</item>
|
</item>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,9 @@ from .statemanager import StateManager
|
||||||
from .licensetierrow import LicenseTierRow
|
from .licensetierrow import LicenseTierRow
|
||||||
from .licensefeaturerow import LicenseFeatureRow
|
from .licensefeaturerow import LicenseFeatureRow
|
||||||
from .xrdriveripc import XRDriverIPC
|
from .xrdriveripc import XRDriverIPC
|
||||||
|
import gettext
|
||||||
|
|
||||||
|
_ = gettext.gettext
|
||||||
|
|
||||||
@Gtk.Template(resource_path='/com/xronlinux/BreezyDesktop/gtk/license-dialog.ui')
|
@Gtk.Template(resource_path='/com/xronlinux/BreezyDesktop/gtk/license-dialog.ui')
|
||||||
class LicenseDialog(Gtk.Dialog):
|
class LicenseDialog(Gtk.Dialog):
|
||||||
|
|
@ -43,7 +46,7 @@ class LicenseDialog(Gtk.Dialog):
|
||||||
|
|
||||||
for child in self.tiers:
|
for child in self.tiers:
|
||||||
self.tiers.remove(child)
|
self.tiers.remove(child)
|
||||||
tiers_group = Adw.PreferencesGroup(title="Paid Tier Status", margin_top=20)
|
tiers_group = Adw.PreferencesGroup(title=_("Paid Tier Status"), margin_top=20)
|
||||||
self.tiers.append(tiers_group)
|
self.tiers.append(tiers_group)
|
||||||
|
|
||||||
for tier_name, tier_details in license_view['tiers'].items():
|
for tier_name, tier_details in license_view['tiers'].items():
|
||||||
|
|
@ -51,7 +54,7 @@ class LicenseDialog(Gtk.Dialog):
|
||||||
|
|
||||||
for child in self.features:
|
for child in self.features:
|
||||||
self.features.remove(child)
|
self.features.remove(child)
|
||||||
features_group = Adw.PreferencesGroup(title="Feature Availability", margin_top=20)
|
features_group = Adw.PreferencesGroup(title=_("Feature Availability"), margin_top=20)
|
||||||
self.features.append(features_group)
|
self.features.append(features_group)
|
||||||
|
|
||||||
for feature_name, feature_details in license_view['features'].items():
|
for feature_name, feature_details in license_view['features'].items():
|
||||||
|
|
|
||||||
|
|
@ -1,30 +1,37 @@
|
||||||
from gi.repository import Adw
|
from gi.repository import Adw
|
||||||
|
|
||||||
from .time import time_remaining_text
|
from .time import time_remaining_text
|
||||||
|
import gettext
|
||||||
|
|
||||||
FEATURE_NAMES = {
|
_ = gettext.gettext
|
||||||
'sbs': 'Side-by-side mode (gaming)',
|
|
||||||
'smooth_follow': 'Smooth Follow (gaming)',
|
|
||||||
'productivity_basic': 'Breezy Desktop (productivity)',
|
|
||||||
'productivity_pro': 'Breezy Desktop Pro (productivity)',
|
|
||||||
}
|
|
||||||
|
|
||||||
class LicenseFeatureRow(Adw.ActionRow):
|
class LicenseFeatureRow(Adw.ActionRow):
|
||||||
|
|
||||||
def __init__(self, feature, feature_details):
|
def __init__(self, feature, feature_details):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
self.set_title(FEATURE_NAMES[feature])
|
self.set_title(self._feature_name(feature))
|
||||||
|
|
||||||
status = 'Disabled'
|
status = _('Disabled')
|
||||||
is_trial = feature_details.get('is_trial') == True
|
is_trial = feature_details.get('is_trial') == True
|
||||||
if feature_details.get('is_enabled') == True:
|
if feature_details.get('is_enabled') == True:
|
||||||
status = 'In trial' if is_trial else 'Enabled'
|
status = _('In trial') if is_trial else _('Enabled')
|
||||||
|
|
||||||
details = ''
|
details = ''
|
||||||
funds_needed_in_seconds = feature_details.get('funds_needed_in_seconds')
|
funds_needed_in_seconds = feature_details.get('funds_needed_in_seconds')
|
||||||
if funds_needed_in_seconds is not None and funds_needed_in_seconds > 0:
|
if funds_needed_in_seconds is not None and funds_needed_in_seconds > 0:
|
||||||
time_remaining = time_remaining_text(funds_needed_in_seconds, is_trial)
|
time_remaining = time_remaining_text(funds_needed_in_seconds, is_trial)
|
||||||
if time_remaining: details = f" ({time_remaining} remaining)"
|
if time_remaining: details = _(" ({time_remaining} remaining)").format(time_remaining=time_remaining)
|
||||||
|
|
||||||
self.set_subtitle(f"{status}{details}")
|
self.set_subtitle(f"{status}{details}")
|
||||||
|
|
||||||
|
def _feature_name(self, feature):
|
||||||
|
print(f"Translating feature: {feature}")
|
||||||
|
print(f"_ is: {_}")
|
||||||
|
feature_names = {
|
||||||
|
'sbs': lambda: gettext.gettext('Side-by-side mode (gaming)'),
|
||||||
|
'smooth_follow': lambda: _('Smooth Follow (gaming)'),
|
||||||
|
'productivity_basic': lambda: _('Breezy Desktop (productivity)')
|
||||||
|
}
|
||||||
|
print(f"Translated string: {feature_names[feature]()}")
|
||||||
|
return feature_names[feature]()
|
||||||
|
|
@ -1,18 +1,9 @@
|
||||||
from gi.repository import Adw, Gtk
|
from gi.repository import Adw, Gtk
|
||||||
|
|
||||||
from .time import time_remaining_text
|
from .time import time_remaining_text
|
||||||
|
import gettext
|
||||||
|
|
||||||
TIER_NAMES = {
|
_ = gettext.gettext
|
||||||
'supporter': 'Gaming',
|
|
||||||
'subscriber': 'Productivity',
|
|
||||||
'subscriber_pro': 'Productivity Pro',
|
|
||||||
}
|
|
||||||
|
|
||||||
PERIOD_DESCRIPTIONS = {
|
|
||||||
'monthly': ' - renewing monthly',
|
|
||||||
'yearly': ' - renewing yearly',
|
|
||||||
'lifetime': 'with lifetime access',
|
|
||||||
}
|
|
||||||
|
|
||||||
PERIOD_RANKS = {
|
PERIOD_RANKS = {
|
||||||
'monthly': 1,
|
'monthly': 1,
|
||||||
|
|
@ -25,18 +16,18 @@ class LicenseTierRow(Adw.ExpanderRow):
|
||||||
def __init__(self, tier, tier_details):
|
def __init__(self, tier, tier_details):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|
||||||
self.set_title(TIER_NAMES[tier])
|
self.set_title(self._tier_name(tier))
|
||||||
|
|
||||||
active_period = tier_details.get('active_period')
|
active_period = tier_details.get('active_period')
|
||||||
funds_needed_in_seconds = tier_details.get('funds_needed_in_seconds')
|
funds_needed_in_seconds = tier_details.get('funds_needed_in_seconds')
|
||||||
|
|
||||||
status = 'Active' if active_period else 'Inactive'
|
status = _('Active') if active_period else _('Inactive')
|
||||||
details = ''
|
details = ''
|
||||||
if active_period:
|
if active_period:
|
||||||
details += f" {PERIOD_DESCRIPTIONS[active_period]}"
|
details += f" {self._period_description[active_period]}"
|
||||||
if funds_needed_in_seconds is not None and funds_needed_in_seconds > 0:
|
if funds_needed_in_seconds is not None and funds_needed_in_seconds > 0:
|
||||||
time_remaining = time_remaining_text(funds_needed_in_seconds)
|
time_remaining = time_remaining_text(funds_needed_in_seconds)
|
||||||
if time_remaining: details += f" ({time_remaining} remaining)"
|
if time_remaining: details += _(" ({time_remaining} remaining)").format(time_remaining=time_remaining)
|
||||||
if active_period == 'lifetime':
|
if active_period == 'lifetime':
|
||||||
self.set_enable_expansion(False)
|
self.set_enable_expansion(False)
|
||||||
self.set_icon_name(None)
|
self.set_icon_name(None)
|
||||||
|
|
@ -47,17 +38,41 @@ class LicenseTierRow(Adw.ExpanderRow):
|
||||||
for period, amount in tier_details['funds_needed_by_period'].items():
|
for period, amount in tier_details['funds_needed_by_period'].items():
|
||||||
amount_text = None
|
amount_text = None
|
||||||
if amount > 0:
|
if amount > 0:
|
||||||
amount_text = f"<b>${amount}</b> USD"
|
amount_text = _("<b>${amount}</b> USD").format(amount=amount)
|
||||||
if active_period == period:
|
if active_period == period:
|
||||||
amount_text += " to renew"
|
amount_text += _(" to renew")
|
||||||
elif active_period is not None:
|
elif active_period is not None:
|
||||||
amount_text += " to upgrade"
|
amount_text += _(" to upgrade")
|
||||||
elif active_period is not None and PERIOD_RANKS[period] >= PERIOD_RANKS[active_period]:
|
elif active_period is not None and PERIOD_RANKS[period] >= PERIOD_RANKS[active_period]:
|
||||||
amount_text = "Paid through next renewal period"
|
amount_text = _("Paid through next renewal period")
|
||||||
|
|
||||||
if amount_text is not None:
|
if amount_text is not None:
|
||||||
row_widget = Adw.ActionRow(title=period.capitalize())
|
row_widget = Adw.ActionRow(title=self._period_name(period))
|
||||||
row_widget.add_suffix(Gtk.Label(label=amount_text, use_markup=True))
|
row_widget.add_suffix(Gtk.Label(label=amount_text, use_markup=True))
|
||||||
self.add_row(row_widget)
|
self.add_row(row_widget)
|
||||||
|
|
||||||
|
def _tier_name(self, tier):
|
||||||
|
tier_names = {
|
||||||
|
'supporter': _('Gaming'),
|
||||||
|
'subscriber': _('Productivity')
|
||||||
|
}
|
||||||
|
return tier_names[tier]
|
||||||
|
|
||||||
|
def _period_description(self, period):
|
||||||
|
period_descriptions = {
|
||||||
|
'monthly': _(' - renewing monthly'),
|
||||||
|
'yearly': _(' - renewing yearly'),
|
||||||
|
'lifetime': _('with lifetime access'),
|
||||||
|
}
|
||||||
|
|
||||||
|
return period_descriptions[period]
|
||||||
|
|
||||||
|
def _period_name(self, period):
|
||||||
|
period_names = {
|
||||||
|
'monthly': _('Monthly'),
|
||||||
|
'yearly': _('Yearly'),
|
||||||
|
'lifetime': _('Lifetime'),
|
||||||
|
}
|
||||||
|
|
||||||
|
return period_names[period]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,9 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
import gettext
|
||||||
import gi
|
import gi
|
||||||
|
import locale
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
@ -30,6 +32,15 @@ gi.require_version('Adw', '1')
|
||||||
gi.require_version('Gio', '2.0')
|
gi.require_version('Gio', '2.0')
|
||||||
gi.require_version('GLib', '2.0')
|
gi.require_version('GLib', '2.0')
|
||||||
|
|
||||||
|
script_dir = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
po_dir = os.path.join(script_dir, 'po')
|
||||||
|
locale_dir = '/app/share/locale'
|
||||||
|
|
||||||
|
locale.setlocale(locale.LC_ALL, '')
|
||||||
|
locale.bindtextdomain('breezydesktop', None)
|
||||||
|
gettext.bindtextdomain('breezydesktop', None)
|
||||||
|
gettext.textdomain('breezydesktop')
|
||||||
|
|
||||||
from gi.repository import Adw, Gtk, Gio
|
from gi.repository import Adw, Gtk, Gio
|
||||||
from .licensedialog import LicenseDialog
|
from .licensedialog import LicenseDialog
|
||||||
from .statemanager import StateManager
|
from .statemanager import StateManager
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,7 @@
|
||||||
from gi.repository import Gtk, Gdk
|
from gi.repository import Gtk, Gdk
|
||||||
|
import gettext
|
||||||
|
|
||||||
|
_ = gettext.gettext
|
||||||
|
|
||||||
from .settingsmanager import SettingsManager
|
from .settingsmanager import SettingsManager
|
||||||
|
|
||||||
|
|
@ -101,7 +104,7 @@ def on_assign_shortcut(window, widget):
|
||||||
|
|
||||||
def reload_shortcut_widget(widget, label):
|
def reload_shortcut_widget(widget, label):
|
||||||
shortcut = SettingsManager.get_instance().settings.get_strv(widget.get_name())
|
shortcut = SettingsManager.get_instance().settings.get_strv(widget.get_name())
|
||||||
label.set_accelerator(shortcut[0] if len(shortcut) > 0 else 'Disabled')
|
label.set_accelerator(shortcut[0] if len(shortcut) > 0 else _('Disabled'))
|
||||||
|
|
||||||
def reload_shortcut_widgets(widget_tuples):
|
def reload_shortcut_widgets(widget_tuples):
|
||||||
for widget_tuple in widget_tuples:
|
for widget_tuple in widget_tuples:
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,7 @@
|
||||||
from math import floor
|
from math import floor
|
||||||
|
import gettext
|
||||||
|
|
||||||
|
_ = gettext.gettext
|
||||||
|
|
||||||
# we'll begin to alert the user when there's less than a week left
|
# we'll begin to alert the user when there's less than a week left
|
||||||
LICENSE_WARN_SECONDS = 60 * 60 * 24 * 7
|
LICENSE_WARN_SECONDS = 60 * 60 * 24 * 7
|
||||||
|
|
@ -8,12 +11,12 @@ def time_remaining_text(seconds, no_cap=False):
|
||||||
return
|
return
|
||||||
|
|
||||||
if seconds / 60 < 60:
|
if seconds / 60 < 60:
|
||||||
return 'less than an hour'
|
return _('less than an hour')
|
||||||
elif seconds / (60 * 60) < 24:
|
elif seconds / (60 * 60) < 24:
|
||||||
time_remaining = floor(seconds / (60 * 60))
|
time_remaining = floor(seconds / (60 * 60))
|
||||||
return '1 hour' if time_remaining == 1 else f'{time_remaining} hours'
|
return _('1 hour') if time_remaining == 1 else _("{time_remaining} hours").format(time_remaining=time_remaining)
|
||||||
elif seconds / (24 * 60 * 60) < 30 or no_cap:
|
elif seconds / (24 * 60 * 60) < 30 or no_cap:
|
||||||
time_remaining = floor(seconds / (24 * 60 * 60))
|
time_remaining = floor(seconds / (24 * 60 * 60))
|
||||||
return '1 day' if time_remaining == 1 else f'{time_remaining} days'
|
return _('1 day') if time_remaining == 1 else _("{time_remaining} days").format(time_remaining=time_remaining)
|
||||||
else:
|
else:
|
||||||
return
|
return
|
||||||
Loading…
Reference in New Issue