Move Apply & Restart into Settings footer with confirm

Replace the top-right pending CTA with a primary footer action that
replaces Reload OpenCode when changes are pending, and warn that running
chats will stop unless the user opts out of the confirmation.

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
This commit is contained in:
Cursor Agent
2026-08-03 07:25:10 +00:00
co-authored by Serhii Dziupin
parent 190fbeedb4
commit 096f2fa52c
14 changed files with 249 additions and 135 deletions
@@ -48,6 +48,10 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': 'Failed to apply configuration changes.',
'settings.view.pendingRestart.manualRestartRequired': 'Saved on disk. Restart your connected OpenCode server to apply the changes.',
'settings.view.pendingRestart.saved': 'Saved. Restart OpenCode to apply.',
'settings.view.pendingRestart.confirm.title': 'Apply & restart OpenCode?',
'settings.view.pendingRestart.confirm.description': 'Restarting OpenCode will stop any running chats. Your saved configuration changes will take effect after the restart.',
'settings.view.pendingRestart.confirm.dontShowAgain': 'Don\'t show this again',
'settings.view.pendingRestart.confirm.cancel': 'Cancel',
'settings.view.actions.backToSettings': 'Back to Settings',
'settings.view.actions.closeSettings': 'Close settings',
'settings.view.actions.openSectionList': 'Open section list',
@@ -49,7 +49,11 @@ export const settingsDict = {
"settings.view.pendingRestart.applyFailed": "No se pudieron aplicar los cambios de configuración.",
"settings.view.pendingRestart.manualRestartRequired": "Guardado en disco. Reinicia el servidor OpenCode conectado para aplicar los cambios.",
"settings.view.pendingRestart.saved": "Guardado. Reinicia OpenCode para aplicar.",
"settings.view.actions.backToSettings": "Volver a Configuración",
"settings.view.pendingRestart.confirm.title": "¿Aplicar y reiniciar OpenCode?",
"settings.view.pendingRestart.confirm.description": "Reiniciar OpenCode detendrá cualquier chat en ejecución. Los cambios de configuración guardados se aplicarán después del reinicio.",
"settings.view.pendingRestart.confirm.dontShowAgain": "No volver a mostrar",
"settings.view.pendingRestart.confirm.cancel": "Cancelar", "settings.view.actions.backToSettings": "Volver a Configuración",
"settings.view.actions.closeSettings": "Cerrar configuración",
"settings.view.actions.openSectionList": "Abrir lista de secciones",
"settings.view.actions.closeSettingsWithShortcut": "Cerrar configuración ({shortcut}+,)",
@@ -49,7 +49,11 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': 'Échec de l\'application des modifications de configuration.',
'settings.view.pendingRestart.manualRestartRequired': 'Enregistré sur le disque. Redémarrez le serveur OpenCode connecté pour appliquer les modifications.',
'settings.view.pendingRestart.saved': 'Enregistré. Redémarrez OpenCode pour appliquer.',
'settings.view.actions.backToSettings': 'Retour aux paramètres',
'settings.view.pendingRestart.confirm.title': 'Appliquer et redémarrer OpenCode ?',
'settings.view.pendingRestart.confirm.description': 'Le redémarrage de OpenCode arrêtera tous les chats en cours. Vos modifications de configuration enregistrées prendront effet après le redémarrage.',
'settings.view.pendingRestart.confirm.dontShowAgain': 'Ne plus afficher',
'settings.view.pendingRestart.confirm.cancel': 'Annuler', 'settings.view.actions.backToSettings': 'Retour aux paramètres',
'settings.view.actions.closeSettings': 'Fermer les paramètres',
'settings.view.actions.openSectionList': 'Ouvrir la liste des sections',
'settings.view.actions.closeSettingsWithShortcut': 'Fermer les paramètres ({shortcut}+,)',
@@ -49,7 +49,11 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': '設定変更の適用に失敗しました。',
'settings.view.pendingRestart.manualRestartRequired': 'ディスクに保存しました。接続中の OpenCode サーバーを再起動して変更を適用してください。',
'settings.view.pendingRestart.saved': '保存しました。適用するには OpenCode を再起動してください。',
'settings.view.actions.backToSettings': '設定に戻る',
'settings.view.pendingRestart.confirm.title': '適用して OpenCode を再起動しますか?',
'settings.view.pendingRestart.confirm.description': 'OpenCode を再起動すると実行中のチャットが停止します。保存済みの設定変更は再起動後に反映されます。',
'settings.view.pendingRestart.confirm.dontShowAgain': '今後表示しない',
'settings.view.pendingRestart.confirm.cancel': 'キャンセル', 'settings.view.actions.backToSettings': '設定に戻る',
'settings.view.actions.closeSettings': '設定を閉じる',
'settings.view.actions.openSectionList': 'セクション一覧を開く',
'settings.view.actions.closeSettingsWithShortcut': '設定を閉じる ({shortcut}+,)',
@@ -49,7 +49,11 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': '구성 변경을 적용하지 못했습니다.',
'settings.view.pendingRestart.manualRestartRequired': '디스크에 저장되었습니다. 연결된 OpenCode 서버를 다시 시작하여 변경 사항을 적용하세요.',
'settings.view.pendingRestart.saved': '저장되었습니다. 적용하려면 OpenCode를 다시 시작하세요.',
'settings.view.actions.backToSettings': '설정으로 돌아가기',
'settings.view.pendingRestart.confirm.title': '적용하고 OpenCode를 다시 시작할까요?',
'settings.view.pendingRestart.confirm.description': 'OpenCode를 다시 시작하면 실행 중인 채팅이 중지됩니다. 저장된 구성 변경 사항은 다시 시작 후 적용됩니다.',
'settings.view.pendingRestart.confirm.dontShowAgain': '다시 표시하지 않음',
'settings.view.pendingRestart.confirm.cancel': '취소', 'settings.view.actions.backToSettings': '설정으로 돌아가기',
'settings.view.actions.closeSettings': '설정 닫기',
'settings.view.actions.openSectionList': '섹션 목록 열기',
'settings.view.actions.closeSettingsWithShortcut': '설정 닫기 ({shortcut}+,)',
@@ -1922,7 +1922,11 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': 'Nie udało się zastosować zmian konfiguracji.',
'settings.view.pendingRestart.manualRestartRequired': 'Zapisano na dysku. Uruchom ponownie podłączony serwer OpenCode, aby zastosować zmiany.',
'settings.view.pendingRestart.saved': 'Zapisano. Uruchom ponownie OpenCode, aby zastosować.',
'settings.view.actions.resizeNavigation': 'Zmień rozmiar nawigacji',
'settings.view.pendingRestart.confirm.title': 'Zastosować i uruchomić ponownie OpenCode?',
'settings.view.pendingRestart.confirm.description': 'Ponowne uruchomienie OpenCode zatrzyma wszystkie aktywne czaty. Zapisane zmiany konfiguracji zaczną obowiązywać po restarcie.',
'settings.view.pendingRestart.confirm.dontShowAgain': 'Nie pokazuj ponownie',
'settings.view.pendingRestart.confirm.cancel': 'Anuluj', 'settings.view.actions.resizeNavigation': 'Zmień rozmiar nawigacji',
'settings.view.search.placeholder': 'Szukaj ustawień',
'settings.view.search.aria': 'Szukaj ustawień',
'settings.view.search.clear': 'Wyczyść wyszukiwanie ustawień',
@@ -49,7 +49,11 @@ export const settingsDict = {
"settings.view.pendingRestart.applyFailed": "Falha ao aplicar as alterações de configuração.",
"settings.view.pendingRestart.manualRestartRequired": "Salvo no disco. Reinicie o servidor OpenCode conectado para aplicar as alterações.",
"settings.view.pendingRestart.saved": "Salvo. Reinicie o OpenCode para aplicar.",
"settings.view.actions.backToSettings": "Voltar às configurações",
"settings.view.pendingRestart.confirm.title": "Aplicar e reiniciar o OpenCode?",
"settings.view.pendingRestart.confirm.description": "Reiniciar o OpenCode interromperá quaisquer chats em execução. As alterações de configuração salvas entrarão em vigor após a reinicialização.",
"settings.view.pendingRestart.confirm.dontShowAgain": "Não mostrar novamente",
"settings.view.pendingRestart.confirm.cancel": "Cancelar", "settings.view.actions.backToSettings": "Voltar às configurações",
"settings.view.actions.closeSettings": "Fechar configurações",
"settings.view.actions.openSectionList": "Abrir lista de seções",
"settings.view.actions.closeSettingsWithShortcut": "Fechar configurações ({shortcut}+,)",
@@ -49,7 +49,11 @@ export const settingsDict = {
"settings.view.pendingRestart.applyFailed": "Не вдалося застосувати зміни конфігурації.",
"settings.view.pendingRestart.manualRestartRequired": "Збережено на диску. Перезапустіть підключений сервер OpenCode, щоб застосувати зміни.",
"settings.view.pendingRestart.saved": "Збережено. Перезапустіть OpenCode, щоб застосувати.",
"settings.view.actions.backToSettings": "Назад до налаштувань",
"settings.view.pendingRestart.confirm.title": "Застосувати та перезапустити OpenCode?",
"settings.view.pendingRestart.confirm.description": "Перезапуск OpenCode зупинить усі активні чати. Збережені зміни конфігурації набудуть чинності після перезапуску.",
"settings.view.pendingRestart.confirm.dontShowAgain": "Більше не показувати",
"settings.view.pendingRestart.confirm.cancel": "Скасувати", "settings.view.actions.backToSettings": "Назад до налаштувань",
"settings.view.actions.closeSettings": "Закрити налаштування",
"settings.view.actions.openSectionList": "Відкрити список розділів",
"settings.view.actions.closeSettingsWithShortcut": "Закрити налаштування ({shortcut}+,)",
@@ -49,7 +49,11 @@ export const settingsDict = {
'settings.view.pendingRestart.applyFailed': '应用配置更改失败。',
'settings.view.pendingRestart.manualRestartRequired': '已保存到磁盘。请重启已连接的 OpenCode 服务器以应用更改。',
'settings.view.pendingRestart.saved': '已保存。请重启 OpenCode 以应用。',
'settings.view.actions.backToSettings': '返回设置',
'settings.view.pendingRestart.confirm.title': '应用并重启 OpenCode',
'settings.view.pendingRestart.confirm.description': '重启 OpenCode 将停止所有正在运行的聊天。已保存的配置更改将在重启后生效。',
'settings.view.pendingRestart.confirm.dontShowAgain': '不再显示',
'settings.view.pendingRestart.confirm.cancel': '取消', 'settings.view.actions.backToSettings': '返回设置',
'settings.view.actions.closeSettings': '关闭设置',
'settings.view.actions.openSectionList': '打开分组列表',
'settings.view.actions.closeSettingsWithShortcut': '关闭设置({shortcut}+,',
@@ -47,7 +47,11 @@
'settings.view.pendingRestart.applyFailed': '套用設定變更失敗。',
'settings.view.pendingRestart.manualRestartRequired': '已儲存到磁碟。請重新啟動已連線的 OpenCode 伺服器以套用變更。',
'settings.view.pendingRestart.saved': '已儲存。請重新啟動 OpenCode 以套用。',
'settings.view.actions.backToSettings': '返回設定頁',
'settings.view.pendingRestart.confirm.title': '套用並重新啟動 OpenCode',
'settings.view.pendingRestart.confirm.description': '重新啟動 OpenCode 將停止任何執行中的聊天。已儲存的設定變更將在重新啟動後生效。',
'settings.view.pendingRestart.confirm.dontShowAgain': '不要再顯示',
'settings.view.pendingRestart.confirm.cancel': '取消', 'settings.view.actions.backToSettings': '返回設定頁',
'settings.view.actions.closeSettings': '關閉設定',
'settings.view.actions.openSectionList': '開啟群組清單',
'settings.view.actions.closeSettingsWithShortcut': '關閉設定({shortcut}+,',