Skip to content

Commit d68e0ce

Browse files
committed
fix mobile responsiveness across all pages
- Stack section header filters/sort controls vertically on mobile - Make bulk action bar, checkbox rows, and option rows stack on mobile - Collapse settings form rows to single column with reduced nested indents - Add mobile styles for modal/dialog buttons (full-width, stacked) - Make download form save dialog and flag labels wrap properly - Show category doc links on touch (no hover-only)
1 parent 4dc7cd1 commit d68e0ce

4 files changed

Lines changed: 146 additions & 0 deletions

File tree

src/lib/components/download/DownloadForm.svelte

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1883,5 +1883,31 @@
18831883
.btn-clear-flags {
18841884
flex: 1;
18851885
}
1886+
1887+
.save-dialog {
1888+
flex-wrap: wrap;
1889+
}
1890+
1891+
.save-dialog input {
1892+
width: 100%;
1893+
}
1894+
1895+
.save-dialog .btn-sm {
1896+
flex: 1;
1897+
}
1898+
1899+
.flag-toggle {
1900+
flex-wrap: wrap;
1901+
}
1902+
1903+
.flag-code {
1904+
order: 3;
1905+
width: 100%;
1906+
margin-top: 2px;
1907+
}
1908+
1909+
.category-docs {
1910+
opacity: 1;
1911+
}
18861912
}
18871913
</style>

src/lib/components/ui/Modal.svelte

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,24 @@
141141
.btn-secondary:hover {
142142
background: var(--bg-hover);
143143
}
144+
145+
@media (max-width: 768px) {
146+
.modal {
147+
width: 95%;
148+
}
149+
150+
.modal-header,
151+
.modal-body,
152+
.modal-footer {
153+
padding: var(--spacing-md);
154+
}
155+
156+
.modal-footer {
157+
flex-direction: column-reverse;
158+
}
159+
160+
.modal-footer button {
161+
width: 100%;
162+
}
163+
}
144164
</style>

src/routes/+page.svelte

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2268,6 +2268,11 @@
22682268
flex-wrap: wrap;
22692269
}
22702270
2271+
.actions .btn {
2272+
flex: 1;
2273+
min-width: 0;
2274+
}
2275+
22712276
.backfill-menu {
22722277
padding: var(--spacing-md);
22732278
}
@@ -2285,5 +2290,79 @@
22852290
.download-card .content {
22862291
padding: var(--spacing-md);
22872292
}
2293+
2294+
.section-header {
2295+
flex-direction: column;
2296+
align-items: stretch;
2297+
}
2298+
2299+
.section-header-left {
2300+
justify-content: space-between;
2301+
}
2302+
2303+
.section-header-right {
2304+
flex-wrap: wrap;
2305+
}
2306+
2307+
.completed-filter {
2308+
width: 100%;
2309+
}
2310+
2311+
.completed-filter .tab {
2312+
flex: 1;
2313+
text-align: center;
2314+
}
2315+
2316+
.channel-dropdown,
2317+
.sort-dropdown {
2318+
flex: 1;
2319+
min-width: 0;
2320+
}
2321+
2322+
.channel-dropdown-trigger {
2323+
width: 100%;
2324+
justify-content: center;
2325+
}
2326+
2327+
.channel-dropdown-label {
2328+
overflow: hidden;
2329+
text-overflow: ellipsis;
2330+
}
2331+
2332+
.channel-dropdown-menu {
2333+
left: 0;
2334+
right: 0;
2335+
min-width: unset;
2336+
}
2337+
2338+
.bulk-bar {
2339+
flex-direction: column;
2340+
gap: var(--spacing-sm);
2341+
padding: var(--spacing-md);
2342+
}
2343+
2344+
.bulk-actions {
2345+
width: 100%;
2346+
flex-wrap: wrap;
2347+
}
2348+
2349+
.bulk-actions .btn {
2350+
flex: 1;
2351+
min-width: 0;
2352+
}
2353+
2354+
.checkbox-row {
2355+
flex-direction: column;
2356+
gap: var(--spacing-sm);
2357+
}
2358+
2359+
.options-row {
2360+
flex-direction: column;
2361+
align-items: flex-start;
2362+
}
2363+
2364+
.meta {
2365+
gap: var(--spacing-sm);
2366+
}
22882367
}
22892368
</style>

src/routes/settings/+page.svelte

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1226,6 +1226,10 @@
12261226
font-size: 1.25rem;
12271227
}
12281228
1229+
.form-row {
1230+
grid-template-columns: 1fr;
1231+
}
1232+
12291233
.form-group input[type='text'],
12301234
.form-group input[type='number'],
12311235
.form-group input[type='email'],
@@ -1243,6 +1247,15 @@
12431247
width: 100%;
12441248
}
12451249
1250+
.nested-field {
1251+
margin-left: var(--spacing-sm);
1252+
padding-left: var(--spacing-md);
1253+
}
1254+
1255+
.jellyfin-test {
1256+
flex-wrap: wrap;
1257+
}
1258+
12461259
.create-user-form {
12471260
padding: var(--spacing-md);
12481261
}
@@ -1275,5 +1288,13 @@
12751288
.modal-body {
12761289
padding: var(--spacing-md);
12771290
}
1291+
1292+
.modal-actions {
1293+
flex-direction: column;
1294+
}
1295+
1296+
.modal-actions button {
1297+
width: 100%;
1298+
}
12781299
}
12791300
</style>

0 commit comments

Comments
 (0)