feat(mining): thread-count stepper, adaptive tiles, dropdown click-through fix, xmrig version state

Mining-tab UI improvements:
- Thread selector: a centered [-] N [+] stepper (top-aligned in the header) to pick an exact
  thread count — number centered, -/+ step by one (clamped to [1, cores]), still typeable
  (commits on Enter so it doesn't restart the miner mid-typing).
- Thread tiles now render at an adaptive step (1/2/4/8 by core count) plus 1 and the max, so a
  high-core CPU (e.g. a 192-thread EPYC) shows ~25 tiles instead of one-per-thread and no longer
  overflows the card. Unchanged for <=24-core machines.
- Fix: clicking the X (or a row) in an open saved-pools / payout-address dropdown no longer bleeds
  through to the thread tiles / Mine button — the custom drawlist hit-tests now gate on
  IsPopupOpen(AnyPopup).
- xmrig update button: shows "xmrig releases" when installed >= latest (numeric version compare),
  else "Update <latest>"; the "Current: <ver>" text and the button are subtle green when up to date
  and subtle orange when an update is available (neutral when either version is unknown).

New i18n keys back-filled across all 8 languages; CJK subset font rebuilt for the new glyphs.
Verified across full-node, lite, and Windows builds; the stepper layout confirmed via the UI sweep.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-18 15:39:43 -05:00
parent 06afbee4f8
commit 0de44569b7
11 changed files with 165 additions and 15 deletions

View File

@@ -949,6 +949,9 @@
"mining_syncing_tooltip": "Блокчейн синхронизируется...",
"mining_tag": " · Майнинг",
"mining_threads": "Потоки майнинга",
"mining_threads_input_tooltip": "Введите точное число потоков (Enter для применения)",
"mining_threads_minus_tooltip": "Меньше потоков",
"mining_threads_plus_tooltip": "Больше потоков",
"mining_to_save": "для сохранения",
"mining_today": "Сегодня",
"mining_uptime": "Время работы",
@@ -1785,6 +1788,7 @@
"xmrig_loading_releases": "Загрузка релизов…",
"xmrig_none": "нет",
"xmrig_reinstall": "Переустановить",
"xmrig_releases": "релизы xmrig",
"xmrig_stop_mining_first": "Остановите майнинг перед обновлением майнера.",
"xmrig_unavailable_body": "Для этой платформы нет доступной сборки майнера.",
"xmrig_unavailable_title": "Обновления майнера недоступны",