@@ -19,28 +19,28 @@ const attrsToCopy = [
1919 * @returns {SavedPageState }
2020 */
2121function savePageState ( doc ) {
22- const attrs = { }
22+ const attrs = { } ;
2323 for ( const attr of attrsToCopy ) {
24- attrs [ attr ] = doc . documentElement . getAttribute ( attr )
24+ attrs [ attr ] = doc . documentElement . getAttribute ( attr ) ;
2525 }
2626 return {
27- mainDiv : doc . querySelector ( "#main" ) . innerHTML ,
27+ mainDiv : doc . querySelector ( "#main" ) ? .innerHTML ,
2828 leftColumn : doc . querySelector ( "#leftColumn" ) . innerHTML ,
2929 title : doc . title ,
3030 attrs,
31- }
31+ } ;
3232}
3333
3434/**
3535 * @param {Document } doc
3636 * @param {SavedPageState } saved
3737 */
3838function loadPageState ( doc , saved ) {
39- doc . title = saved . title
40- doc . querySelector ( "#main" ) . innerHTML = saved . mainDiv
41- doc . querySelector ( "#leftColumn" ) . innerHTML = saved . leftColumn
39+ doc . title = saved . title ;
40+ doc . querySelector ( "#main" ) . innerHTML = saved . mainDiv ;
41+ doc . querySelector ( "#leftColumn" ) . innerHTML = saved . leftColumn ;
4242 for ( const attr of attrsToCopy ) {
43- doc . documentElement . setAttribute ( attr , saved . attrs [ attr ] )
43+ doc . documentElement . setAttribute ( attr , saved . attrs [ attr ] ) ;
4444 }
4545}
4646
@@ -328,15 +328,23 @@ window.addEventListener(DYNAMIC_PAGE_LOAD, () => {
328328} ) ;
329329
330330window . addEventListener ( "dynamicPageLoad" , ( ) => {
331- const leftColumn = document . querySelector ( ".show" ) ;
332- if ( leftColumn ) leftColumn . classList . remove ( "show" ) ;
331+ const sideMenuOpen = sessionStorage . getItem ( "sideMenuOpen" ) ;
332+ if ( sideMenuOpen ) {
333+ if ( document . querySelector ( "#leftColumn" ) . classList . contains ( "show" ) ) {
334+ document . querySelector ( "#content" ) . classList . add ( "sidebar-shown" ) ;
335+ }
336+ sessionStorage . removeItem ( "sideMenuOpen" ) ;
337+ } else {
338+ const leftColumn = document . querySelector ( ".show" ) ;
339+ if ( leftColumn ) leftColumn . classList . remove ( "show" ) ;
333340
334- const mobileSidebarToggleButton = document . querySelector ( ".menu-shown" ) ;
335- if ( mobileSidebarToggleButton )
336- mobileSidebarToggleButton . classList . remove ( "menu-shown" ) ;
341+ const mobileSidebarToggleButton = document . querySelector ( ".menu-shown" ) ;
342+ if ( mobileSidebarToggleButton )
343+ mobileSidebarToggleButton . classList . remove ( "menu-shown" ) ;
337344
338- const content = document . querySelector ( ".sidebar-shown" ) ;
339- if ( content ) content . classList . remove ( "sidebar-shown" ) ;
345+ const content = document . querySelector ( ".sidebar-shown" ) ;
346+ if ( content ) content . classList . remove ( "sidebar-shown" ) ;
347+ }
340348} ) ;
341349
342350window . addEventListener ( "DOMContentLoaded" , ( ) => {
@@ -514,7 +522,7 @@ members.forEach((member) => {
514522 const navbarHeight = document . querySelector ( "#header" ) . clientHeight ;
515523 const filtersHeight = document . querySelector (
516524 ".documentableFilter" ,
517- ) . clientHeight ;
525+ ) ? .clientHeight ;
518526 if ( navbarHeight && filtersHeight ) {
519527 member . style . scrollMarginTop = `${ navbarHeight + filtersHeight } px` ;
520528 }
@@ -526,9 +534,22 @@ members.forEach((member) => {
526534 const navbarHeight = document . querySelector ( "#header" ) . clientHeight ;
527535 const filtersHeight = document . querySelector (
528536 ".documentableFilter" ,
529- ) . clientHeight ;
537+ ) ? .clientHeight ;
530538 if ( navbarHeight && filtersHeight ) {
531539 member . style . scrollMarginTop = `${ navbarHeight + filtersHeight } px` ;
532540 }
533541 } ) ;
542+ } ) ;
543+
544+ window . addEventListener ( DYNAMIC_PAGE_LOAD , ( ) => {
545+ const docsLink = document . querySelector ( "#docs-nav-button" ) ;
546+ const apiLink = document . querySelector ( "#api-nav-button" ) ;
547+
548+ docsLink &&
549+ apiLink &&
550+ [ docsLink , apiLink ] . forEach ( ( button ) => {
551+ button . addEventListener ( "click" , ( ) => {
552+ sessionStorage . setItem ( "sideMenuOpen" , true ) ;
553+ } ) ;
554+ } ) ;
534555} ) ;
0 commit comments