Rearrange setupIntersectionObservers

Update setupIntersectionObservers so it only contains code
that uses observers. Other code is moved to the skin.js entry point
along with other features.

Change-Id: Ia11b4e07f899426687c616ce2054e0df9d36ab7c
This commit is contained in:
Jon Robson 2023-04-11 15:54:40 -07:00 committed by Jdlrobson
parent 86256aa162
commit d4a7fb6479
2 changed files with 12 additions and 15 deletions

View file

@ -1,7 +1,5 @@
// Enable Vector features limited to ES6 browse
const
limitedWidthToggle = require( './limitedWidthToggle.js' ),
searchToggle = require( './searchToggle.js' ),
stickyHeader = require( './stickyHeader.js' ),
scrollObserver = require( './scrollObserver.js' ),
initExperiment = require( './AB.js' ),
@ -291,19 +289,6 @@ const setupTableOfContents = ( tocElement, bodyContent, initSectionObserverFn )
const main = () => {
const isIntersectionObserverSupported = 'IntersectionObserver' in window;
limitedWidthToggle();
// Initialize the search toggle for the main header only. The sticky header
// toggle is initialized after Codex search loads.
const searchToggleElement = document.querySelector( '.mw-header .search-toggle' );
if ( searchToggleElement ) {
searchToggle( searchToggleElement );
}
//
// Pinnable elements
//
pinnableElement.initPinnableElement();
//
// Table of contents
//

View file

@ -1,4 +1,7 @@
const languageButton = require( './languageButton.js' ),
limitedWidthToggle = require( './limitedWidthToggle.js' ),
pinnableElement = require( './pinnableElement.js' ),
searchToggle = require( './searchToggle.js' ),
echo = require( './echo.js' ),
initSearchLoader = require( './searchLoader.js' ).initSearchLoader,
dropdownMenus = require( './dropdownMenus.js' ).dropdownMenus,
@ -78,6 +81,15 @@ function main( window ) {
menuTabs();
addNamespacesGadgetSupport();
watchstar();
limitedWidthToggle();
// Initialize the search toggle for the main header only. The sticky header
// toggle is initialized after Codex search loads.
const searchToggleElement = document.querySelector( '.mw-header .search-toggle' );
if ( searchToggleElement ) {
searchToggle( searchToggleElement );
}
pinnableElement.initPinnableElement();
// Initializes the TOC and sticky header, behaviour of which depend on scroll behaviour.
setupIntersectionObservers.main();
}