Commit Graph

60 Commits

Author SHA1 Message Date
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 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
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
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
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
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
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 9bcd1484bc notes defined in data-notes attributes retain preformatted whitespace 2015-09-25 09:41:05 +02:00
Hakim El Hattab cef19486b8 better handling of overflowing speaker notes #1017 2014-10-16 13:09:54 +02:00
Hakim El Hattab f28b380fac prevent auto-sliding in notes frames #1004 2014-09-28 17:13:49 +02:00
Hakim El Hattab fa6187072e clicking on notes timer now resets it #779 2014-05-04 08:13:09 +02:00
Hakim El Hattab 1e5ca748a4 enable reveal.js keyboard shortcuts anywhere in notes window 2014-04-26 11:36:03 +02:00
Hakim El Hattab 37ebe0732c skip transitions in notes window for better main window performance 2014-04-22 15:05:06 +02:00
Hakim El Hattab f396b9b871 limit how often the notes window updates presentation states 2014-04-22 14:50:50 +02:00
Hakim El Hattab c02d185cfd notes code format tweaks 2014-04-22 14:14:21 +02:00
Hakim El Hattab ce05138f9a dont toggle paused/overview modes needlessly when setting state 2014-04-22 14:06:58 +02:00
Hakim El Hattab 3795ef1599 update style of notes plugin to match Slides 2014-04-20 10:26:00 +02:00
Hakim El Hattab 5b18c1f308 notes plugin now operates entirely through window.postMessage, adding support for file protocol 2014-04-19 10:54:26 +02:00
Hakim El Hattab c7077cf798 configure notes presentation through query string to avoid flicker 2013-10-22 09:21:49 -04:00
Donald R. Huettl 45ad161930 prevent unintended slide change event
This prevents the upcoming slide on the notes page from triggering
slidechanged events.  I believe this fixes issue 578, as well.
2013-09-14 23:54:32 -05:00
Hakim El Hattab a0f0371fb1 configure notes window presentations to hide needless UI 2013-08-29 09:28:38 -04:00
Hakim El Hattab 53f1f110c8 ensure notes window fragment states are mirrored in main window #538 2013-07-26 10:03:59 -04:00
Hakim El Hattab 03385d7245 simplify client side notes plugin 2013-07-26 09:48:21 -04:00
Hakim El Hattab f5a379b8a1 merge notes timer rounding fix 2013-06-09 16:51:35 +02:00
Thomas Rosenau 28d370f2af Use Math.floor instead of parseInt to avoid problems with very small numbers like 2e-10 2013-06-02 11:02:53 +02:00
Hakim El Hattab db4eb20bc3 merge notes float fix and support for multiple fragments with same index 2013-05-05 18:44:10 -04:00
Nigel Stanger 1219564e05 Added clear:left to notes DIV
Resolves an issue where the first label (e.g., first bullet or first
number) of a list would wrap to the right side of the window and be
hidden under the clock element.
2013-05-02 12:02:46 +12:00
Amit Kotlovski 381da383d9 Replace the ShowDown Markdown engine with marked 2013-05-01 23:10:31 +03:00
Hakim El Hattab d7b92c9c65 update main window when current slide changes in notes (closes #343) 2013-02-27 16:55:42 -05:00
hakimel 380264afc8 merge in notes improvement 2013-02-06 19:15:30 -05:00
Hakim El Hattab 784fa9d2e3 merge in timer in notes window, timer now stays hidden until initial time is set 2013-01-26 13:32:07 -05:00
Charlie DeTar ab3f4e5ba3 Add clock and elapsed time to notes view 2013-01-26 11:49:19 -05:00
hakimel a7625a71d3 show error when notes run on non-http, fix load order to make sure upcoming slide is correct when notes open (#278) 2013-01-23 11:04:10 -05:00