Skip to content

Commit 745f70d

Browse files
authored
Merge branch 'epic/AC-DC' into TTS-273
2 parents e48f225 + 039fc42 commit 745f70d

1 file changed

Lines changed: 32 additions & 18 deletions

File tree

src/Components/Footer/Components/OptionButton.tsx

Lines changed: 32 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@ import {
2121
Chip,
2222
Typography,
2323
Collapse,
24-
RadioGroup,
25-
Radio,
2624
} from '@mui/material';
2725
import { useTranslation } from 'react-i18next';
2826
import GeneralSettingsDialog from './GeneralSettingsDialog.tsx';
@@ -149,8 +147,11 @@ function OptionButton(props: OptionButtonProps) {
149147
return localStorage.getItem('serverSideRecordingChecked') === 'true';
150148
},
151149
);
152-
const [serverRecordingMode, setServerRecordingMode] = React.useState<'grid' | 'separate'>(() => {
153-
return localStorage.getItem('serverRecordingMode') === 'separate' ? 'separate' : 'grid';
150+
const [gridRecordingChecked, setGridRecordingChecked] = React.useState<boolean>(() => {
151+
return localStorage.getItem('gridRecordingChecked') !== 'false';
152+
});
153+
const [recordSeparatelyChecked, setRecordSeparatelyChecked] = React.useState<boolean>(() => {
154+
return localStorage.getItem('recordSeparatelyChecked') === 'true';
154155
});
155156

156157
React.useEffect(() => {
@@ -162,8 +163,12 @@ function OptionButton(props: OptionButtonProps) {
162163
}, [serverSideRecordingChecked]);
163164

164165
React.useEffect(() => {
165-
localStorage.setItem('serverRecordingMode', serverRecordingMode);
166-
}, [serverRecordingMode]);
166+
localStorage.setItem('gridRecordingChecked', String(gridRecordingChecked));
167+
}, [gridRecordingChecked]);
168+
169+
React.useEffect(() => {
170+
localStorage.setItem('recordSeparatelyChecked', String(recordSeparatelyChecked));
171+
}, [recordSeparatelyChecked]);
167172
const [_hovered, setHovered] = React.useState<boolean>(false);
168173
const theme = useTheme();
169174
const themeContext = React.useContext(ThemeContext);
@@ -297,7 +302,7 @@ function OptionButton(props: OptionButtonProps) {
297302
};
298303

299304
const handleRecordingConfirm = (): void => {
300-
const recordSeparately = serverSideRecordingChecked && serverRecordingMode === 'separate';
305+
const recordSeparately = serverSideRecordingChecked && recordSeparatelyChecked;
301306
props?.startRecord?.(recordSeparately, serverSideRecordingChecked, localRecordingChecked);
302307
if (localRecordingChecked && props.startLocalRecording) {
303308
props.startLocalRecording();
@@ -433,14 +438,15 @@ function OptionButton(props: OptionButtonProps) {
433438
}
434439
/>
435440
<Collapse in={serverSideRecordingChecked}>
436-
<RadioGroup
437-
value={serverRecordingMode}
438-
onChange={(e) => setServerRecordingMode(e.target.value as 'grid' | 'separate')}
439-
sx={{ pl: 4, pr: 1, pb: 0.5 }}
440-
>
441+
<Box sx={{ pl: 4, pr: 1, pb: 0.5 }}>
441442
<FormControlLabel
442-
value="grid"
443-
control={<Radio size="small" />}
443+
control={
444+
<Checkbox
445+
size="small"
446+
checked={gridRecordingChecked}
447+
onChange={(e) => setGridRecordingChecked(e.target.checked)}
448+
/>
449+
}
444450
sx={{ alignItems: 'flex-start', width: '100%', m: 0, mt: 1 }}
445451
label={
446452
<Box>
@@ -452,8 +458,13 @@ function OptionButton(props: OptionButtonProps) {
452458
}
453459
/>
454460
<FormControlLabel
455-
value="separate"
456-
control={<Radio size="small" />}
461+
control={
462+
<Checkbox
463+
size="small"
464+
checked={recordSeparatelyChecked}
465+
onChange={(e) => setRecordSeparatelyChecked(e.target.checked)}
466+
/>
467+
}
457468
sx={{ alignItems: 'flex-start', width: '100%', m: 0, mt: 1.5 }}
458469
label={
459470
<Box>
@@ -468,7 +479,7 @@ function OptionButton(props: OptionButtonProps) {
468479
</Box>
469480
}
470481
/>
471-
</RadioGroup>
482+
</Box>
472483
</Collapse>
473484
</Box>
474485
<Box
@@ -508,7 +519,10 @@ function OptionButton(props: OptionButtonProps) {
508519
<Button
509520
onClick={handleRecordingConfirm}
510521
variant="contained"
511-
disabled={!serverSideRecordingChecked && !localRecordingChecked}
522+
disabled={
523+
(!serverSideRecordingChecked && !localRecordingChecked) ||
524+
(serverSideRecordingChecked && !gridRecordingChecked && !recordSeparatelyChecked)
525+
}
512526
>
513527
{t('Start Recording')}
514528
</Button>

0 commit comments

Comments
 (0)