From 36390cc3d686087cdde6e105eb79e91d41b2dc4a Mon Sep 17 00:00:00 2001 From: crschnick Date: Wed, 10 Apr 2024 20:36:18 +0000 Subject: [PATCH] String fixes --- .../xpipe/app/browser/file/BrowserFileListComp.java | 13 +++++++++---- .../io/xpipe/app/comp/store/StoreCreationMenu.java | 3 ++- .../io/xpipe/app/comp/store/StoreEntryComp.java | 3 +-- .../app/comp/store/StoreProviderChoiceComp.java | 11 ++++++++--- app/src/main/java/io/xpipe/app/core/AppTheme.java | 4 ---- .../exchange/cli/StoreProviderListExchangeImpl.java | 2 +- .../java/io/xpipe/app/ext/DataStoreProvider.java | 12 ++++-------- .../main/java/io/xpipe/app/prefs/AboutCategory.java | 7 ++++--- app/src/main/java/io/xpipe/app/util/JfxHelper.java | 9 ++++++--- lang/app/strings/translations_de.properties | 3 +++ lang/app/strings/translations_en.properties | 4 ++++ lang/app/strings/translations_es.properties | 3 +++ lang/app/strings/translations_fr.properties | 3 +++ lang/app/strings/translations_it.properties | 7 +++++-- lang/app/strings/translations_ja.properties | 3 +++ lang/app/strings/translations_nl.properties | 3 +++ lang/app/strings/translations_pt.properties | 7 +++++-- lang/app/strings/translations_ru.properties | 5 ++++- lang/app/strings/translations_zh.properties | 3 +++ lang/proc/strings/translations_it.properties | 2 +- lang/proc/strings/translations_ru.properties | 2 +- lang/uacc/strings/translations_de.properties | 2 ++ lang/uacc/strings/translations_en.properties | 6 +++++- lang/uacc/strings/translations_es.properties | 2 ++ lang/uacc/strings/translations_fr.properties | 2 ++ lang/uacc/strings/translations_it.properties | 2 ++ lang/uacc/strings/translations_ja.properties | 2 ++ lang/uacc/strings/translations_nl.properties | 2 ++ lang/uacc/strings/translations_pt.properties | 2 ++ lang/uacc/strings/translations_ru.properties | 2 ++ lang/uacc/strings/translations_zh.properties | 2 ++ 31 files changed, 96 insertions(+), 37 deletions(-) diff --git a/app/src/main/java/io/xpipe/app/browser/file/BrowserFileListComp.java b/app/src/main/java/io/xpipe/app/browser/file/BrowserFileListComp.java index 534adb8d2..71941f01e 100644 --- a/app/src/main/java/io/xpipe/app/browser/file/BrowserFileListComp.java +++ b/app/src/main/java/io/xpipe/app/browser/file/BrowserFileListComp.java @@ -5,6 +5,7 @@ import atlantafx.base.theme.Styles; import io.xpipe.app.browser.action.BrowserAction; import io.xpipe.app.browser.icon.FileIconManager; import io.xpipe.app.comp.base.LazyTextFieldComp; +import io.xpipe.app.core.AppI18n; import io.xpipe.app.fxcomps.SimpleComp; import io.xpipe.app.fxcomps.SimpleCompStructure; import io.xpipe.app.fxcomps.augment.ContextMenuAugment; @@ -70,7 +71,8 @@ public final class BrowserFileListComp extends SimpleComp { @SuppressWarnings("unchecked") private TableView createTable() { - var filenameCol = new TableColumn("Name"); + var filenameCol = new TableColumn(); + filenameCol.textProperty().bind(AppI18n.observable("name")); filenameCol.setCellValueFactory(param -> new SimpleStringProperty( param.getValue() != null ? FileNames.getFileName( @@ -80,17 +82,20 @@ public final class BrowserFileListComp extends SimpleComp { filenameCol.setSortType(ASCENDING); filenameCol.setCellFactory(col -> new FilenameCell(fileList.getEditing())); - var sizeCol = new TableColumn("Size"); + var sizeCol = new TableColumn(); + sizeCol.textProperty().bind(AppI18n.observable("size")); sizeCol.setCellValueFactory(param -> new SimpleLongProperty( param.getValue().getRawFileEntry().resolved().getSize())); sizeCol.setCellFactory(col -> new FileSizeCell()); - var mtimeCol = new TableColumn("Modified"); + var mtimeCol = new TableColumn(); + mtimeCol.textProperty().bind(AppI18n.observable("modified")); mtimeCol.setCellValueFactory(param -> new SimpleObjectProperty<>( param.getValue().getRawFileEntry().resolved().getDate())); mtimeCol.setCellFactory(col -> new FileTimeCell()); - var modeCol = new TableColumn("Attributes"); + var modeCol = new TableColumn(); + modeCol.textProperty().bind(AppI18n.observable("attributes")); modeCol.setCellValueFactory(param -> new SimpleObjectProperty<>( param.getValue().getRawFileEntry().resolved().getMode())); modeCol.setCellFactory(col -> new FileModeCell()); diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java b/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java index f89fd48dd..e9d0a86d1 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreCreationMenu.java @@ -84,7 +84,8 @@ public class StoreCreationMenu { event.consume(); }); sub.forEach(dataStoreProvider -> { - var item = new MenuItem(dataStoreProvider.getDisplayName()); + var item = new MenuItem(); + item.textProperty().bind(dataStoreProvider.displayName()); item.setGraphic(PrettyImageHelper.ofFixedSizeSquare(dataStoreProvider.getDisplayIconFileName(null), 16) .createRegion()); item.setOnAction(event -> { diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java index dd2680d0e..e08790469 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreEntryComp.java @@ -175,8 +175,7 @@ public abstract class StoreEntryComp extends SimpleComp { var imageComp = PrettyImageHelper.ofFixedSize(img, w, h); var storeIcon = imageComp.createRegion(); if (wrapper.getValidity().getValue().isUsable()) { - new TooltipAugment<>(new SimpleStringProperty( - wrapper.getEntry().getProvider().getDisplayName())) + new TooltipAugment<>(wrapper.getEntry().getProvider().displayName()) .augment(storeIcon); } diff --git a/app/src/main/java/io/xpipe/app/comp/store/StoreProviderChoiceComp.java b/app/src/main/java/io/xpipe/app/comp/store/StoreProviderChoiceComp.java index e9af0f355..9c3de63d0 100644 --- a/app/src/main/java/io/xpipe/app/comp/store/StoreProviderChoiceComp.java +++ b/app/src/main/java/io/xpipe/app/comp/store/StoreProviderChoiceComp.java @@ -39,7 +39,7 @@ public class StoreProviderChoiceComp extends Comp(); diff --git a/app/src/main/java/io/xpipe/app/core/AppTheme.java b/app/src/main/java/io/xpipe/app/core/AppTheme.java index 548efe347..bb45d3796 100644 --- a/app/src/main/java/io/xpipe/app/core/AppTheme.java +++ b/app/src/main/java/io/xpipe/app/core/AppTheme.java @@ -88,10 +88,6 @@ public class AppTheme { try { var c = new WindowControl(stage); c.setWindowAttribute(20, AppPrefs.get().theme.getValue().isDark()); - stage.setWidth(stage.getWidth() + 1); - Platform.runLater(() -> { - stage.setWidth(stage.getWidth() - 1); - }); } catch (Throwable e) { ErrorEvent.fromThrowable(e).handle(); } diff --git a/app/src/main/java/io/xpipe/app/exchange/cli/StoreProviderListExchangeImpl.java b/app/src/main/java/io/xpipe/app/exchange/cli/StoreProviderListExchangeImpl.java index 50833abee..b89861049 100644 --- a/app/src/main/java/io/xpipe/app/exchange/cli/StoreProviderListExchangeImpl.java +++ b/app/src/main/java/io/xpipe/app/exchange/cli/StoreProviderListExchangeImpl.java @@ -22,7 +22,7 @@ public class StoreProviderListExchangeImpl extends StoreProviderListExchange .filter(dataStoreProvider -> category.equals(dataStoreProvider.getCreationCategory())) .map(p -> ProviderEntry.builder() .id(p.getId()) - .description(p.getDisplayDescription()) + .description(p.displayDescription().getValue()) .hidden(p.getCreationCategory() == null) .build()) .toList())); diff --git a/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java b/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java index e287dd887..24bf7fbd0 100644 --- a/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java +++ b/app/src/main/java/io/xpipe/app/ext/DataStoreProvider.java @@ -147,19 +147,15 @@ public interface DataStoreProvider { return new SimpleStringProperty(null); } - default String i18n(String key) { - return AppI18n.get(getId() + "." + key); + default ObservableValue i18n(String key) { + return AppI18n.observable(getId() + "." + key); } - default String i18nKey(String key) { - return getId() + "." + key; - } - - default String getDisplayName() { + default ObservableValue displayName() { return i18n("displayName"); } - default String getDisplayDescription() { + default ObservableValue displayDescription() { return i18n("displayDescription"); } diff --git a/app/src/main/java/io/xpipe/app/prefs/AboutCategory.java b/app/src/main/java/io/xpipe/app/prefs/AboutCategory.java index 4110c58ef..d4addda96 100644 --- a/app/src/main/java/io/xpipe/app/prefs/AboutCategory.java +++ b/app/src/main/java/io/xpipe/app/prefs/AboutCategory.java @@ -11,6 +11,7 @@ import io.xpipe.app.fxcomps.impl.VerticalComp; import io.xpipe.app.util.Hyperlinks; import io.xpipe.app.util.JfxHelper; import io.xpipe.app.util.OptionsBuilder; +import javafx.beans.property.SimpleStringProperty; import javafx.geometry.Insets; import javafx.scene.control.ScrollPane; import javafx.scene.layout.Region; @@ -101,9 +102,9 @@ public class AboutCategory extends AppPrefsCategory { private Comp createProperties() { var title = Comp.of(() -> { return JfxHelper.createNamedEntry( - AppI18n.get("xPipeClient"), - "Version " + AppProperties.get().getVersion() + " (" - + AppProperties.get().getArch() + ")", + AppI18n.observable("xPipeClient"), + new SimpleStringProperty("Version " + AppProperties.get().getVersion() + " (" + + AppProperties.get().getArch() + ")"), "logo.png"); }) .styleClass(Styles.TEXT_BOLD); diff --git a/app/src/main/java/io/xpipe/app/util/JfxHelper.java b/app/src/main/java/io/xpipe/app/util/JfxHelper.java index b704bf8c4..64512f105 100644 --- a/app/src/main/java/io/xpipe/app/util/JfxHelper.java +++ b/app/src/main/java/io/xpipe/app/util/JfxHelper.java @@ -3,6 +3,7 @@ package io.xpipe.app.util; import atlantafx.base.controls.Spacer; import io.xpipe.app.core.AppFont; import io.xpipe.app.fxcomps.impl.PrettyImageHelper; +import javafx.beans.value.ObservableValue; import javafx.geometry.Pos; import javafx.scene.control.Label; import javafx.scene.layout.HBox; @@ -11,10 +12,12 @@ import javafx.scene.layout.VBox; public class JfxHelper { - public static Region createNamedEntry(String nameString, String descString, String image) { - var header = new Label(nameString); + public static Region createNamedEntry(ObservableValue nameString, ObservableValue descString, String image) { + var header = new Label(); + header.textProperty().bind(nameString); AppFont.header(header); - var desc = new Label(descString); + var desc = new Label(); + desc.textProperty().bind(descString); AppFont.small(desc); var text = new VBox(header, new Spacer(), desc); text.setAlignment(Pos.CENTER_LEFT); diff --git a/lang/app/strings/translations_de.properties b/lang/app/strings/translations_de.properties index 42434536f..32b0bddc1 100644 --- a/lang/app/strings/translations_de.properties +++ b/lang/app/strings/translations_de.properties @@ -428,3 +428,6 @@ goodEvening=Guten Abend addVisual=Visuell ... ssh=SSH sshConfiguration=SSH-Konfiguration +size=Größe +attributes=Attribute +modified=Geändert diff --git a/lang/app/strings/translations_en.properties b/lang/app/strings/translations_en.properties index 1b06a3e00..eef2827af 100644 --- a/lang/app/strings/translations_en.properties +++ b/lang/app/strings/translations_en.properties @@ -432,3 +432,7 @@ goodEvening=Good evening addVisual=Visual ... ssh=SSH sshConfiguration=SSH Configuration +size=Size +attributes=Attributes +#context: title, last modified date +modified=Modified diff --git a/lang/app/strings/translations_es.properties b/lang/app/strings/translations_es.properties index 2d66e9f54..d25ffb25d 100644 --- a/lang/app/strings/translations_es.properties +++ b/lang/app/strings/translations_es.properties @@ -418,3 +418,6 @@ goodEvening=Buenas noches addVisual=Visual ... ssh=SSH sshConfiguration=Configuración SSH +size=Tamaño +attributes=Atributos +modified=Modificado diff --git a/lang/app/strings/translations_fr.properties b/lang/app/strings/translations_fr.properties index 5b6dcad91..4230d30ee 100644 --- a/lang/app/strings/translations_fr.properties +++ b/lang/app/strings/translations_fr.properties @@ -418,3 +418,6 @@ goodEvening=Bonne soirée addVisual=Visual ... ssh=SSH sshConfiguration=Configuration SSH +size=Taille +attributes=Attributs +modified=Modifié diff --git a/lang/app/strings/translations_it.properties b/lang/app/strings/translations_it.properties index 8362dd7bb..30bd83725 100644 --- a/lang/app/strings/translations_it.properties +++ b/lang/app/strings/translations_it.properties @@ -128,7 +128,7 @@ yes=Sì no=No errorOccured=Si è verificato un errore terminalErrorOccured=Si è verificato un errore del terminale -errorTypeOccured=È stata lanciata un'eccezione del tipo $TYPE$ +errorTypeOccured=È stata lanciata un'eccezione del tipo $TYPE$ permissionsAlertTitle=Permessi richiesti permissionsAlertHeader=Per eseguire questa operazione sono necessari ulteriori permessi. permissionsAlertContent=Segui il pop-up per dare a XPipe i permessi richiesti nel menu delle impostazioni. @@ -138,7 +138,7 @@ updateReadyAlertHeader=L'aggiornamento alla versione $VERSION$ è pronto per ess updateReadyAlertContent=Questo installerà la nuova versione e riavvierà XPipe al termine dell'installazione. errorNoDetail=Non sono disponibili dettagli sull'errore updateAvailableTitle=Aggiornamento disponibile -updateAvailableHeader=È disponibile l'aggiornamento di XPipe alla versione $VERSION$ +updateAvailableHeader=È disponibile l'aggiornamento di XPipe alla versione $VERSION$ updateAvailableContent=Anche se non è stato possibile avviare XPipe, puoi provare a installare l'aggiornamento per risolvere il problema. clipboardActionDetectedTitle=Azione Appunti rilevata clipboardActionDetectedHeader=Vuoi importare il contenuto dei tuoi appunti? @@ -418,3 +418,6 @@ goodEvening=Buona sera addVisual=Visual ... ssh=SSH sshConfiguration=Configurazione SSH +size=Dimensione +attributes=Attributi +modified=Modificato diff --git a/lang/app/strings/translations_ja.properties b/lang/app/strings/translations_ja.properties index 9e8dd1fee..6f5d966e3 100644 --- a/lang/app/strings/translations_ja.properties +++ b/lang/app/strings/translations_ja.properties @@ -418,3 +418,6 @@ goodEvening=こんばんは addVisual=ビジュアル ... ssh=SSH sshConfiguration=SSHの設定 +size=サイズ +attributes=属性 +modified=変更された diff --git a/lang/app/strings/translations_nl.properties b/lang/app/strings/translations_nl.properties index ca77b2603..50525fb76 100644 --- a/lang/app/strings/translations_nl.properties +++ b/lang/app/strings/translations_nl.properties @@ -418,3 +418,6 @@ goodEvening=Goedenavond addVisual=Visuele ... ssh=SSH sshConfiguration=SSH-configuratie +size=Grootte +attributes=Attributen +modified=Gewijzigd diff --git a/lang/app/strings/translations_pt.properties b/lang/app/strings/translations_pt.properties index 9bde8c1ae..b931e3975 100644 --- a/lang/app/strings/translations_pt.properties +++ b/lang/app/strings/translations_pt.properties @@ -128,7 +128,7 @@ yes=Sim no=Não errorOccured=Ocorreu um erro terminalErrorOccured=Ocorreu um erro no terminal -errorTypeOccured=Foi lançada uma exceção do tipo $TYPE$ +errorTypeOccured=Foi lançada uma exceção do tipo $TYPE$ permissionsAlertTitle=Permissões necessárias permissionsAlertHeader=São necessárias permissões adicionais para efetuar esta operação. permissionsAlertContent=Segue a janela pop-up para dar ao XPipe as permissões necessárias no menu de definições. @@ -138,7 +138,7 @@ updateReadyAlertHeader=Uma atualização para a versão $VERSION$ está pronta p updateReadyAlertContent=Instala a nova versão e reinicia o XPipe quando a instalação estiver concluída. errorNoDetail=Não há detalhes de erro disponíveis updateAvailableTitle=Atualização disponível -updateAvailableHeader=Está disponível para instalação uma atualização do XPipe para a versão $VERSION$ +updateAvailableHeader=Está disponível para instalação uma atualização do XPipe para a versão $VERSION$ updateAvailableContent=Apesar de não ter sido possível iniciar o XPipe, podes tentar instalar a atualização para potencialmente corrigir o problema. clipboardActionDetectedTitle=Ação da área de transferência detectada clipboardActionDetectedHeader=Queres importar o conteúdo da tua área de transferência? @@ -418,3 +418,6 @@ goodEvening=Boa noite addVisual=Visual ... ssh=SSH sshConfiguration=Configuração SSH +size=Tamanho +attributes=Atribui +modified=Modificado diff --git a/lang/app/strings/translations_ru.properties b/lang/app/strings/translations_ru.properties index a6105800b..712f5a169 100644 --- a/lang/app/strings/translations_ru.properties +++ b/lang/app/strings/translations_ru.properties @@ -128,7 +128,7 @@ yes=Да no=Нет errorOccured=Произошла ошибка terminalErrorOccured=Произошла ошибка терминала -errorTypeOccured=Возникло исключение типа $TYPE$ +errorTypeOccured=Возникло исключение типа $TYPE$ permissionsAlertTitle=Необходимые разрешения permissionsAlertHeader=Для выполнения этой операции необходимы дополнительные разрешения. permissionsAlertContent=Проследи за всплывающим окном, чтобы дать XPipe необходимые разрешения в меню настроек. @@ -418,3 +418,6 @@ goodEvening=Добрый вечер addVisual=Visual ... ssh=SSH sshConfiguration=Конфигурация SSH +size=Размер +attributes=Атрибуты +modified=Изменено diff --git a/lang/app/strings/translations_zh.properties b/lang/app/strings/translations_zh.properties index dde09ad51..e0bd5a4c5 100644 --- a/lang/app/strings/translations_zh.properties +++ b/lang/app/strings/translations_zh.properties @@ -418,3 +418,6 @@ goodEvening=晚上好 addVisual=Visual ... ssh=SSH sshConfiguration=SSH 配置 +size=大小 +attributes=属性 +modified=已修改 diff --git a/lang/proc/strings/translations_it.properties b/lang/proc/strings/translations_it.properties index 66d4fb0e2..73561de67 100644 --- a/lang/proc/strings/translations_it.properties +++ b/lang/proc/strings/translations_it.properties @@ -234,7 +234,7 @@ default=Predefinito wslHost=Host WSL timeout=Timeout installLocation=Posizione di installazione -installLocationDescription=La posizione in cui è installato l'ambiente $NAME$ +installLocationDescription=La posizione in cui è installato l'ambiente $NAME$ wsl.displayName=Sottosistema Windows per Linux wsl.displayDescription=Connettersi a un'istanza WSL in esecuzione su Windows docker.displayName=Contenitore Docker diff --git a/lang/proc/strings/translations_ru.properties b/lang/proc/strings/translations_ru.properties index 08b2c6f02..56a627223 100644 --- a/lang/proc/strings/translations_ru.properties +++ b/lang/proc/strings/translations_ru.properties @@ -234,7 +234,7 @@ default=По умолчанию wslHost=WSL Host timeout=Таймаут installLocation=Место установки -installLocationDescription=Место, где установлена твоя среда $NAME$ +installLocationDescription=Место, где установлена твоя среда $NAME$ wsl.displayName=Подсистема Windows для Linux wsl.displayDescription=Подключитесь к экземпляру WSL, работающему под Windows docker.displayName=Докер-контейнер diff --git a/lang/uacc/strings/translations_de.properties b/lang/uacc/strings/translations_de.properties index 49bdf4b2c..b796ab241 100644 --- a/lang/uacc/strings/translations_de.properties +++ b/lang/uacc/strings/translations_de.properties @@ -28,3 +28,5 @@ activate=Aktivieren Sie validUntil=Gültig bis licenseActivated=Lizenz aktiviert restart=Neustart +free=Kostenlos +active=Aktiv diff --git a/lang/uacc/strings/translations_en.properties b/lang/uacc/strings/translations_en.properties index 51afaf2fc..eb17625e2 100644 --- a/lang/uacc/strings/translations_en.properties +++ b/lang/uacc/strings/translations_en.properties @@ -27,4 +27,8 @@ clear=Clear activate=Activate validUntil=Valid until licenseActivated=License activated -restart=Restart \ No newline at end of file +restart=Restart +#context: No payment required +free=Free +#context: Currently selected +active=Active \ No newline at end of file diff --git a/lang/uacc/strings/translations_es.properties b/lang/uacc/strings/translations_es.properties index ec2581686..edd7138ba 100644 --- a/lang/uacc/strings/translations_es.properties +++ b/lang/uacc/strings/translations_es.properties @@ -28,3 +28,5 @@ activate=Activa validUntil=Válido hasta licenseActivated=Licencia activada restart=Reinicia +free=Gratis +active=Activo diff --git a/lang/uacc/strings/translations_fr.properties b/lang/uacc/strings/translations_fr.properties index cb9e120a8..167cc1752 100644 --- a/lang/uacc/strings/translations_fr.properties +++ b/lang/uacc/strings/translations_fr.properties @@ -28,3 +28,5 @@ activate=Activer validUntil=Valable jusqu'au licenseActivated=Licence activée restart=Redémarrer +free=Gratuit +active=Actif diff --git a/lang/uacc/strings/translations_it.properties b/lang/uacc/strings/translations_it.properties index 5957732e4..fb53fb929 100644 --- a/lang/uacc/strings/translations_it.properties +++ b/lang/uacc/strings/translations_it.properties @@ -28,3 +28,5 @@ activate=Attivare validUntil=Valido fino a licenseActivated=Licenza attivata restart=Riavvio +free=Gratuito +active=Attivo diff --git a/lang/uacc/strings/translations_ja.properties b/lang/uacc/strings/translations_ja.properties index 244a8e28b..8f33db3ed 100644 --- a/lang/uacc/strings/translations_ja.properties +++ b/lang/uacc/strings/translations_ja.properties @@ -28,3 +28,5 @@ activate=アクティブにする validUntil=有効期限 licenseActivated=ライセンスの有効化 restart=リスタート +free=無料 +active=アクティブ diff --git a/lang/uacc/strings/translations_nl.properties b/lang/uacc/strings/translations_nl.properties index c68656259..aa56f78bd 100644 --- a/lang/uacc/strings/translations_nl.properties +++ b/lang/uacc/strings/translations_nl.properties @@ -28,3 +28,5 @@ activate=Activeren validUntil=Geldig tot licenseActivated=Licentie geactiveerd restart=Herstart +free=Gratis +active=Actief diff --git a/lang/uacc/strings/translations_pt.properties b/lang/uacc/strings/translations_pt.properties index a3178682c..39b798804 100644 --- a/lang/uacc/strings/translations_pt.properties +++ b/lang/uacc/strings/translations_pt.properties @@ -28,3 +28,5 @@ activate=Ativar validUntil=Válido até licenseActivated=Licença activada restart=Reinicia +free=Gratuito +active=Ativo diff --git a/lang/uacc/strings/translations_ru.properties b/lang/uacc/strings/translations_ru.properties index 240c0df89..9d3443719 100644 --- a/lang/uacc/strings/translations_ru.properties +++ b/lang/uacc/strings/translations_ru.properties @@ -28,3 +28,5 @@ activate=Активируй validUntil=Действует до licenseActivated=Активированная лицензия restart=Перезапустите +free=Бесплатно +active=Активный diff --git a/lang/uacc/strings/translations_zh.properties b/lang/uacc/strings/translations_zh.properties index 5aba7bd81..d584aa279 100644 --- a/lang/uacc/strings/translations_zh.properties +++ b/lang/uacc/strings/translations_zh.properties @@ -28,3 +28,5 @@ activate=激活 validUntil=有效期至 licenseActivated=许可证已激活 restart=重新启动 +free=免费 +active=活动