diff --git a/public/app/core/components/AppChrome/AppChromeService.test.tsx b/public/app/core/components/AppChrome/AppChromeService.test.tsx new file mode 100644 index 00000000000..ea04bddf3bc --- /dev/null +++ b/public/app/core/components/AppChrome/AppChromeService.test.tsx @@ -0,0 +1,10 @@ +import { AppChromeService } from './AppChromeService'; + +describe('AppChromeService', () => { + it('onToggleKioskMode should set chromeless to true when searchbar is hidden', () => { + const chromeService = new AppChromeService(); + chromeService.onToggleSearchBar(); + chromeService.onToggleKioskMode(); + expect(chromeService.state.getValue().chromeless).toBe(true); + }); +}); diff --git a/public/app/core/components/AppChrome/AppChromeService.tsx b/public/app/core/components/AppChrome/AppChromeService.tsx index 92d05a19b2a..54efe9e132b 100644 --- a/public/app/core/components/AppChrome/AppChromeService.tsx +++ b/public/app/core/components/AppChrome/AppChromeService.tsx @@ -57,11 +57,11 @@ export class AppChromeService { this.routeChangeHandled = true; } + Object.assign(newState, update); + // KioskMode overrides chromeless state newState.chromeless = newState.kioskMode === KioskMode.Full || this.currentRoute?.chromeless; - Object.assign(newState, update); - if (!isShallowEqual(current, newState)) { this.state.next(newState); }