Commit Graph

95 Commits

Author SHA1 Message Date
Hakim El Hattab
60cd098c8d .esm suffix for module bundle, marked/highlight.js are installed via npm 2020-05-04 10:39:37 +02:00
Hakim El Hattab
619b3a087c plugin consistency 2020-04-29 11:56:43 +02:00
Hakim El Hattab
e58502b3fb tweak plugin initialization to enable multi-instance plugins 2020-04-17 14:10:56 +02:00
Hakim El Hattab
d9690462e0 add 'plugins' config option, new way of registering es5 plugins 2020-04-17 09:47:03 +02:00
Hakim El Hattab
a55cd813be convert plugins to ES modules, transpile es5 versions backwards compatibility 2020-04-15 10:23:51 +02:00
Hakim El Hattab
9522357349 changes to plugin api; registerPlugin only accepts plugin instance, instance exposes .id 2020-04-08 13:05:28 +02:00
Hakim El Hattab
855cc82d76 Reveal.add/remveEventListener -> Reveal.on/off 2020-04-07 09:05:56 +02:00
Florian Haas
23c12d7332 Notes: Weakly enforce a minimum allocated pacing time per slide
When using the totalTime-based pacing calculation, a presenter may
inadvertently set totalTime and per-slide data-timing attributes in
such a way that the pacing time for some slides is impossibly low or
even negative.

Add a check to ensure that the pacing on a slide never falls below a
configurable minimum, defaulting to 0. Display an alert if the
pacing for any slide(s) falls below the threshold.
2019-05-22 21:44:44 +02:00
Florian Haas
078ba62050 Notes: Introduce alternate pacing timer, based on total presentation time
The current pacing timer operates on the assumption that there is
a default amount of time to be allocated to each slide, and that
individual slides can deviate from that default by specifying their
own data-timing attribute.

This patch introduces an alternate pacing method: by specifying
the totalTime configuration option, the presenter can set the total
time available to present. The pacing timer will then continue to
allocate the exact pacing time for slides that do have data-timing
set, as before. However, rather than applying the defaultTiming
constant to all others, it will

- Add up the time already allocated to slides via data-timing;
- subtract that from totalTime;
- divide the difference by the number of slides without data-timing set;
- apply the thus-calculated average to those slides.

