mirror of
https://git.sanhost.net/sanasol/hytale-f2p.git
synced 2026-02-27 07:11:47 -03:00
v2.4.4: Rename Profiles to Configurations, add Identity Switcher
- Rename "Profiles" to "Configurations" in all UI text and 11 locale files - Add identity switcher dropdown in header (green accent, fa-id-badge icon) - Quick-switch player identity without opening Settings - "Manage" action opens UUID Management modal - Header tooltips explaining what each dropdown does - Config dropdown icon changed from fa-user-circle to fa-sliders-h - Global Escape key handler for closing modals and dropdowns - Fix identity selector not clickable (missing -webkit-app-region: no-drag) - Sync header identity name after all identity-changing operations - XSS protection in identity list rendering Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
110
GUI/index.html
110
GUI/index.html
@@ -73,22 +73,40 @@
|
||||
<span id="onlineCount" class="counter-value">0</span>
|
||||
</div>
|
||||
|
||||
<div class="identity-selector" id="identitySelector">
|
||||
<button class="identity-btn" onclick="toggleIdentityDropdown()">
|
||||
<i class="fas fa-id-badge"></i>
|
||||
<span id="currentIdentityName">Player</span>
|
||||
<i class="fas fa-chevron-down"></i>
|
||||
</button>
|
||||
<div class="identity-dropdown" id="identityDropdown">
|
||||
<div class="identity-list" id="identityList"></div>
|
||||
<div class="identity-divider"></div>
|
||||
<div class="identity-action" onclick="openIdentityManager()">
|
||||
<i class="fas fa-fingerprint"></i>
|
||||
<span data-i18n="header.manageIdentities">Manage</span>
|
||||
</div>
|
||||
</div>
|
||||
<span class="header-tooltip" data-i18n="header.identityTooltip">Your player name & UUID used in-game</span>
|
||||
</div>
|
||||
|
||||
<div class="profile-selector" id="profileSelector">
|
||||
<button class="profile-btn" onclick="toggleProfileDropdown()">
|
||||
<i class="fas fa-user-circle"></i>
|
||||
<i class="fas fa-sliders-h"></i>
|
||||
<span id="currentProfileName">Default</span>
|
||||
<i class="fas fa-chevron-down"></i>
|
||||
</button>
|
||||
<div class="profile-dropdown" id="profileDropdown">
|
||||
<div class="profile-list" id="profileList">
|
||||
<!-- Profiles populated by JS -->
|
||||
<!-- Configurations populated by JS -->
|
||||
</div>
|
||||
<div class="profile-divider"></div>
|
||||
<div class="profile-action" onclick="openProfileManager()">
|
||||
<i class="fas fa-cog"></i>
|
||||
<span data-i18n="header.manageProfiles">Manage Profiles</span>
|
||||
<span data-i18n="header.manageProfiles">Manage</span>
|
||||
</div>
|
||||
</div>
|
||||
<span class="header-tooltip" data-i18n="header.configTooltip">Game config: mods, Java & memory settings</span>
|
||||
</div>
|
||||
|
||||
<div class="window-controls">
|
||||
@@ -736,28 +754,40 @@
|
||||
</div>
|
||||
|
||||
<div class="uuid-modal-body">
|
||||
<div class="uuid-current-section">
|
||||
<h3 class="uuid-section-title" data-i18n="uuid.currentUserUUID">Current User UUID</h3>
|
||||
<div class="uuid-current-display">
|
||||
<input type="text" id="modalCurrentUuid" class="uuid-display-input" readonly />
|
||||
<button id="modalCopyUuidBtn" class="uuid-action-btn copy-btn" title="Copy UUID">
|
||||
<i class="fas fa-copy"></i>
|
||||
</button>
|
||||
<button id="modalRegenerateUuidBtn" class="uuid-action-btn regenerate-btn"
|
||||
title="Generate New UUID">
|
||||
<i class="fas fa-sync-alt"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="uuid-list-section">
|
||||
<div class="uuid-list-header">
|
||||
<h3 class="uuid-section-title" data-i18n="uuid.allPlayerUUIDs">All Player UUIDs</h3>
|
||||
<button id="generateNewUuidBtn" class="uuid-generate-btn">
|
||||
<button id="addIdentityBtn" class="uuid-generate-btn">
|
||||
<i class="fas fa-plus"></i>
|
||||
<span data-i18n="uuid.generateNew">Generate New UUID</span>
|
||||
<span data-i18n="uuid.addIdentity">Add Identity</span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="uuidAddForm" class="uuid-add-form" style="display: none;">
|
||||
<div class="uuid-add-form-row">
|
||||
<input type="text" id="addIdentityUsername" class="uuid-input"
|
||||
data-i18n-placeholder="uuid.usernamePlaceholder"
|
||||
placeholder="Username" maxlength="16" />
|
||||
</div>
|
||||
<div class="uuid-add-form-row">
|
||||
<input type="text" id="addIdentityUuid" class="uuid-input"
|
||||
data-i18n-placeholder="uuid.customPlaceholder"
|
||||
placeholder="UUID (auto-generated)" maxlength="36" />
|
||||
<button id="addIdentityRegenerateBtn" class="uuid-action-btn regenerate-btn"
|
||||
title="Generate new UUID">
|
||||
<i class="fas fa-sync-alt"></i>
|
||||
</button>
|
||||
</div>
|
||||
<div class="uuid-add-form-actions">
|
||||
<button id="addIdentityConfirmBtn" class="uuid-set-btn">
|
||||
<i class="fas fa-check"></i>
|
||||
<span data-i18n="uuid.add">Add</span>
|
||||
</button>
|
||||
<button id="addIdentityCancelBtn" class="uuid-cancel-btn">
|
||||
<i class="fas fa-times"></i>
|
||||
<span data-i18n="uuid.cancel">Cancel</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="uuidList" class="uuid-list">
|
||||
<div class="uuid-loading">
|
||||
<i class="fas fa-spinner fa-spin"></i>
|
||||
@@ -766,21 +796,27 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="uuid-custom-section">
|
||||
<h3 class="uuid-section-title" data-i18n="uuid.setCustomUUID">Set Custom UUID</h3>
|
||||
<div class="uuid-custom-form">
|
||||
<input type="text" id="customUuidInput" class="uuid-input"
|
||||
data-i18n-placeholder="uuid.customPlaceholder" maxlength="36" />
|
||||
<button id="setCustomUuidBtn" class="uuid-set-btn">
|
||||
<i class="fas fa-check"></i>
|
||||
<span data-i18n="uuid.setUUID">Set UUID</span>
|
||||
</button>
|
||||
<div class="uuid-advanced-section">
|
||||
<button id="uuidAdvancedToggle" class="uuid-advanced-toggle">
|
||||
<i class="fas fa-chevron-right uuid-advanced-chevron"></i>
|
||||
<span data-i18n="uuid.advanced">Advanced</span>
|
||||
</button>
|
||||
<div id="uuidAdvancedContent" class="uuid-advanced-content" style="display: none;">
|
||||
<h3 class="uuid-section-title" data-i18n="uuid.setCustomUUID">Set Custom UUID</h3>
|
||||
<div class="uuid-custom-form">
|
||||
<input type="text" id="customUuidInput" class="uuid-input"
|
||||
data-i18n-placeholder="uuid.customPlaceholder" maxlength="36" />
|
||||
<button id="setCustomUuidBtn" class="uuid-set-btn">
|
||||
<i class="fas fa-check"></i>
|
||||
<span data-i18n="uuid.setUUID">Set UUID</span>
|
||||
</button>
|
||||
</div>
|
||||
<p class="uuid-custom-hint">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
<span data-i18n="uuid.warning">Warning: Setting a custom UUID will change your current player
|
||||
identity</span>
|
||||
</p>
|
||||
</div>
|
||||
<p class="uuid-custom-hint">
|
||||
<i class="fas fa-exclamation-triangle"></i>
|
||||
<span data-i18n="uuid.warning">Warning: Setting a custom UUID will change your current player
|
||||
identity</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -791,8 +827,8 @@
|
||||
<div class="profile-modal-content">
|
||||
<div class="profile-modal-header">
|
||||
<h2 class="profile-modal-title">
|
||||
<i class="fas fa-users-cog mr-2"></i>
|
||||
<span data-i18n="profiles.modalTitle">Manage Profiles</span>
|
||||
<i class="fas fa-sliders-h mr-2"></i>
|
||||
<span data-i18n="configurations.modalTitle">Manage Configurations</span>
|
||||
</h2>
|
||||
<button class="modal-close-btn" onclick="closeProfileManager()">
|
||||
<i class="fas fa-times"></i>
|
||||
@@ -803,10 +839,10 @@
|
||||
<!-- Populated by JS -->
|
||||
</div>
|
||||
<div class="profile-create-section">
|
||||
<input type="text" id="newProfileName" data-i18n-placeholder="profiles.newProfilePlaceholder"
|
||||
<input type="text" id="newProfileName" data-i18n-placeholder="configurations.newProfilePlaceholder"
|
||||
class="profile-input" maxlength="20">
|
||||
<button class="profile-create-btn" onclick="createNewProfile()">
|
||||
<i class="fas fa-plus"></i> <span data-i18n="profiles.createProfile">Create Profile</span>
|
||||
<i class="fas fa-plus"></i> <span data-i18n="configurations.createProfile">Create Configuration</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user