summaryrefslogtreecommitdiff
path: root/head.html
blob: 3796203df05895ac15c513d857037adc15a51a96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link href="/assets/fonts/fonts.min.css" rel="stylesheet" type="text/css" />
<link href="/assets/css/gruvbox.css" rel="stylesheet" type="text/css" />
<link
  href="https://cdn.bootcdn.net/ajax/libs/simplebar/6.2.5/simplebar.css"
  rel="stylesheet"
/>
<script src="https://cdn.bootcdn.net/ajax/libs/simplebar/6.2.5/simplebar.js"></script>
<link href="/assets/css/cgit.css" rel="stylesheet" type="text/css" />
<script>
  function go_responsive() {
    /* destroy tables that prevent responsive design */
    var tabs = document.createElement("div");
    var header_form = document.createElement("div");
    var forms = document.createElement("div");
    tabs.className = "tabs";
    forms.className = "forms";
    var header_td_form = document.querySelector("table#header td.form");
    if (header_td_form) {
      while (header_td_form.firstChild) {
        header_form.appendChild(header_td_form.firstChild);
      }
      header_td_form.parentNode.removeChild(header_td_form);
    }
    var tab_items = Array.from(document.querySelectorAll("table.tabs td")).map(
      (v) => {
        var div = document.createElement("div");
        var children = Array.from(v.children);
        children.forEach((child) => div.appendChild(child));
        return div;
      }
    );
    tab_items[1].className = "form";
    header_form.className = "form";
    [tab_items[1], header_form].forEach((el) => forms.appendChild(el));
    tabs.appendChild(tab_items[0]);
    document.querySelectorAll("table.tabs").forEach((el) => el.remove());
    var header = document.querySelector("table#header");
    header.insertAdjacentElement("afterend", tabs);
    header.insertAdjacentElement("afterend", forms);
    header.style.display = "inline-block";
    header.style.width = "auto";
  }

  function wrap_fat_elements() {
    /* wrap the elements that could be very large in width */
    var tables = document.querySelectorAll(
      "table.list, table.blob, table.ssdiff, table.bin-blob, table.nowrap, table.commit-info, table.diffstat, table.diff, table.list, table.stats, table.vgraph, table.hgraph, table.blame"
    );
    tables.forEach((table) => {
      var wrapper = document.createElement("div");
      wrapper.className = "table-wrap";
      table.parentNode.insertBefore(wrapper, table);
      wrapper.appendChild(table);
    });
    document
      .querySelectorAll(".table-wrap, pre.literal-block")
      .forEach((el) => {
        new SimpleBar(el);
      });
  }

  document.addEventListener("DOMContentLoaded", function () {
    go_responsive();
    wrap_fat_elements();
  });
</script>
<style>
  .simplebar-scrollbar::before {
    background-color: grey;
    height: 4px;
  }
</style>