totalTime has no default, and if both defaultTiming and totalTime are
set, totalTime wins. This preserves backward compatibility: if a
presenter has set defaultTiming and updates reveal.js, totalTime will
be null and defaultTiming is still applied to all slides without a
data-timing attribute. The presenter can then switch to the automatic
calculation, if desired, by setting a value for totalTime.
2019-05-12 20:10:06 +02:00
Hakim El Hattab
6410ed15aa support for plugins where the init method doesn't return a Promise 2019-03-14 14:52:59 +01:00
Hakim El Hattab
5301a9ea03 more forgiving code highlight line number format, add Promise polyfill 2019-03-14 13:05:10 +01:00
Dougal J. Sutherland
00e30a11e2
notes plugin: callRevealApi wants apply, not call 2019-03-11 22:25:19 -04:00
Hakim El Hattab
c40e9819a2 highlight, math, notes and zoom plugins now register via Reveal.registerPlugin 2019-03-04 14:32:38 +01:00
Hakim El Hattab
d780352b7f reveal.js plugin flow now uses promises, refactor markdown plugin to use promises 2019-03-04 14:11:21 +01:00
Hakim El Hattab
e7a365255f
Merge pull request #2251 from oyron/2229-speaker-notes-bug
Give focus to previously opened speaker notes (fixes #2229)
2018-10-08 08:32:39 +02:00
oyron
f32cd8586d Handle previously opened notes window, by giving focus. 2018-10-05 15:18:08 +02:00
Hakim El Hattab
d5cf3fa13c formatting and tweaks for #2104 2018-10-04 13:26:22 +02:00
Hakim El Hattab
8582c9aac8 resolve notes merge conflict 2018-10-04 12:32:37 +02:00
Greg Denehy
ee63b2ac60 Fixed notes timer when speaker notes window opened via RevealNotes.open() 2018-05-05 17:38:37 +09:30
Hakim El Hattab
5771ae39f0 speaker view has visible connection status, times out with error after 5s 2018-04-24 14:23:28 +02:00
Martin Jurča
6a2c5b4de8 documentation 2018-02-20 10:30:56 +01:00
Martin Jurča
8468d82433 fixed showing speaker's view with timings/pacing while serving the presentation from the file system 2018-02-20 10:29:16 +01:00
Hakim El Hattab
7a0b4a56f9 prevent cmd+r in notes window since reloading breaks the view #1958 2017-12-04 13:57:19 +01:00
Hakim El Hattab
edc9c0a8fd
Merge pull request #1958 from ThomasWeinert/feature/block_f5_in_notes
Block F5 in speaker notes window, avoid disconnects
2017-12-04 13:46:04 +01:00
Hakim El Hattab
6028844452 Merge branch 'plugin-key-bindings' of https://github.com/denehyg/reveal.js into dev 2017-11-29 09:38:05 +01:00
Thomas Weinert
c0109d948f Block F5 in speaker notes window, avoid disconnects 2017-08-12 13:42:55 +02:00
Hakim El Hattab
8725593805 localstorage feature test in notes plugin, fixes speaker view error in safari 2017-07-13 20:19:16 +02:00
Greg Denehy
e16508477a Fixed notes.js to account for upstream updates 2017-04-30 17:51:38 +09:30
Greg Denehy
f8bc679182 Merge branch 'dev' into plugin-key-bindings 2017-04-30 17:42:16 +09:30
Greg Denehy
e48e1e19b9 Changed custom key binding config properties to use 'keyCode' instead of 'code' 2017-04-30 16:35:35 +09:30
Greg Denehy
7297474b2e Added programatic support for custom key bindings with optional descriptions to be added to the help screen 2017-04-30 15:23:04 +09:30
Hakim El Hattab
0c3d89bfce minor tweak for #1564 2017-04-21 09:35:51 +02:00
Adam Spiers
715cf0ba11 optionally display pacing advice based on slide timings
Add an option to display advice on whether the current pace of the
presentation is on track for the right timing (shown as green), and if
not, whether the presenter should speed up (shown as red) or has the
luxury of slowing down (blue).

The pacing timer can be enabled by configuring by the `defaultTiming`
parameter in the `Reveal` configuration block, which specifies the
number of seconds per slide.  120 can be a reasonable rule of thumb.
Timings can also be given per slide `<section>` by setting the
`data-timing` attribute.  Both values are in numbers of seconds.

When the option is enabled, clicking on the timers will reset the timer
to the beginning of the current slide, i.e. as if pacing was perfectly
on track, not to zero as if the presentation had just begun.
2017-04-20 16:11:10 +01:00
Adam Spiers
9c7fda43e9 don't show negative signs inside minutes/seconds elements 2017-04-20 15:18:15 +01:00
Adam Spiers
933eba8789 round decreasing timers to mirror increasing timers 2017-04-20 15:18:15 +01:00
Adam Spiers
1eada3b360 avoid deleting existing classes when muting time elements
and make muting work for negative values
2017-04-20 15:18:15 +01:00
Adam Spiers
b1b4ee270b don't mute minutes when hours is unmuted 2017-04-20 15:18:15 +01:00
Adam Spiers
89b0c5a8d0 use opacity for muted clock elements
This allows us to use different colours for different timers,
which will be useful when we add a pacing timer.
2017-04-20 15:18:15 +01:00
Adam Spiers
a161acaba9 extract time display code into new _displayTime() function
This will allow us to reuse the display code for displaying
an additional pacing timer.
2017-04-20 15:18:15 +01:00
Adam Spiers
eb23e58114 Allow popup window access to Reveal API 2017-04-20 15:18:15 +01:00
Hakim El Hattab
f496613dd3 improved fragment notes support #1636 2017-01-31 17:08:08 +01:00
Hakim El Hattab
1413cbc1a9 Merge pull request #1636 from traff/master
For a fragment: allow to show a separate note defined in it
2017-01-31 16:47:29 +01:00
Hakim El Hattab
ec76f4790c speaker layouts in server side notes plugin 2016-09-21 14:10:45 +02:00
Hakim El Hattab
da5709919b layout selector for speaker view; includes four options 2016-09-21 13:54:42 +02:00
Dmitry Trofimov
86a3f0276b For a fragment: allow to show a separate note defined in it
When a slide has several fragments it could be convenient to define a note for each of them. In this case we need to show only this specific note defined in a fragment and not others. General note of a slide shouldn't be also shown, as a more specific one should have greater relevance in this case.
2016-07-04 16:57:01 +02:00
Timothep
ad86772f20 Horizontal 2-1 View for the speaker notes instead of a vertical 1-2 2016-06-10 10:12:54 +02:00
Hakim El Hattab
8e3a7f03d1 notes plugin no longer syncs overview mode #1446 2016-03-09 09:57:58 +01:00
Hakim El Hattab
922677ac66 fix notes regex #1522 #1392 2016-03-09 09:37:19 +01:00
Benjamin Tan
6d0b52026a Fix query parameter issue in notes plugin.
Closes #1392.
2016-03-06 18:28:08 +08:00
Hakim El Hattab
19a69b2c89 code format 2016-01-08 14:33:34 +01:00