@@ -482,22 +482,29 @@ const topVisibility: JupyterFrontEndPlugin<void> = {
482
482
execute : ( ) => {
483
483
top . setHidden ( top . isVisible ) ;
484
484
if ( settingRegistry ) {
485
- void settingRegistry . set ( pluginId , 'visible' , top . isVisible ) ;
485
+ void settingRegistry . set (
486
+ pluginId ,
487
+ 'visible' ,
488
+ top . isVisible ? 'yes' : 'no'
489
+ ) ;
486
490
}
487
491
} ,
488
492
isToggled : ( ) => top . isVisible ,
489
493
} ) ;
490
494
491
- let settingsOverride = false ;
495
+ let adjustToScreen = false ;
492
496
493
497
if ( settingRegistry ) {
494
498
const loadSettings = settingRegistry . load ( pluginId ) ;
495
499
const updateSettings = ( settings : ISettingRegistry . ISettings ) : void => {
496
- const visible = settings . get ( 'visible' ) . composite ;
500
+ // 'visible' property from user preferences or default settings
501
+ let visible = settings . get ( 'visible' ) . composite ;
497
502
if ( settings . user . visible !== undefined ) {
498
- settingsOverride = true ;
499
- top . setHidden ( ! visible ) ;
503
+ visible = settings . user . visible ;
500
504
}
505
+ top . setHidden ( visible === 'no' ) ;
506
+ // adjust to screen from user preferences or default settings
507
+ adjustToScreen = visible === 'automatic' ;
501
508
} ;
502
509
503
510
Promise . all ( [ loadSettings , app . restored ] )
@@ -517,7 +524,7 @@ const topVisibility: JupyterFrontEndPlugin<void> = {
517
524
}
518
525
519
526
const onChanged = ( ) : void => {
520
- if ( settingsOverride ) {
527
+ if ( ! adjustToScreen ) {
521
528
return ;
522
529
}
523
530
if ( app . format === 'desktop' ) {
0 commit comments