feat(electron): implement inline metadata editing with save options modal

- Remove Edit button from header, add pencil icons next to editable fields
- Add inline editing for Version, Author, and Comment metadata fields
- Implement save options modal with overwrite/save-as-new functionality
- Add file dialog integration for save-as-new option
- Fix backend MANIFEST_FILENAME error by using correct string literals
- Add CSS styling for editable fields and save options modal
- Clean up debug logging code

BREAKING CHANGE: Edit button removed from UI in favor of inline editing
This commit is contained in:
2025-08-09 20:16:07 -04:00
parent 15c9755611
commit 45de795920
5 changed files with 397 additions and 10 deletions

View File

@@ -370,6 +370,99 @@ body {
vertical-align: middle;
}
/* Inline Editing Styles */
.editable-field {
position: relative;
display: flex;
align-items: center;
gap: 8px;
}
.edit-icon {
background: none;
border: none;
cursor: pointer;
font-size: 14px;
padding: 4px;
border-radius: 4px;
transition: background-color 0.2s;
opacity: 0.6;
}
.edit-icon:hover {
background-color: var(--border-color);
opacity: 1;
}
.field-input {
padding: 4px 8px;
border: 1px solid var(--border-color);
border-radius: 4px;
font-size: 14px;
font-family: var(--font-family);
background-color: white;
min-width: 200px;
}
.field-input:focus {
outline: none;
border-color: var(--primary-color);
box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.2);
}
.field-display {
flex: 1;
}
.hidden {
display: none !important;
}
/* Save Options Modal */
.save-options {
display: flex;
flex-direction: column;
gap: 12px;
margin-top: 20px;
}
.save-option-btn {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 16px;
border: 2px solid var(--border-color);
border-radius: 8px;
background: white;
cursor: pointer;
transition: all 0.2s;
text-align: left;
}
.save-option-btn:hover {
border-color: var(--primary-color);
background-color: rgba(52, 152, 219, 0.05);
}
.save-option-btn.primary {
border-color: var(--primary-color);
}
.save-option-btn.secondary {
border-color: var(--text-light);
}
.save-option-btn strong {
font-size: 16px;
margin-bottom: 4px;
color: var(--text-color);
}
.save-option-btn small {
font-size: 14px;
color: var(--text-light);
}
.progress-indicator.spinner-icon {
border: 2px solid var(--text-color-light);
border-top: 2px solid var(--primary-color);