v2.4.8: UI improvements, update popup fixes, per-profile branch tracking

- Fix auto-update popup: indeterminate progress fallback when no download events, show 100% on complete
- Remove macOS auto-update warning (app is now signed)
- Disable update popup pulse animation
- Remove news tab and news section from home screen
- Center play section vertically, add community links with colored icons
- Add game version + branch display on play page (from manifest)
- Add last played timestamp tracking
- Version badge links to git.sanhost.net releases
- Profiles now store version_branch and version_client per-configuration
- Profile switch restores branch/version and refreshes settings UI
- DevTools enabled in dev mode (electron . --dev)
- Reorder community links: Chat, Discord, TG Channel, TG Group, Source

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
sanasol
2026-02-28 21:47:23 +01:00
parent fcf041be39
commit 57056e5b7a
11 changed files with 337 additions and 146 deletions

View File

@@ -44,10 +44,6 @@
<i class="fas fa-box"></i>
<span class="nav-tooltip" data-i18n="nav.mods">Mods</span>
</div>
<div class="nav-item" data-page="news">
<i class="fas fa-newspaper"></i>
<span class="nav-tooltip" data-i18n="nav.news">News</span>
</div>
<div class="nav-item" data-page="settings">
<i class="fas fa-cog"></i>
<span class="nav-tooltip" data-i18n="nav.settings">Settings</span>
@@ -219,36 +215,38 @@
<span data-i18n="play.playButton">PLAY HYTALE</span>
</button>
<div style="display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 12px; font-size: 12px;">
<span style="color: #93a3b8;">Telegram:</span>
<a href="#" onclick="window.electronAPI?.openExternal('https://t.me/sanhostnet'); return false;" style="color: #93a3b8; text-decoration: none; display: flex; align-items: center; gap: 4px; transition: color 0.2s;" onmouseover="this.style.color='#60a5fa'" onmouseout="this.style.color='#93a3b8'">
<i class="fas fa-users"></i> Group
<div id="game-info-bar" class="game-info-bar">
<span id="game-version-info" class="game-info-item game-info-loading">loading...</span>
<span class="game-info-sep"></span>
<span id="game-branch-info" class="game-info-item game-info-loading">...</span>
<span id="game-last-played" class="game-info-item" style="display: none;"></span>
</div>
<div class="community-links">
<a href="#" class="community-link" onclick="openDiscordExternal(); return false;" title="Community Chat">
<i class="fas fa-comments" style="color: #22c55e;"></i>
<span>Chat</span>
</a>
<span style="color: #4b5563;">|</span>
<a href="#" onclick="window.electronAPI?.openExternal('https://t.me/hf2p_og'); return false;" style="color: #93a3b8; text-decoration: none; display: flex; align-items: center; gap: 4px; transition: color 0.2s;" onmouseover="this.style.color='#60a5fa'" onmouseout="this.style.color='#93a3b8'">
<i class="fab fa-telegram"></i> Channel
<a href="#" class="community-link" onclick="window.electronAPI?.openExternal('https://discord.gg/8WVU24XshK'); return false;" title="Discord">
<i class="fab fa-discord" style="color: #5865F2;"></i>
<span>Discord</span>
</a>
<span style="color: #4b5563;">|</span>
<a href="#" onclick="openDiscordExternal(); return false;" style="color: #93a3b8; text-decoration: none; display: flex; align-items: center; gap: 4px; transition: color 0.2s;" onmouseover="this.style.color='#60a5fa'" onmouseout="this.style.color='#93a3b8'">
<i class="fas fa-comments"></i> Community Chat
<a href="#" class="community-link" onclick="window.electronAPI?.openExternal('https://t.me/hf2p_og'); return false;" title="Telegram Channel">
<i class="fab fa-telegram" style="color: #26A5E4;"></i>
<span>Channel</span>
</a>
<a href="#" class="community-link" onclick="window.electronAPI?.openExternal('https://t.me/sanhostnet'); return false;" title="Telegram Group">
<i class="fab fa-telegram" style="color: #26A5E4;"></i>
<span>Group</span>
</a>
<a href="#" class="community-link" onclick="window.electronAPI?.openExternal('https://git.sanhost.net/sanasol/hytale-f2p'); return false;" title="Source Code">
<i class="fab fa-git-alt" style="color: #e2e8f0;"></i>
<span>Source</span>
</a>
</div>
</div>
</div>
<div class="news-section">
<div class="news-header">
<h2 class="news-title">
<i class="fas fa-star mr-2"></i>
<span data-i18n="play.latestNews">LATEST NEWS</span>
</h2>
<button class="view-all-btn" onclick="navigateToPage('news')">
<span data-i18n="play.viewAll">VIEW ALL</span> <i
class="fas fa-arrow-right ml-1"></i>
</button>
</div>
<div id="newsGrid" class="news-grid-horizontal"></div>
</div>
</div>
<div id="featured-page" class="page">
@@ -301,15 +299,6 @@
</div>
</div>
<div id="news-page" class="page">
<div class="news-header">
<h2 class="news-title">
<i class="fas fa-newspaper mr-2"></i>
<span data-i18n="news.title">ALL NEWS</span>
</h2>
</div>
<div id="allNewsGrid" class="news-grid-full"></div>
</div>
<div id="settings-page" class="page">
<div class="settings-container">
@@ -950,34 +939,34 @@
</div>
</div>
<div class="version-display-bottom">
<div class="version-display-bottom" onclick="window.electronAPI?.openExternal('https://git.sanhost.net/sanasol/hytale-f2p/releases')" style="cursor: pointer;" title="View releases">
<i class="fas fa-code-branch"></i>
<span id="launcherVersion"></span>
</div>
<footer class="fixed bottom-0 left-0 right-0 z-50 bg-black/80 backdrop-blur-sm px-4 py-2">
<div class="flex items-center justify-center text-xs text-gray-400">
<span>Made by <a href="https://github.com/amiayweb" target="_blank"
<span>Made by <a href="#" onclick="window.electronAPI?.openExternal('https://github.com/amiayweb'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@amiayweb</a> & <a
href="https://github.com/Relyz1993" target="_blank"
href="#" onclick="window.electronAPI?.openExternal('https://github.com/Relyz1993'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@Relyz</a></span>
<span class="mx-2">|</span>
<span>Contributors:
<a href="https://github.com/chasem-dev" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/chasem-dev'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@chasem-dev</a>,
<a href="https://github.com/crimera" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/crimera'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@crimera</a>,
<a href="https://github.com/sanasol" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/sanasol'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@sanasol</a>,
<a href="https://github.com/Terromur" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/Terromur'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@terromur</a>,
<a href="https://github.com/ericiskoolbeans" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/ericiskoolbeans'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@ericiskoolbeans</a>,
<a href="https://github.com/fazrigading" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/fazrigading'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@fazrigading</a>,
<a href="https://github.com/Rahul-Sahani04" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/Rahul-Sahani04'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@Rahul-Sahani04</a>,
<a href="https://github.com/xSamiVS" target="_blank"
<a href="#" onclick="window.electronAPI?.openExternal('https://github.com/xSamiVS'); return false;"
class="text-blue-400 hover:text-blue-300 transition-colors">@xSamiVS</a>
</span>
</div>