Files
AWatch-rus/docs/wiki/Russian-WebUI-Patch-and-Localization.md
T

2.0 KiB

Russian WebUI Patch and Localization

2.3 Russian WebUI patch

aw-server/aw-ru-patch.js продолжает быть runtime patch'ем поверх ActivityWatch WebUI, но после cc9e4a0 логика стала более явной: текстовые переводы и навигационные исправления сведены в отдельную функцию applyTextAndNavigationPatches(root).

applyTextAndNavigationPatches

Функция выполняет общий набор patch'ей для переданного DOM root:

  • обход текстовых узлов через walk(root);
  • перевод атрибутов через translateAttributes(root);
  • исправление DLP navigation links;
  • повторное применение при route change в SPA.

Это снижает риск, что часть UI останется на английском после client-side перехода без полной перезагрузки страницы.

DLP navigation получила защиту от битых ссылок:

  • исправляются ссылки вида /activity/dlp и другие broken DLP activity refs;
  • DLP item помечается data-aw-ru-dlp-item="1", чтобы patch не дублировал элемент;
  • patch различает label DLP внутри activity tabs и реальные broken links.

Улучшения локализации

Патч теперь повторно применяет текстовые и навигационные изменения:

  • на первичной загрузке document.body;
  • после смены route key;
  • после восстановления settings host/host groups state.

Это особенно важно для WebUI страниц, где ActivityWatch перерисовывает DOM без reload: activity views, category builder, settings и DLP navigation.