src/vs/workbench/browser/layout.ts/Layout/onFullscreenChanged
class Layout:	private onFullscreenChanged(): void {
		this.windowState.runtime.fullscreen = isFullscreen();

		// Apply as CSS class
		if (this.windowState.runtime.fullscreen) {
			this.container.classList.add(WorkbenchLayoutClasses.FULLSCREEN);
		} else {
			this.container.classList.remove(WorkbenchLayoutClasses.FULLSCREEN);

			const zenModeExitInfo = this.stateModel.getRuntimeValue(LayoutStateKeys.ZEN_MODE_EXIT_INFO);
			const zenModeActive = this.stateModel.getRuntimeValue(LayoutStateKeys.ZEN_MODE_ACTIVE);
			if (zenModeExitInfo.transitionedToFullScreen && zenModeActive) {
				this.toggleZenMode();
			}
		}

		// Change edge snapping accordingly
		this.workbenchGrid.edgeSnapping = this.windowState.runtime.fullscreen;

		// Changing fullscreen state of the window has an impact on custom title bar visibility, so we need to update
		if (getTitleBarStyle(this.configurationService) === 'custom') {

			// Propagate to grid
			this.workbenchGrid.setViewVisible(this.titleBarPartView, this.shouldShowTitleBar());

			this.updateWindowBorder(true);
		}

		this._onDidChangeFullscreen.fire(this.windowState.runtime.fullscreen);
	}