Skip to content

Commit 48d96b3

Browse files
committed
Fix Editor page mobile responsiveness: toolbar wrapping, flexible widths, responsive drawer
1 parent c5e24fd commit 48d96b3

3 files changed

Lines changed: 67 additions & 7 deletions

File tree

cloud/src/LrmCloud.Web/Components/TranslationGrid.razor

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
@inject NotificationService NotificationService
44

55
@* Toolbar *@
6-
<RadzenCard class="rz-mb-2 rz-p-2">
6+
<RadzenCard class="rz-mb-2 rz-p-2 translation-toolbar">
77
<RadzenStack Orientation="Radzen.Orientation.Horizontal" AlignItems="Radzen.AlignItems.Center" Gap="0.5rem" Wrap="FlexWrap.Wrap">
8-
<RadzenFormField Variant="Radzen.Variant.Outlined" Style="width: 250px;">
8+
<RadzenFormField Variant="Radzen.Variant.Outlined" Style="flex: 1 1 200px; min-width: 150px; max-width: 300px;">
99
<Start>
1010
<RadzenIcon Icon="search" />
1111
</Start>
@@ -14,7 +14,7 @@
1414
</ChildContent>
1515
</RadzenFormField>
1616

17-
<RadzenFormField Text="Status" Variant="Radzen.Variant.Outlined" Style="width: 150px;">
17+
<RadzenFormField Text="Status" Variant="Radzen.Variant.Outlined" Style="flex: 0 1 150px; min-width: 120px;">
1818
<ChildContent>
1919
<RadzenDropDown TValue="TranslationStatus?" @bind-Value="_statusFilter" Change="@OnStatusFilterChanged"
2020
Data="@_statusOptions" TextProperty="Text" ValueProperty="Value"
@@ -24,7 +24,7 @@
2424

2525
@if (WorkflowEnabled)
2626
{
27-
<RadzenFormField Text="Workflow" Variant="Radzen.Variant.Outlined" Style="width: 150px;">
27+
<RadzenFormField Text="Workflow" Variant="Radzen.Variant.Outlined" Style="flex: 0 1 150px; min-width: 120px;">
2828
<ChildContent>
2929
<RadzenDropDown TValue="string?" @bind-Value="_workflowStatusFilter" Change="@OnWorkflowFilterChanged"
3030
Data="@_workflowOptions" TextProperty="Text" ValueProperty="Value"

cloud/src/LrmCloud.Web/Pages/Projects/Editor.razor

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,8 @@ else
7272
</RadzenStack>
7373
}
7474

75-
<div style="display: flex; gap: 1rem;">
76-
<div style="@(_drawerOpen ? "flex: 1; min-width: 0;" : "flex: 1;")">
75+
<div style="display: flex; flex-wrap: wrap; gap: 1rem;">
76+
<div style="@(_drawerOpen ? "flex: 1 1 300px; min-width: 0;" : "flex: 1;")">
7777
<TranslationGrid @ref="_translationGrid"
7878
ServerDataFunc="@LoadServerData"
7979
Languages="@_languages"
@@ -94,7 +94,7 @@ else
9494

9595
@if (_drawerOpen && _selectedRow != null)
9696
{
97-
<RadzenCard Style="width: 400px; height: fit-content; flex-shrink: 0; position: sticky; top: 1rem;">
97+
<RadzenCard class="editor-drawer">
9898
<RadzenStack Gap="1rem">
9999
<RadzenStack Orientation="Radzen.Orientation.Horizontal" JustifyContent="JustifyContent.SpaceBetween" AlignItems="Radzen.AlignItems.Center">
100100
<RadzenText TextStyle="TextStyle.H6">Key Preview</RadzenText>

cloud/src/LrmCloud.Web/wwwroot/css/app.css

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1490,3 +1490,63 @@ ul.rz-profile-menu > li > ul.rz-navigation-menu {
14901490
}
14911491
}
14921492

1493+
/* =============================================================================
1494+
Editor Page Responsive
1495+
============================================================================= */
1496+
1497+
/* Editor drawer - desktop */
1498+
.editor-drawer {
1499+
width: 400px;
1500+
height: fit-content;
1501+
flex-shrink: 0;
1502+
position: sticky;
1503+
top: 1rem;
1504+
}
1505+
1506+
/* Editor drawer - tablet */
1507+
@media (max-width: 991px) {
1508+
.editor-drawer {
1509+
width: 320px;
1510+
}
1511+
}
1512+
1513+
/* Editor drawer - mobile */
1514+
@media (max-width: 768px) {
1515+
.editor-drawer {
1516+
width: 100%;
1517+
flex: 1 1 100%;
1518+
position: static;
1519+
order: -1;
1520+
}
1521+
}
1522+
1523+
/* Translation toolbar responsive */
1524+
.translation-toolbar .rz-stack {
1525+
row-gap: 0.5rem;
1526+
}
1527+
1528+
@media (max-width: 599px) {
1529+
.translation-toolbar .rz-form-field {
1530+
flex: 1 1 100% !important;
1531+
min-width: 100% !important;
1532+
max-width: 100% !important;
1533+
}
1534+
1535+
.translation-toolbar .rz-button {
1536+
flex: 1 1 auto;
1537+
min-width: 44px;
1538+
padding-left: 0.5rem;
1539+
padding-right: 0.5rem;
1540+
}
1541+
1542+
/* Hide button text on very small screens */
1543+
.translation-toolbar .rz-button .rz-button-text {
1544+
display: none;
1545+
}
1546+
1547+
/* Ensure split button also responsive */
1548+
.translation-toolbar .rz-splitbutton {
1549+
flex: 0 0 auto;
1550+
}
1551+
}
1552+

0 commit comments

Comments
 (0)