mirror of
https://github.com/spalencsar/bearhub.git
synced 2026-07-07 00:04:15 +02:00
[core] improvement -> new settings property 'boot.load_apps' to prevent loading apps after the startup process
This commit is contained in:
@@ -38,6 +38,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||||||
- the index is now stored at **~/.cache/bauh/arch/aur/index.txt**.
|
- the index is now stored at **~/.cache/bauh/arch/aur/index.txt**.
|
||||||
- info window
|
- info window
|
||||||
- date fields format changed to numbers (e.g: Thu Dec 17 17:19:55 2020 -> 2020-12-17 17:19:55)
|
- date fields format changed to numbers (e.g: Thu Dec 17 17:19:55 2020 -> 2020-12-17 17:19:55)
|
||||||
|
- Core
|
||||||
|
- new settings property **boot.load_apps** (General -> Load apps after startup) that allows the user to choose if the installed packages/suggestions should be loaded on the management panel after the initialization process. Default: true.
|
||||||
|
<p align="center">
|
||||||
|
<img src="https://raw.githubusercontent.com/vinifmor/bauh-files/master/pictures/releases/0.9.11/load_apps.png">
|
||||||
|
</p>
|
||||||
|
|
||||||
- Web
|
- Web
|
||||||
- now the environment settings are cached for 24 hours. This period can be controlled through the new settings property **environment.update_interval** (in minutes -> default: 1440 = 24 hours. Use **0** so that they are always updated).
|
- now the environment settings are cached for 24 hours. This period can be controlled through the new settings property **environment.update_interval** (in minutes -> default: 1440 = 24 hours. Use **0** so that they are always updated).
|
||||||
<p align="center">
|
<p align="center">
|
||||||
|
|||||||
@@ -342,6 +342,8 @@ backup:
|
|||||||
upgrade: null # defines if the backup should be performed before upgrading a package. Allowed values: null (a dialog will be displayed asking if a snapshot should be generated), true: generates the backup without asking. false: disables the backup for this operation
|
upgrade: null # defines if the backup should be performed before upgrading a package. Allowed values: null (a dialog will be displayed asking if a snapshot should be generated), true: generates the backup without asking. false: disables the backup for this operation
|
||||||
downgrade: null # defines if the backup should be performed before downgrading a package. Allowed values: null (a dialog will be displayed asking if a snapshot should be generated), true: generates the backup without asking. false: disables the backup for this operation
|
downgrade: null # defines if the backup should be performed before downgrading a package. Allowed values: null (a dialog will be displayed asking if a snapshot should be generated), true: generates the backup without asking. false: disables the backup for this operation
|
||||||
type: rsync # defines the Timeshift backup mode -> 'rsync' (default) or 'btrfs'
|
type: rsync # defines the Timeshift backup mode -> 'rsync' (default) or 'btrfs'
|
||||||
|
boot:
|
||||||
|
load_apps: true # if the installed applications or suggestions should be loaded on the management panel after the initialization process. Default: true.
|
||||||
```
|
```
|
||||||
#### Tray icons
|
#### Tray icons
|
||||||
Priority:
|
Priority:
|
||||||
|
|||||||
@@ -71,7 +71,8 @@ def new_manage_panel(app_args: Namespace, app_config: dict, logger: logging.Logg
|
|||||||
context=context,
|
context=context,
|
||||||
manager=manager,
|
manager=manager,
|
||||||
i18n=i18n,
|
i18n=i18n,
|
||||||
manage_window=manage_window)
|
manage_window=manage_window,
|
||||||
|
app_config=app_config)
|
||||||
cache_cleaner.start()
|
cache_cleaner.start()
|
||||||
|
|
||||||
return app, prepare
|
return app, prepare
|
||||||
|
|||||||
@@ -64,6 +64,9 @@ def read_config(update_file: bool = False) -> dict:
|
|||||||
'upgrade': None,
|
'upgrade': None,
|
||||||
'mode': 'incremental',
|
'mode': 'incremental',
|
||||||
'type': 'rsync'
|
'type': 'rsync'
|
||||||
|
},
|
||||||
|
'boot': {
|
||||||
|
'load_apps': True
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -291,6 +291,12 @@ class GenericSettingsManager:
|
|||||||
max_width=default_width,
|
max_width=default_width,
|
||||||
id_="sys_notify")
|
id_="sys_notify")
|
||||||
|
|
||||||
|
select_load_apps = self._gen_bool_component(label=self.i18n['core.config.boot.load_apps'],
|
||||||
|
tooltip=self.i18n['core.config.boot.load_apps.tip'],
|
||||||
|
value=bool(core_config['boot']['load_apps']),
|
||||||
|
id_='boot.load_apps',
|
||||||
|
max_width=default_width)
|
||||||
|
|
||||||
select_sugs = self._gen_bool_component(label=self.i18n['core.config.suggestions.activated'].capitalize(),
|
select_sugs = self._gen_bool_component(label=self.i18n['core.config.suggestions.activated'].capitalize(),
|
||||||
tooltip=self.i18n['core.config.suggestions.activated.tip'].capitalize(),
|
tooltip=self.i18n['core.config.suggestions.activated.tip'].capitalize(),
|
||||||
id_="sugs_enabled",
|
id_="sugs_enabled",
|
||||||
@@ -312,7 +318,7 @@ class GenericSettingsManager:
|
|||||||
opts=[(self.i18n['ask'].capitalize(), True, None),
|
opts=[(self.i18n['ask'].capitalize(), True, None),
|
||||||
(self.i18n['no'].capitalize(), False, None)])
|
(self.i18n['no'].capitalize(), False, None)])
|
||||||
|
|
||||||
sub_comps = [FormComponent([select_locale, select_store_pwd, select_sysnotify, select_sugs, inp_sugs, inp_reboot], spaces=False)]
|
sub_comps = [FormComponent([select_locale, select_store_pwd, select_sysnotify, select_load_apps, select_sugs, inp_sugs, inp_reboot], spaces=False)]
|
||||||
return TabComponent(self.i18n['core.config.tab.general'].capitalize(), PanelComponent(sub_comps), None, 'core.gen')
|
return TabComponent(self.i18n['core.config.tab.general'].capitalize(), PanelComponent(sub_comps), None, 'core.gen')
|
||||||
|
|
||||||
def _gen_bool_component(self, label: str, tooltip: str, value: bool, id_: str, max_width: int = 200) -> SingleSelectComponent:
|
def _gen_bool_component(self, label: str, tooltip: str, value: bool, id_: str, max_width: int = 200) -> SingleSelectComponent:
|
||||||
@@ -352,6 +358,7 @@ class GenericSettingsManager:
|
|||||||
core_config['suggestions']['by_type'] = sugs_by_type
|
core_config['suggestions']['by_type'] = sugs_by_type
|
||||||
|
|
||||||
core_config['updates']['ask_for_reboot'] = general_form.get_component('ask_for_reboot').get_selected()
|
core_config['updates']['ask_for_reboot'] = general_form.get_component('ask_for_reboot').get_selected()
|
||||||
|
core_config['boot']['load_apps'] = general_form.get_component('boot.load_apps').get_selected()
|
||||||
|
|
||||||
# advanced
|
# advanced
|
||||||
adv_form = advanced.components[0]
|
adv_form = advanced.components[0]
|
||||||
|
|||||||
@@ -116,10 +116,12 @@ class PreparePanel(QWidget, TaskManager):
|
|||||||
signal_status = pyqtSignal(int)
|
signal_status = pyqtSignal(int)
|
||||||
signal_password_response = pyqtSignal(bool, str)
|
signal_password_response = pyqtSignal(bool, str)
|
||||||
|
|
||||||
def __init__(self, context: ApplicationContext, manager: SoftwareManager, screen_size: QSize, i18n: I18n, manage_window: QWidget):
|
def __init__(self, context: ApplicationContext, manager: SoftwareManager, screen_size: QSize,
|
||||||
|
i18n: I18n, manage_window: QWidget, app_config: dict):
|
||||||
super(PreparePanel, self).__init__(flags=Qt.CustomizeWindowHint | Qt.WindowTitleHint)
|
super(PreparePanel, self).__init__(flags=Qt.CustomizeWindowHint | Qt.WindowTitleHint)
|
||||||
self.i18n = i18n
|
self.i18n = i18n
|
||||||
self.context = context
|
self.context = context
|
||||||
|
self.app_config = app_config
|
||||||
self.manage_window = manage_window
|
self.manage_window = manage_window
|
||||||
self.setWindowTitle('{} ({})'.format(__app_name__, self.i18n['prepare_panel.title.start'].lower()))
|
self.setWindowTitle('{} ({})'.format(__app_name__, self.i18n['prepare_panel.title.start'].lower()))
|
||||||
self.setMinimumWidth(screen_size.width() * 0.5)
|
self.setMinimumWidth(screen_size.width() * 0.5)
|
||||||
@@ -406,6 +408,11 @@ class PreparePanel(QWidget, TaskManager):
|
|||||||
def finish(self):
|
def finish(self):
|
||||||
if self.isVisible():
|
if self.isVisible():
|
||||||
self.manage_window.show()
|
self.manage_window.show()
|
||||||
|
|
||||||
|
if self.app_config['boot']['load_apps']:
|
||||||
self.manage_window.begin_refresh_packages()
|
self.manage_window.begin_refresh_packages()
|
||||||
|
else:
|
||||||
|
self.manage_window.load_without_packages()
|
||||||
|
|
||||||
self.self_close = True
|
self.self_close = True
|
||||||
self.close()
|
self.close()
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ class ManageWindow(QWidget):
|
|||||||
self.logger = logger
|
self.logger = logger
|
||||||
self.manager = manager
|
self.manager = manager
|
||||||
self.working = False # restrict the number of threaded actions
|
self.working = False # restrict the number of threaded actions
|
||||||
|
self.installed_loaded = False # used to control the state when the interface is set to not load the apps on startup
|
||||||
self.pkgs = [] # packages current loaded in the table
|
self.pkgs = [] # packages current loaded in the table
|
||||||
self.pkgs_available = [] # all packages loaded in memory
|
self.pkgs_available = [] # all packages loaded in memory
|
||||||
self.pkgs_installed = [] # cached installed packages
|
self.pkgs_installed = [] # cached installed packages
|
||||||
@@ -572,6 +573,7 @@ class ManageWindow(QWidget):
|
|||||||
self.thread_warnings.start()
|
self.thread_warnings.start()
|
||||||
|
|
||||||
def _begin_loading_installed(self):
|
def _begin_loading_installed(self):
|
||||||
|
if self.installed_loaded:
|
||||||
self.search_bar.clear()
|
self.search_bar.clear()
|
||||||
self.input_name.set_text('')
|
self.input_name.set_text('')
|
||||||
self._begin_action(self.i18n['manage_window.status.installed'])
|
self._begin_action(self.i18n['manage_window.status.installed'])
|
||||||
@@ -580,6 +582,9 @@ class ManageWindow(QWidget):
|
|||||||
self.suggestions_requested = False
|
self.suggestions_requested = False
|
||||||
self.search_performed = False
|
self.search_performed = False
|
||||||
self.thread_load_installed.start()
|
self.thread_load_installed.start()
|
||||||
|
else:
|
||||||
|
self.load_suggestions = False
|
||||||
|
self.begin_refresh_packages()
|
||||||
|
|
||||||
def _finish_loading_installed(self):
|
def _finish_loading_installed(self):
|
||||||
self._finish_action()
|
self._finish_action()
|
||||||
@@ -668,7 +673,7 @@ class ManageWindow(QWidget):
|
|||||||
self.check_details.setChecked(False)
|
self.check_details.setChecked(False)
|
||||||
self.textarea_details.hide()
|
self.textarea_details.hide()
|
||||||
|
|
||||||
def begin_refresh_packages(self, pkg_types: Set[Type[SoftwarePackage]] = None):
|
def begin_refresh_packages(self, pkg_types: Optional[Set[Type[SoftwarePackage]]] = None):
|
||||||
self.search_bar.clear()
|
self.search_bar.clear()
|
||||||
|
|
||||||
self._begin_action(self.i18n['manage_window.status.refreshing'])
|
self._begin_action(self.i18n['manage_window.status.refreshing'])
|
||||||
@@ -699,6 +704,11 @@ class ManageWindow(QWidget):
|
|||||||
self.load_suggestions = False
|
self.load_suggestions = False
|
||||||
self.types_changed = False
|
self.types_changed = False
|
||||||
|
|
||||||
|
def load_without_packages(self):
|
||||||
|
self.load_suggestions = False
|
||||||
|
self._handle_console_option(False)
|
||||||
|
self._finish_refresh_packages({'installed': None, 'types': None}, as_installed=False)
|
||||||
|
|
||||||
def _begin_load_suggestions(self, filter_installed: bool):
|
def _begin_load_suggestions(self, filter_installed: bool):
|
||||||
self.search_bar.clear()
|
self.search_bar.clear()
|
||||||
self._begin_action(self.i18n['manage_window.status.suggestions'])
|
self._begin_action(self.i18n['manage_window.status.suggestions'])
|
||||||
@@ -887,7 +897,7 @@ class ManageWindow(QWidget):
|
|||||||
'display_limit': None if self.filter_updates else self.display_limit
|
'display_limit': None if self.filter_updates else self.display_limit
|
||||||
}
|
}
|
||||||
|
|
||||||
def update_pkgs(self, new_pkgs: List[SoftwarePackage], as_installed: bool, types: Set[type] = None, ignore_updates: bool = False, keep_filters: bool = False) -> bool:
|
def update_pkgs(self, new_pkgs: Optional[List[SoftwarePackage]], as_installed: bool, types: Optional[Set[type]] = None, ignore_updates: bool = False, keep_filters: bool = False) -> bool:
|
||||||
self.input_name.set_text('')
|
self.input_name.set_text('')
|
||||||
pkgs_info = commons.new_pkgs_info()
|
pkgs_info = commons.new_pkgs_info()
|
||||||
filters = self._gen_filters(ignore_updates=ignore_updates)
|
filters = self._gen_filters(ignore_updates=ignore_updates)
|
||||||
@@ -958,6 +968,9 @@ class ManageWindow(QWidget):
|
|||||||
qt_utils.centralize(self)
|
qt_utils.centralize(self)
|
||||||
self.first_refresh = False
|
self.first_refresh = False
|
||||||
|
|
||||||
|
if not self.installed_loaded and as_installed:
|
||||||
|
self.installed_loaded = True
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def _apply_filters(self, pkgs_info: dict, ignore_updates: bool):
|
def _apply_filters(self, pkgs_info: dict, ignore_updates: bool):
|
||||||
|
|||||||
@@ -192,6 +192,8 @@ core.config.backup.mode.only_one=Single
|
|||||||
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
||||||
core.config.backup.uninstall=Before uninstalling
|
core.config.backup.uninstall=Before uninstalling
|
||||||
core.config.backup.upgrade=Before upgrading
|
core.config.backup.upgrade=Before upgrading
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons=Download icons
|
core.config.download.icons=Download icons
|
||||||
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
||||||
core.config.download.multithreaded=Multithreaded download
|
core.config.download.multithreaded=Multithreaded download
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode.only_one=Single
|
|||||||
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
||||||
core.config.backup.uninstall=Before uninstalling
|
core.config.backup.uninstall=Before uninstalling
|
||||||
core.config.backup.upgrade=Before upgrading
|
core.config.backup.upgrade=Before upgrading
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons=Download Icons
|
core.config.download.icons=Download Icons
|
||||||
core.config.download.icons.tip=Falls aktiviert werden die Anwendungs-Icons in der Tabelle angezeigt
|
core.config.download.icons.tip=Falls aktiviert werden die Anwendungs-Icons in der Tabelle angezeigt
|
||||||
core.config.download.multithreaded=Paralleler Download
|
core.config.download.multithreaded=Paralleler Download
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode=Mode
|
|||||||
core.config.backup.uninstall=Before uninstalling
|
core.config.backup.uninstall=Before uninstalling
|
||||||
core.config.backup.upgrade=Before upgrading
|
core.config.backup.upgrade=Before upgrading
|
||||||
core.config.backup=Enabled
|
core.config.backup=Enabled
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
||||||
core.config.download.icons=Download icons
|
core.config.download.icons=Download icons
|
||||||
core.config.download.multithreaded=Multi-threaded download
|
core.config.download.multithreaded=Multi-threaded download
|
||||||
|
|||||||
@@ -192,6 +192,8 @@ core.config.backup.mode.only_one=Única
|
|||||||
core.config.backup.mode.only_one.tip=Solo se guardará una copia de seguridad del sistema. Las copias preexistentes serán borradas.
|
core.config.backup.mode.only_one.tip=Solo se guardará una copia de seguridad del sistema. Las copias preexistentes serán borradas.
|
||||||
core.config.backup.uninstall=Antes de desinstalar
|
core.config.backup.uninstall=Antes de desinstalar
|
||||||
core.config.backup.upgrade=Antes de actualizar
|
core.config.backup.upgrade=Antes de actualizar
|
||||||
|
core.config.boot.load_apps=Cargar aplicaciones al inicio
|
||||||
|
core.config.boot.load_apps.tip= Si las aplicaciones instaladas o sugerencias deben ser cargadas en el panel de administración después del proceso de inicialización
|
||||||
core.config.download.icons=Descargar iconos
|
core.config.download.icons=Descargar iconos
|
||||||
core.config.download.icons.tip=Si los íconos de las aplicaciones se deben descargar y mostrar en la tabla
|
core.config.download.icons.tip=Si los íconos de las aplicaciones se deben descargar y mostrar en la tabla
|
||||||
core.config.download.multithreaded=Descarga segmentada
|
core.config.download.multithreaded=Descarga segmentada
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode=Mode
|
|||||||
core.config.backup.uninstall=Avant de désinstaller
|
core.config.backup.uninstall=Avant de désinstaller
|
||||||
core.config.backup.upgrade=Avant de mettre à jour
|
core.config.backup.upgrade=Avant de mettre à jour
|
||||||
core.config.backup=Activé
|
core.config.backup=Activé
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons.tip=Si les icônes de l'application devraient être téléchargées et affichées sur le tableau
|
core.config.download.icons.tip=Si les icônes de l'application devraient être téléchargées et affichées sur le tableau
|
||||||
core.config.download.icons=Télécharger les icônes
|
core.config.download.icons=Télécharger les icônes
|
||||||
core.config.download.multithreaded=Téléchargement parallèles
|
core.config.download.multithreaded=Téléchargement parallèles
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode.only_one=Single
|
|||||||
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
||||||
core.config.backup.uninstall=Before uninstalling
|
core.config.backup.uninstall=Before uninstalling
|
||||||
core.config.backup.upgrade=Before upgrading
|
core.config.backup.upgrade=Before upgrading
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons=Download icons
|
core.config.download.icons=Download icons
|
||||||
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
core.config.download.icons.tip=If the application icons should be downloaded and displayed on the table
|
||||||
core.config.download.multithreaded=Multithreaded download
|
core.config.download.multithreaded=Multithreaded download
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode=Modo
|
|||||||
core.config.backup.uninstall=Antes de desinstalar
|
core.config.backup.uninstall=Antes de desinstalar
|
||||||
core.config.backup.upgrade=Antes de atualizar
|
core.config.backup.upgrade=Antes de atualizar
|
||||||
core.config.backup=Habilitada
|
core.config.backup=Habilitada
|
||||||
|
core.config.boot.load_apps=Carregar aplicativos após iniciar
|
||||||
|
core.config.boot.load_apps.tip=Se os aplicativos instalados ou sugestões devem ser carregados no painel de gerenciamento após a inicialização.
|
||||||
core.config.download.icons.tip=Se os ícones dos aplicativos devem ser baixados e exibidos na tabela
|
core.config.download.icons.tip=Se os ícones dos aplicativos devem ser baixados e exibidos na tabela
|
||||||
core.config.download.icons=Baixar ícones
|
core.config.download.icons=Baixar ícones
|
||||||
core.config.download.multithreaded.tip=Se os aplicativos, pacotes e arquivos devem ser baixados através de uma ferramenta que trabalha com segmentação / threads (pode ser mais rápido).
|
core.config.download.multithreaded.tip=Se os aplicativos, pacotes e arquivos devem ser baixados através de uma ferramenta que trabalha com segmentação / threads (pode ser mais rápido).
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode.only_one=Single
|
|||||||
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
core.config.backup.mode.only_one.tip=Only one system backup will be kept. Pre-existing backups will be erased.
|
||||||
core.config.backup.uninstall=Before uninstalling
|
core.config.backup.uninstall=Before uninstalling
|
||||||
core.config.backup.upgrade=Before upgrading
|
core.config.backup.upgrade=Before upgrading
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons=Скачать иконки
|
core.config.download.icons=Скачать иконки
|
||||||
core.config.download.icons.tip=Загружать иконки приложения для отображаения на рабочем столе
|
core.config.download.icons.tip=Загружать иконки приложения для отображаения на рабочем столе
|
||||||
core.config.download.multithreaded=Многопоточная загрузка
|
core.config.download.multithreaded=Многопоточная загрузка
|
||||||
|
|||||||
@@ -191,6 +191,8 @@ core.config.backup.mode=Mod
|
|||||||
core.config.backup.uninstall=Önce kaldırılıyor
|
core.config.backup.uninstall=Önce kaldırılıyor
|
||||||
core.config.backup.upgrade=Önce yükseltiliyor
|
core.config.backup.upgrade=Önce yükseltiliyor
|
||||||
core.config.backup=Etkin
|
core.config.backup=Etkin
|
||||||
|
core.config.boot.load_apps=Load apps after startup
|
||||||
|
core.config.boot.load_apps.tip=If the installed applications or suggestions should be loaded on the management panel after the initialization process
|
||||||
core.config.download.icons.tip=Tabloda görüntüleniyorsa uygulama simgeleri indirilmeli
|
core.config.download.icons.tip=Tabloda görüntüleniyorsa uygulama simgeleri indirilmeli
|
||||||
core.config.download.icons=Simgeleri indir
|
core.config.download.icons=Simgeleri indir
|
||||||
core.config.download.multithreaded.tip=Uygulamaların, paketlerin ve dosyaların iş parçacıklarıyla (daha hızlı) çalışan bir araçla indirilip indirilmeyeceği.
|
core.config.download.multithreaded.tip=Uygulamaların, paketlerin ve dosyaların iş parçacıklarıyla (daha hızlı) çalışan bir araçla indirilip indirilmeyeceği.
|
||||||
|
|||||||
Reference in New Issue
Block a user