revealjs v3.8.0 Release Notes

Release Date: 2019-04-01 // almost 5 years ago
  • Changes:

    • ⏱ The cursor is now automatically hidden after five seconds of inactivity. The timeout can be adjusted with hideCursorTime: <milliseconds>, or you can disable the feature entirely with hideInactiveCursor: false.
    • Presentations can be zoomed on touch devices using the standard pinch-to-zoom gestures.
    • πŸ†• New navigationMode: <default/linear/grid> config option. Set to "grid" to navigate across adjacent vertical stacks. Learn more in the docs. (#2307)
    • New hash: <boolean> config option. When set to true, reveal.js will reflect the current slide in the address bar without pushing each slide change to the browser history. (#2286 by @asottile)
    • πŸ†• New preloadIframes config option for flagging if iframes should be preloaded or not. Can be set per-frame using the data-preload attribute. More info. (#2354 by @maxrothman)
    • A resize event is now dispatched anytime the presentation scale changes. (#2300 by @mw75)
    • The "Resume" button in the pause overlay is hidden if controls are set to false. (#2215 by @anderslemke)
    • πŸ†• New keyboard shortcut: CMD/CTRL + left or right arrow to go to first or last slide.
    • βž• Adds Reveal.getRevealElement() for retrieving the presentation's root element (<div class="reveal">).
    • βœ‚ Removes Head JS as it is no longer required to load dependencies.
    • βœ‚ Removes classList polyfill since browser support caught up.
    • βœ‚ Removes the reset styles from reveal.css to make styles easier to override. Reset styles are now included as a separate reset.css file. (6abc6e0 #1952 & #2248)
    • The zoom transition now zooms between all slides, previously it zoomed between horizontal slides and used a slide transition between vertical.
    • ⬆️ Upgrade to Socket.IO 2.2.0.

    πŸ”Œ Plugin Changes:

    • βž• Adds a new API for registering plugins Reveal.registerPlugin( 'myPlugin', MyPluginInstance ). If a registered plugin returns a promise when initialized, reveal.js will wait for that promise to be fulfilled before firing the ready event. Learn more in the docs.
    • πŸ‘ Code highlighting: Support for line numbers! Just add data-line-numbers to your code blocks.
    • πŸ‘ Code highlighting: Highlight specific lines by providing a comma separated list of line numbers to data-line-numbers. Line ranges, like 5-15, are supported too.
    • 🌐 Speaker view: No longer requires a web server, it now works when opened directly from the filesystem. (#2104 by @jurca)
    • Markdown: External .md files are now loaded asynchronously.
    • ⬆️ Markdown: Upgrade to marked 0.6.0. (@sestegra)
    • MathJax config options can now be set via the reveal.js math config option. (#2090 by @bnjmnt4n)

    πŸ› Bug fixes:

    • πŸ›  Fixes npm security warnings by updating all dependencies.
    • πŸ›  Fixes an issue that prevented the same internal link from being clicked twice. (#2350 by @rparree)
    • πŸ›  Fixes an issue with data-transition not working on vertical slides. (b6ce0a9 #1947)
    • πŸ›  Fixes an issue that needless caused the slide methodβ€”and all of its corresponding performance heavy DOM operationsβ€”to be invoked twice for each slide change. (#2263 by @mbotsch)
    • πŸ›  Fixes a layout bug with overlaid speaker notes when reveal.js is smaller than the browser window.
    • πŸ›  Fixes an error that caused Reveal.getProgress() to return a value higher than 1 when there were fragments on the last slide.
    • The speaker view no longer stops working when opened multiple times. (#2251 by @oyron)
    • πŸ’» Prevents presentations from overflowing vertically in some mobile browsers.
    • Elements using .stretch now show up in the overview mode. (@sanand0)

    And more...