)]}'
{
  "commit": "a0f8f6812ed465f8747b8c56d703afc89f31791c",
  "tree": "28bec43d117441cc0003d6150ed65bcb58f4c94c",
  "parents": [
    "e45ed915373802087ee17cb7e05e95605faa79ab"
  ],
  "author": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Sat Aug 08 14:13:11 2026 +0200"
  },
  "committer": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Sat Aug 08 14:13:11 2026 +0200"
  },
  "message": "Fix IDS theme heading and bar layout\n\nThe orange bar never reached the slide\u0027s top left corner and the headings\nstayed centred, because several separate things were fighting:\n\n- reveal.js keeps 4% of the display empty around the content (config\n  `margin`, default 0.04). No CSS inside the slide can escape that box.\n  Default it to 0 and add the breathing room back as slide padding.\n\n- Draw the bar as two ::before segments, one on the title and one on the\n  subtitle, each sized as a percentage of its own heading box. The bar\n  then always ends at the bottom of the last heading, follows a wrapped\n  heading, and needs no fixed heights. Slides without a subtitle reserve\n  the room one would take, so the bar does not change height between\n  slides.\n\n- Reaching the window\u0027s physical left edge needs viewport / scale, and\n  CSS cannot divide a length by a length. The template now publishes the\n  letter-/pillarbox bands as --ids-band-left / --ids-band-top and the bar\n  shifts out by that much; it falls back to 0px, which is already correct\n  whenever the deck and display aspect ratios agree.\n\n- Headings rendered in a regular-weight, regular-width fallback because\n  korap.ids-mannheim.de/font/fira-condensed.css returns a 404 page rather\n  than CSS. Load Fira Sans Extra Condensed from Google Fonts, weight 700.\n\n- Paint the bar as flat #f6a800. orange_bar.png is two-toned, so\n  stretching it over each segment left a pale seam where they met.\n\n- Left-align body content with the heading text and put the IDS logo\u0027s\n  top on the heading\u0027s cap line.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I199cb4f0c3b766c0774351922d05f171fdbd4e79\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "47f407361bb038fa68400c1cbf83f40ba20f7d2f",
      "old_mode": 33188,
      "old_path": "R/revealjs_presentation.R",
      "new_id": "7d8c08279022858e9aa43e89af187851d5e9d428",
      "new_mode": 33188,
      "new_path": "R/revealjs_presentation.R"
    },
    {
      "type": "modify",
      "old_id": "e2ba97400ccab88eb14811df1c82ac4ccd66db62",
      "old_mode": 33188,
      "old_path": "inst/reveal.js-5.1.0/css/theme/source/ids.scss",
      "new_id": "2f758c41464b23dd947da4ac5d9e8841982d54c5",
      "new_mode": 33188,
      "new_path": "inst/reveal.js-5.1.0/css/theme/source/ids.scss"
    },
    {
      "type": "modify",
      "old_id": "3ee71897dec2829ea501de7baf3688b51bd02f5a",
      "old_mode": 33188,
      "old_path": "inst/reveal.js-5.1.0/dist/theme/ids.css",
      "new_id": "96bc70f6861973f95a0c398c2da0ac306ae1e1d4",
      "new_mode": 33188,
      "new_path": "inst/reveal.js-5.1.0/dist/theme/ids.css"
    },
    {
      "type": "modify",
      "old_id": "e1d79f622e2976a9f59de029711911229c0b6f55",
      "old_mode": 33188,
      "old_path": "inst/rmarkdown/templates/revealjs_presentation/resources/default.html",
      "new_id": "2d8b497ff0e0baf55dd1e8401bdd1435399e1d74",
      "new_mode": 33188,
      "new_path": "inst/rmarkdown/templates/revealjs_presentation/resources/default.html"
    }
  ]
}
