Review changes

This commit is contained in:
jpirnay
2026-04-11 09:43:48 +02:00
parent 9fa2ff2aa0
commit bfeb806a0b
5 changed files with 97 additions and 30 deletions
@@ -6,10 +6,9 @@
#include <WiFi.h>
#include <esp_task_wdt.h>
#include "activities/network/SignalStrengthWidget.h"
#include "MappedInputManager.h"
#include "WifiSelectionActivity.h"
#include "activities/network/SignalStrengthWidget.h"
#include "components/UITheme.h"
#include "fontIds.h"
@@ -377,8 +377,7 @@ void CrossPointWebServerActivity::render(RenderLock&&) {
}
}
namespace {
} // namespace
namespace {} // namespace
void CrossPointWebServerActivity::renderServerRunning() const {
const auto& metrics = UITheme::getInstance().getMetrics();
@@ -463,7 +462,8 @@ void CrossPointWebServerActivity::renderServerRunning() const {
const int signalHeight = 22;
const int signalWidth = contentRect.width - metrics.contentSidePadding * 2;
const int signalY = startY + height10 + metrics.verticalSpacing * 2;
drawWifiSignalStrength(renderer, contentRect.x + metrics.contentSidePadding, signalY, signalWidth, signalHeight, currentRssi);
drawWifiSignalStrength(renderer, contentRect.x + metrics.contentSidePadding, signalY, signalWidth, signalHeight,
currentRssi);
renderer.drawCenteredText(SMALL_FONT_ID, signalY + signalHeight + 2, rssiLabel(currentRssi).c_str(), true);
}
@@ -1,8 +1,9 @@
#pragma once
#include <algorithm>
#include <GfxRenderer.h>
#include <I18n.h>
#include <algorithm>
#include <string>
inline StrId getRssiQualityStrId(int rssi) {
@@ -21,18 +22,21 @@ inline StrId getRssiQualityStrId(int rssi) {
inline void drawWifiSignalStrength(const GfxRenderer& renderer, int x, int y, int width, int height, int rssi) {
const int barCount = 4;
const int gap = 6;
const int barWidth = std::min(10, (width - (barCount - 1) * gap) / barCount);
const int barWidth = std::max(1, std::min(10, (width - (barCount - 1) * gap) / barCount));
const int totalWidth = barCount * barWidth + (barCount - 1) * gap;
const int startX = x + (width - totalWidth) / 2;
const int maxBarHeight = height - 8;
const int maxBarHeight = std::max(1, height - 8);
const int bars = rssi == 0 ? 0 : (rssi <= -90 ? 1 : (rssi <= -75 ? 2 : (rssi <= -60 ? 3 : 4)));
const int baseY = y + height - 2;
for (int i = 0; i < barCount; ++i) {
const int barHeight = ((i + 1) * maxBarHeight) / barCount;
const int barHeight = std::max(0, ((i + 1) * maxBarHeight) / barCount);
if (barHeight <= 0 || barWidth <= 0) {
continue;
}
const int barX = startX + i * (barWidth + gap);
const int barY = baseY - barHeight;
renderer.drawRect(barX, barY, barWidth, barHeight, true);
if (i < bars) {
if (i < bars && barWidth > 2 && barHeight > 2) {
renderer.fillRect(barX + 1, barY + 1, barWidth - 2, barHeight - 2);
}
}
+3 -19
View File
@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>CrossPoint Reader</title>
<title>%%CROSSPOINT%%</title>
<style>
:root {
--font-color: #333;
@@ -101,9 +101,9 @@
<body>
<div class="card">
<div class="logo">📚</div>
<h1>CrossPoint Reader</h1>
<h1>%%CROSSPOINT%%</h1>
<div class="subtitle">Welcome to your reader</div>
<div class="version">Version <span id="version">Loading...</span></div>
<div class="version">Version %%VERSION%%</div>
<div class="nav-links">
<a href="/files">Open File Manager</a>
<a href="/settings">Settings</a>
@@ -111,22 +111,6 @@
</div>
<div class="footer">Fast start page designed for weak connections</div>
</div>
<script>
async function loadVersion() {
try {
const response = await fetch('/api/status/fast');
if (!response.ok) {
throw new Error('Failed to fetch version');
}
const data = await response.json();
document.getElementById('version').textContent = data.version || 'N/A';
} catch (error) {
document.getElementById('version').textContent = 'Unavailable';
}
}
document.addEventListener('DOMContentLoaded', loadVersion);
</script>
</body>
</html>