@@ -220,7 +220,7 @@ function Stepper({ steps, currentStep, onStepClick }) {
220220// Landing page component
221221function LandingPage ( { onStart } ) {
222222 return (
223- < div className = "flex flex-col items-center justify-center h-full gap-8 p-8" >
223+ < div className = "wizard-screen flex flex-col items-center justify-center h-full gap-8 p-8" >
224224 < img src = { comma } alt = "comma" width = { 80 } height = { 80 } className = "dark:invert" />
225225 < div className = "text-center" >
226226 < h1 className = "text-4xl font-bold dark:text-white mb-4" > flash.comma.ai</ h1 >
@@ -244,7 +244,7 @@ const PRODUCT_ID = '9008'
244244
245245function WindowsZadig ( { onNext } ) {
246246 return (
247- < div className = "flex flex-col items-center justify-center h-full gap-6 p-8 overflow-y-auto" >
247+ < div className = "wizard-screen flex flex-col items-center justify-center h-full gap-6 p-8 overflow-y-auto" >
248248 < div className = "text-center" >
249249 < h2 className = "text-3xl font-bold dark:text-white mb-2" > Install USB Driver</ h2 >
250250 < p className = "text-gray-600 dark:text-gray-300" > Windows requires a driver to communicate with your device</ p >
@@ -292,7 +292,7 @@ function ConnectInstructions({ deviceType, onNext }) {
292292 const isCommaFour = deviceType === DeviceType . COMMA_4
293293
294294 return (
295- < div className = "flex flex-col items-center justify-center h-full gap-6 p-8" >
295+ < div className = "wizard-screen flex flex-col items-center justify-center h-full gap-6 p-8" >
296296 < div className = "text-center" >
297297 < h2 className = "text-3xl font-bold dark:text-white mb-2" > Connect your device</ h2 >
298298 < p className = "text-gray-600 dark:text-gray-300" > Follow these steps to put your device into QDL mode</ p >
@@ -348,7 +348,7 @@ function LinuxUnbind({ onNext }) {
348348 }
349349
350350 return (
351- < div className = "flex flex-col items-center justify-center h-full gap-6 p-8" >
351+ < div className = "wizard-screen flex flex-col items-center justify-center h-full gap-6 p-8" >
352352 < div className = "text-center" >
353353 < h2 className = "text-3xl font-bold dark:text-white mb-2" > Unbind from qcserial</ h2 >
354354 < p className = "text-gray-600 dark:text-gray-300 max-w-lg" >
@@ -384,7 +384,7 @@ function DevicePicker({ onSelect }) {
384384 const [ selected , setSelected ] = useState ( null )
385385
386386 return (
387- < div className = "flex flex-col items-center justify-center h-full gap-8 p-8" >
387+ < div className = "wizard-screen flex flex-col items-center justify-center h-full gap-8 p-8" >
388388 < div className = "text-center" >
389389 < h2 className = "text-3xl font-bold dark:text-white mb-2" > Which device are you flashing?</ h2 >
390390 < p className = "text-gray-600 dark:text-gray-300" > Select your comma device</ p >
@@ -516,11 +516,12 @@ export default function Flash() {
516516
517517 // Handle connect instructions next
518518 const handleConnectNext = ( ) => {
519+ // On Linux with comma 3/3X, need to unbind qcserial BEFORE showing WebUSB picker
519520 if ( isLinux && selectedDevice === DeviceType . COMMA_3 ) {
520521 setWizardScreen ( 'unbind' )
521522 setWizardStep ( getStepIndex ( 'Unbind' ) )
522523 } else {
523- // Go directly to flash
524+ // Go directly to flash (show WebUSB picker)
524525 setWizardScreen ( 'flash' )
525526 setWizardStep ( getStepIndex ( 'Flash' ) )
526527 qdlManager . current ?. start ( )
@@ -631,7 +632,7 @@ export default function Flash() {
631632 const canGoBack = step === StepCode . CONNECTING && ! connected
632633
633634 return (
634- < div id = "flash" className = "relative flex flex-col gap-8 justify-center items-center h-full" >
635+ < div id = "flash" className = "wizard-screen relative flex flex-col gap-8 justify-center items-center h-full" >
635636 { wizardStep >= 0 && (
636637 < Stepper
637638 steps = { wizardSteps }
0 commit comments