mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Improve wiki sidebar and TOC (#25460)
Close #20976 Close #20975 1. Fix the bug: the TOC in footer was incorrectly rendered as main content's TOC 2. Fix the layout: on mobile, the TOC is put above the main content, while the sidebar is put below the main content 3. Auto collapse the TOC on mobile ps: many styles of "wiki.css" are moved from old css files, so leave nits to following PRs.
This commit is contained in:
		@@ -1,6 +1,7 @@
 | 
			
		||||
import $ from 'jquery';
 | 
			
		||||
import {initMarkupContent} from '../markup/content.js';
 | 
			
		||||
import {validateTextareaNonEmpty, initComboMarkdownEditor} from './comp/ComboMarkdownEditor.js';
 | 
			
		||||
import {fomanticMobileScreen} from '../modules/fomantic.js';
 | 
			
		||||
 | 
			
		||||
const {csrfToken} = window.config;
 | 
			
		||||
 | 
			
		||||
@@ -70,6 +71,17 @@ async function initRepoWikiFormEditor() {
 | 
			
		||||
  });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function collapseWikiTocForMobile(collapse) {
 | 
			
		||||
  if (collapse) {
 | 
			
		||||
    document.querySelector('.wiki-content-toc details')?.removeAttribute('open');
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function initRepoWikiForm() {
 | 
			
		||||
  if (!document.querySelector('.page-content.repository.wiki')) return;
 | 
			
		||||
 | 
			
		||||
  fomanticMobileScreen.addEventListener('change', (e) => collapseWikiTocForMobile(e.matches));
 | 
			
		||||
  collapseWikiTocForMobile(fomanticMobileScreen.matches);
 | 
			
		||||
 | 
			
		||||
  initRepoWikiFormEditor();
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,8 @@ import {initAriaCheckboxPatch} from './aria/checkbox.js';
 | 
			
		||||
import {initAriaDropdownPatch} from './aria/dropdown.js';
 | 
			
		||||
import {svg} from '../svg.js';
 | 
			
		||||
 | 
			
		||||
export const fomanticMobileScreen = window.matchMedia('only screen and (max-width: 767.98px)');
 | 
			
		||||
 | 
			
		||||
export function initGiteaFomantic() {
 | 
			
		||||
  // Silence fomantic's error logging when tabs are used without a target content element
 | 
			
		||||
  $.fn.tab.settings.silent = true;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user