Skip to content

Commit dab4c17

Browse files
fix: keep operator close button docked on tablets
1 parent 1a4c701 commit dab4c17

3 files changed

Lines changed: 36 additions & 3 deletions

File tree

SPEC.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Sistema de apontamento operacional para UMBs e caminhões, com frontend no GitHu
2020
- Cada equipamento pode ter no máximo um apontamento aberto.
2121
- Ao iniciar uma nova atividade, o sistema encerra automaticamente o apontamento aberto anterior do mesmo operador.
2222
- O módulo operacional trabalha com um único turno implícito; não há seleção nem gestão de turnos na interface.
23-
- O operador encerra manualmente o apontamento em aberto no fim do expediente pelo botão `Encerrar a atividade`, exibido no rodapé da página.
23+
- O operador encerra manualmente o apontamento em aberto no fim do expediente pelo botão `Encerrar a atividade`, exibido no rodapé da página e mantido fixo em tablets para não cobrir o conteúdo.
2424
- Os campos `Local`, `Descrição da falha`, `Ação corretiva` e `Tipo / Classificação` deixam de ser editados pelo operador; a classificação passa a ser derivada do código da atividade.
2525
- Hora final deve ser maior que hora inicial.
2626
- Lançamento manual é permitido, mas deve ser identificado.

src/pages/OperatorPanel.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ export function OperatorPanel({ standalone = false, onLogout }) {
7171
}
7272

7373
return (
74-
<div className="page-stack">
74+
<div className="page-stack operator-panel">
7575
{standalone ? (
7676
<section className="card operator-topbar card--shell">
7777
<div>

src/styles.css

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1387,13 +1387,46 @@ label > span {
13871387
z-index: 30;
13881388
min-width: min(320px, calc(100vw - 48px));
13891389
justify-content: center;
1390-
box-shadow: var(--shadow-strong);
1390+
box-shadow: var(--shadow-soft);
13911391
}
13921392

13931393
.operator-flow-note {
13941394
margin-top: -4px;
13951395
}
13961396

1397+
@media (min-width: 641px) and (max-width: 1180px) {
1398+
.operator-panel {
1399+
padding-bottom: calc(132px + env(safe-area-inset-bottom));
1400+
}
1401+
1402+
.operator-actions-footer {
1403+
position: fixed;
1404+
left: 50%;
1405+
right: auto;
1406+
bottom: 16px;
1407+
z-index: 30;
1408+
width: min(420px, calc(100vw - 32px));
1409+
margin-top: 0;
1410+
padding: 12px 12px calc(12px + env(safe-area-inset-bottom));
1411+
justify-content: center;
1412+
border: 1px solid var(--line);
1413+
border-radius: 22px;
1414+
background: rgba(255, 255, 255, 0.94);
1415+
box-shadow: var(--shadow-soft);
1416+
backdrop-filter: blur(18px);
1417+
transform: translateX(-50%);
1418+
}
1419+
1420+
.operator-finish-button {
1421+
position: static;
1422+
right: auto;
1423+
bottom: auto;
1424+
width: 100%;
1425+
min-width: 0;
1426+
box-shadow: none;
1427+
}
1428+
}
1429+
13971430
.settings-rows {
13981431
display: grid;
13991432
gap: 12px;

0 commit comments

Comments
 (0)