xref: /aosp_15_r20/external/mesa3d/docs/mesa3d_theme/layout.html (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard Worker{% extends "basic/layout.html" %}
2*61046927SAndroid Build Coastguard Worker
3*61046927SAndroid Build Coastguard Worker{% block css %}
4*61046927SAndroid Build Coastguard Worker    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-4bw+/aepP/YC94hEpVNVgiZdgIC5+VKNBQNGCHeKRQN+PtmoHDEXuppvnDJzQIu9" crossorigin="anonymous">
5*61046927SAndroid Build Coastguard Worker    {{ css() }}
6*61046927SAndroid Build Coastguard Worker{% endblock %}
7*61046927SAndroid Build Coastguard Worker
8*61046927SAndroid Build Coastguard Worker{% block extrahead %}
9*61046927SAndroid Build Coastguard Worker<script>
10*61046927SAndroid Build Coastguard Worker  (() => {
11*61046927SAndroid Build Coastguard Worker    const mq = window.matchMedia('(prefers-color-scheme: dark)');
12*61046927SAndroid Build Coastguard Worker    const update = (m) => document.documentElement.setAttribute('data-bs-theme', m.matches ? 'dark' : 'light');
13*61046927SAndroid Build Coastguard Worker    mq.addEventListener('change', (e) => update(e));
14*61046927SAndroid Build Coastguard Worker    update(mq);
15*61046927SAndroid Build Coastguard Worker  })();
16*61046927SAndroid Build Coastguard Worker</script>
17*61046927SAndroid Build Coastguard Worker{% endblock %}
18*61046927SAndroid Build Coastguard Worker
19*61046927SAndroid Build Coastguard Worker{% block body_tag %}
20*61046927SAndroid Build Coastguard Worker  <body class="d-flex flex-column h-100">
21*61046927SAndroid Build Coastguard Worker{% endblock %}
22*61046927SAndroid Build Coastguard Worker
23*61046927SAndroid Build Coastguard Worker{% block relbar1 %}{% endblock %}
24*61046927SAndroid Build Coastguard Worker{% block relbar2 %}{% endblock %}
25*61046927SAndroid Build Coastguard Worker
26*61046927SAndroid Build Coastguard Worker{% block header %}
27*61046927SAndroid Build Coastguard Worker  <nav class="navbar navbar-expand-lg navbar-dark bg-dark-subtle" data-bs-theme="dark">
28*61046927SAndroid Build Coastguard Worker    <div class="container">
29*61046927SAndroid Build Coastguard Worker      <div class="d-flex flex-row">
30*61046927SAndroid Build Coastguard Worker        <a class="navbar-brand" href="https://www.mesa3d.org/">
31*61046927SAndroid Build Coastguard Worker          <img class="d-inline-block align-bottom" src="{{ pathto('_static/logo.svg', 1) }}" alt="" width="30" height="30">
32*61046927SAndroid Build Coastguard Worker          Mesa 3D
33*61046927SAndroid Build Coastguard Worker        </a>
34*61046927SAndroid Build Coastguard Worker      </div>
35*61046927SAndroid Build Coastguard Worker
36*61046927SAndroid Build Coastguard Worker      <button id="navbar-button" class="d-none navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
37*61046927SAndroid Build Coastguard Worker        <span class="navbar-toggler-icon"></span>
38*61046927SAndroid Build Coastguard Worker      </button>
39*61046927SAndroid Build Coastguard Worker
40*61046927SAndroid Build Coastguard Worker      <div class="navbar-collapse" id="navbarSupportedContent">
41*61046927SAndroid Build Coastguard Worker        <ul class="navbar-nav ms-auto">
42*61046927SAndroid Build Coastguard Worker
43*61046927SAndroid Build Coastguard Worker          <li class="nav-item">
44*61046927SAndroid Build Coastguard Worker            <a class="nav-link" href="https://www.mesa3d.org/" title="Home">Home</a>
45*61046927SAndroid Build Coastguard Worker          </li>
46*61046927SAndroid Build Coastguard Worker
47*61046927SAndroid Build Coastguard Worker          <li class="nav-item">
48*61046927SAndroid Build Coastguard Worker            <a class="nav-link" href="https://www.mesa3d.org/news/" title="News">News</a>
49*61046927SAndroid Build Coastguard Worker          </li>
50*61046927SAndroid Build Coastguard Worker
51*61046927SAndroid Build Coastguard Worker          <li class="nav-item">
52*61046927SAndroid Build Coastguard Worker            <a class="nav-link{% if pagename == 'download' %} active{% endif %}" href="{{ pathto('download') }}" title="">Getting Started</a>
53*61046927SAndroid Build Coastguard Worker          </li>
54*61046927SAndroid Build Coastguard Worker
55*61046927SAndroid Build Coastguard Worker          <li class="nav-item">
56*61046927SAndroid Build Coastguard Worker            <a class="nav-link active" href="{{ pathto(root_doc) }}" title="">Documentation</a>
57*61046927SAndroid Build Coastguard Worker          </li>
58*61046927SAndroid Build Coastguard Worker
59*61046927SAndroid Build Coastguard Worker        </ul>
60*61046927SAndroid Build Coastguard Worker      </div>
61*61046927SAndroid Build Coastguard Worker    </div>
62*61046927SAndroid Build Coastguard Worker    <script>
63*61046927SAndroid Build Coastguard Worker      document.getElementById('navbar-button').classList.remove('d-none');
64*61046927SAndroid Build Coastguard Worker      document.getElementById('navbarSupportedContent').classList.add('collapse');
65*61046927SAndroid Build Coastguard Worker    </script>
66*61046927SAndroid Build Coastguard Worker  </nav>
67*61046927SAndroid Build Coastguard Worker{% endblock %}
68*61046927SAndroid Build Coastguard Worker
69*61046927SAndroid Build Coastguard Worker{% block content %}
70*61046927SAndroid Build Coastguard Worker  <div class="container my-3">
71*61046927SAndroid Build Coastguard Worker    <div class="row">
72*61046927SAndroid Build Coastguard Worker      <main class="body col-12 col-lg-9 order-1 order-lg-2" role="main">
73*61046927SAndroid Build Coastguard Worker        {% block body %}{% endblock %}
74*61046927SAndroid Build Coastguard Worker      </main>
75*61046927SAndroid Build Coastguard Worker
76*61046927SAndroid Build Coastguard Worker      {% block navigation %}
77*61046927SAndroid Build Coastguard Worker      <nav id="menu" class="rounded col-12 col-lg-3 order-2 order-lg-1 bg-dark-subtle pb-3">
78*61046927SAndroid Build Coastguard Worker        <div class="my-3" role="search">
79*61046927SAndroid Build Coastguard Worker          <form id="search-form" action="{{ pathto('search') }}" method="get">
80*61046927SAndroid Build Coastguard Worker            <div class="form-group">
81*61046927SAndroid Build Coastguard Worker              <input class="form-control" type="text" name="q" placeholder="Search docs" />
82*61046927SAndroid Build Coastguard Worker              <input type="hidden" name="check_keywords" value="yes" />
83*61046927SAndroid Build Coastguard Worker              <input type="hidden" name="area" value="default" />
84*61046927SAndroid Build Coastguard Worker            </div>
85*61046927SAndroid Build Coastguard Worker          </form>
86*61046927SAndroid Build Coastguard Worker        </div>
87*61046927SAndroid Build Coastguard Worker
88*61046927SAndroid Build Coastguard Worker        {% block menu %}
89*61046927SAndroid Build Coastguard Worker        {% set toctree = toctree(maxdepth=4, collapse=True, includehidden=True, titles_only=False) %}
90*61046927SAndroid Build Coastguard Worker        {% if toctree %}
91*61046927SAndroid Build Coastguard Worker          {{ toctree }}
92*61046927SAndroid Build Coastguard Worker        {% else %}
93*61046927SAndroid Build Coastguard Worker          {{ toc }}
94*61046927SAndroid Build Coastguard Worker        {% endif %}
95*61046927SAndroid Build Coastguard Worker        {% endblock %}
96*61046927SAndroid Build Coastguard Worker      </nav>
97*61046927SAndroid Build Coastguard Worker      {% endblock %}
98*61046927SAndroid Build Coastguard Worker    </div>
99*61046927SAndroid Build Coastguard Worker  </div>
100*61046927SAndroid Build Coastguard Worker{% endblock %}
101*61046927SAndroid Build Coastguard Worker
102*61046927SAndroid Build Coastguard Worker{% block footer %}
103*61046927SAndroid Build Coastguard Worker  <footer class="footer py-3 bg-body-tertiary text-muted">
104*61046927SAndroid Build Coastguard Worker    <div class="container">
105*61046927SAndroid Build Coastguard Worker      <div class="row">
106*61046927SAndroid Build Coastguard Worker
107*61046927SAndroid Build Coastguard Worker        <div class="col-12 col-lg-3">
108*61046927SAndroid Build Coastguard Worker          <h6 class="text-body">Documentation</h6>
109*61046927SAndroid Build Coastguard Worker          <ul class="list-unstyled">
110*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/license.html">License</a></li>
111*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/faq.html">FAQ</a></li>
112*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/download.html">Getting Started</a></li>
113*61046927SAndroid Build Coastguard Worker          </ul>
114*61046927SAndroid Build Coastguard Worker        </div>
115*61046927SAndroid Build Coastguard Worker
116*61046927SAndroid Build Coastguard Worker        <div class="col-12 col-lg-3">
117*61046927SAndroid Build Coastguard Worker          <h6 class="text-body">Community</h6>
118*61046927SAndroid Build Coastguard Worker          <ul class="list-unstyled">
119*61046927SAndroid Build Coastguard Worker            <li><a href="https://gitlab.freedesktop.org/mesa">GitLab</a></li>
120*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/lists.html">Mailing Lists</a></li>
121*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/bugs.html">Report a Bug</a></li>
122*61046927SAndroid Build Coastguard Worker          </ul>
123*61046927SAndroid Build Coastguard Worker        </div>
124*61046927SAndroid Build Coastguard Worker
125*61046927SAndroid Build Coastguard Worker        <div class="col-12 col-lg-3">
126*61046927SAndroid Build Coastguard Worker          <h6 class="text-body">More</h6>
127*61046927SAndroid Build Coastguard Worker          <ul class="list-unstyled">
128*61046927SAndroid Build Coastguard Worker            <li><a href="https://www.mesa3d.org/website/">About Mesa3D.org</a></li>
129*61046927SAndroid Build Coastguard Worker            <li><a href="https://docs.mesa3d.org/thanks.html">Acknowledgements</a></li>
130*61046927SAndroid Build Coastguard Worker            <li><a href="https://dri.freedesktop.org/wiki/">Mesa / DRI Wiki</a></li>
131*61046927SAndroid Build Coastguard Worker          </ul>
132*61046927SAndroid Build Coastguard Worker        </div>
133*61046927SAndroid Build Coastguard Worker
134*61046927SAndroid Build Coastguard Worker        <div class="col-12 col-lg-3">
135*61046927SAndroid Build Coastguard Worker          <p>Hosted by <a href="https://www.freedesktop.org/">Freedesktop.org</a></p>
136*61046927SAndroid Build Coastguard Worker          <p><a href="https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/{{ pagename }}{{ page_source_suffix }}">Edit this page</a></p>
137*61046927SAndroid Build Coastguard Worker        </div>
138*61046927SAndroid Build Coastguard Worker
139*61046927SAndroid Build Coastguard Worker      </div>
140*61046927SAndroid Build Coastguard Worker    </div>
141*61046927SAndroid Build Coastguard Worker  </footer>
142*61046927SAndroid Build Coastguard Worker  <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-HwwvtgBNo3bZJJLYd8oVXjrBZt8cqVSpeBNS5n7C8IVInixGAoxmnlMuBnhbgrkm" crossorigin="anonymous"></script>
143*61046927SAndroid Build Coastguard Worker  <script>
144*61046927SAndroid Build Coastguard Worker  (() => {
145*61046927SAndroid Build Coastguard Worker    const collapseElementList = document.querySelectorAll('#menu > .caption + ul');
146*61046927SAndroid Build Coastguard Worker    // Add Bootstrap collapse components to the expandable menu-captions
147*61046927SAndroid Build Coastguard Worker    [...collapseElementList].forEach(collapseEl => {
148*61046927SAndroid Build Coastguard Worker      // disable transition if we need toggling
149*61046927SAndroid Build Coastguard Worker      const toggle = collapseEl.classList.contains('current');
150*61046927SAndroid Build Coastguard Worker      if (toggle)
151*61046927SAndroid Build Coastguard Worker        collapseEl.style.transition = "none";
152*61046927SAndroid Build Coastguard Worker      else
153*61046927SAndroid Build Coastguard Worker        collapseEl.previousElementSibling.classList.add('collapsed');
154*61046927SAndroid Build Coastguard Worker
155*61046927SAndroid Build Coastguard Worker      // enable collapse
156*61046927SAndroid Build Coastguard Worker      collapseEl.classList.add('collapse');
157*61046927SAndroid Build Coastguard Worker      collapseEl.previousElementSibling.classList.add('collapse-icon');
158*61046927SAndroid Build Coastguard Worker      const collapse = new bootstrap.Collapse(collapseEl, {
159*61046927SAndroid Build Coastguard Worker        toggle: toggle
160*61046927SAndroid Build Coastguard Worker      });
161*61046927SAndroid Build Coastguard Worker
162*61046927SAndroid Build Coastguard Worker      // disable transition-override again
163*61046927SAndroid Build Coastguard Worker      if (toggle) {
164*61046927SAndroid Build Coastguard Worker        collapseEl.addEventListener('shown.bs.collapse', event => {
165*61046927SAndroid Build Coastguard Worker          collapseEl.style.removeProperty('transition');
166*61046927SAndroid Build Coastguard Worker        }, {once : true})
167*61046927SAndroid Build Coastguard Worker      }
168*61046927SAndroid Build Coastguard Worker
169*61046927SAndroid Build Coastguard Worker      // collapse on click on previous element
170*61046927SAndroid Build Coastguard Worker      collapseEl.previousElementSibling.addEventListener('click', (event) => {
171*61046927SAndroid Build Coastguard Worker        collapse.toggle();
172*61046927SAndroid Build Coastguard Worker        collapseEl.previousElementSibling.classList.toggle('collapsed');
173*61046927SAndroid Build Coastguard Worker      });
174*61046927SAndroid Build Coastguard Worker    });
175*61046927SAndroid Build Coastguard Worker  })();
176*61046927SAndroid Build Coastguard Worker  </script>
177*61046927SAndroid Build Coastguard Worker{% endblock %}
178