feat(src/shared): introduce settings window and refine visibility configurationAdd a dedicated settings window with full CSS styling and improve UI consistency
- New Settings window implementation with styling and layout - Updated visibility configuration to use direct configuration keys - Simplified layer‑shell positioning logic and improved reliability Enhancements- Refactored MouseCapture geometry calculations for cleaner code - Integrated size‑allocate handler to maintain input region sync - Added global About window singleton and improved toggle behavior Bug Fixes - Fixed potential index errors in MouseCapture coordinate calculations- Resolved missing imports and path issues for icon assets
This commit is contained in:
5 files changed
+202
-68
No files matched your search
@@ -0,0 +1,146 @@
|
||||
#settings-window {
|
||||
background-color: var(--background);
|
||||
border-radius: 12px;
|
||||
border: 1px solid var(--border);
|
||||
min-width: 850px;
|
||||
min-height: 600px;
|
||||
}
|
||||
|
||||
#settings-main-box {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#settings-sidebar {
|
||||
background-color: rgba(0, 0, 0, 0.05);
|
||||
padding: 20px 10px;
|
||||
min-width: 200px;
|
||||
border-right: 1px solid var(--border);
|
||||
}
|
||||
|
||||
#settings-sidebar-button {
|
||||
padding: 10px 15px;
|
||||
border-radius: 8px;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
#settings-sidebar-button:hover {
|
||||
background-color: rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
|
||||
#settings-sidebar-button Label {
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
#settings-sidebar-button.active {
|
||||
background-color: var(--accent);
|
||||
}
|
||||
|
||||
#settings-sidebar-button.active Label {
|
||||
color: var(--accent-foreground);
|
||||
}
|
||||
|
||||
#settings-content-wrapper {
|
||||
padding: 30px;
|
||||
}
|
||||
|
||||
#settings-page-title {
|
||||
font-size: 24px;
|
||||
font-weight: 700;
|
||||
margin-bottom: 20px;
|
||||
color: var(--foreground);
|
||||
}
|
||||
|
||||
#settings-row {
|
||||
padding: 12px 15px;
|
||||
border-radius: 8px;
|
||||
background-color: rgba(255, 255, 255, 0.03);
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
#settings-row-label {
|
||||
font-size: 15px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
#settings-row-description {
|
||||
font-size: 12px;
|
||||
color: var(--foreground-dim);
|
||||
}
|
||||
|
||||
#settings-switch {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
padding: 6px 12px;
|
||||
border-radius: 20px;
|
||||
min-width: 50px;
|
||||
transition: all 0.2s ease;
|
||||
}
|
||||
|
||||
#settings-switch.active {
|
||||
background-color: var(--accent);
|
||||
color: var(--accent-foreground);
|
||||
}
|
||||
|
||||
#settings-entry {
|
||||
background-color: rgba(255, 255, 255, 0.05);
|
||||
padding: 8px 12px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid var(--border);
|
||||
min-width: 200px;
|
||||
color: var(--foreground);
|
||||
}
|
||||
|
||||
#settings-entry:focus {
|
||||
border-color: var(--accent);
|
||||
}
|
||||
|
||||
#settings-combo {
|
||||
background-color: rgba(255, 255, 255, 0.05);
|
||||
padding: 4px 8px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid var(--border);
|
||||
min-width: 150px;
|
||||
color: var(--foreground);
|
||||
}
|
||||
|
||||
#settings-combo:hover {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
#settings-list-tags {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
#settings-list-tag {
|
||||
background-color: rgba(255, 255, 255, 0.08);
|
||||
border-radius: 15px;
|
||||
padding: 4px 10px;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
#settings-list-tag:hover {
|
||||
background-color: rgba(255, 255, 255, 0.15);
|
||||
}
|
||||
|
||||
#settings-list-tag Label {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
#settings-list-tag-close {
|
||||
color: var(--foreground-dim);
|
||||
font-size: 10px;
|
||||
margin-left: 3px;
|
||||
}
|
||||
|
||||
#settings-list-tag-close:hover {
|
||||
color: var(--accent);
|
||||
}
|
||||
|
||||
#settings-list-entry {
|
||||
background-color: rgba(255, 255, 255, 0.03);
|
||||
border: 1px dashed var(--border);
|
||||
padding: 6px 12px;
|
||||
border-radius: 6px;
|
||||
font-size: 13px;
|
||||
}
|
||||
Reference in new issue
Block a user