feat(console): zebra contrast, edge outline, blinking caret, external-daemon status

- Lower the zebra-stripe contrast (scanline-line-alpha 4 -> 2; the derived dark
  band softens with it) so the alternating rows are subtler.
- Give the input's terminal bar a 1px outline along its own edges (theme-aware),
  matching the output panel's glass rim, and a near-white surface on light skins.
- Add a blinking terminal caret at the end of the input when it isn't focused.
- Report a daemon started before the wallet ("no wallet-managed EmbeddedDaemon"
  but RPC connected) as "Running" instead of the misleading "no daemon".

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-05 12:53:46 -05:00
parent 7249d11899
commit d3dcb5a015
3 changed files with 38 additions and 6 deletions

View File

@@ -190,7 +190,12 @@ ConsoleStatusLine FullNodeConsoleExecutor::toolbarStatus() const
{
ConsoleStatusLine s;
daemon::EmbeddedDaemon* d = app_->consoleDaemon();
if (!d) return s; // empty text -> toolbar shows the generic "no daemon" label
if (!d) {
// No wallet-managed daemon, but a daemon started externally (before the wallet) is still
// reachable over RPC and accepts commands — report it as running rather than "no daemon".
if (app_->isConnected()) { s.text = TR("console_status_running"); s.color = Success(); }
return s; // otherwise empty text -> toolbar shows the generic "no daemon" label
}
using DState = daemon::EmbeddedDaemon::State;
switch (d->getState()) {
case DState::Stopped: s.text = TR("console_status_stopped"); s.color = IM_COL32(150,150,150,255); break;