reveal-ck 3.6.0 → 3.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/files/reveal.js/CONTRIBUTING.md +4 -0
  3. data/files/reveal.js/Gruntfile.js +44 -26
  4. data/files/reveal.js/LICENSE +1 -1
  5. data/files/reveal.js/README.md +375 -161
  6. data/files/reveal.js/bower.json +27 -0
  7. data/files/reveal.js/css/print/paper.css +4 -3
  8. data/files/reveal.js/css/print/pdf.css +53 -38
  9. data/files/reveal.js/css/reveal.css +452 -206
  10. data/files/reveal.js/css/reveal.scss +328 -175
  11. data/files/reveal.js/css/theme/README.md +2 -6
  12. data/files/reveal.js/css/theme/beige.css +81 -50
  13. data/files/reveal.js/css/theme/black.css +70 -39
  14. data/files/reveal.js/css/theme/blood.css +81 -57
  15. data/files/reveal.js/css/theme/league.css +75 -44
  16. data/files/reveal.js/css/theme/moon.css +75 -44
  17. data/files/reveal.js/css/theme/night.css +70 -39
  18. data/files/reveal.js/css/theme/serif.css +72 -41
  19. data/files/reveal.js/css/theme/simple.css +72 -38
  20. data/files/reveal.js/css/theme/sky.css +75 -44
  21. data/files/reveal.js/css/theme/solarized.css +75 -44
  22. data/files/reveal.js/css/theme/source/black.scss +2 -2
  23. data/files/reveal.js/css/theme/source/blood.scss +3 -16
  24. data/files/reveal.js/css/theme/source/night.scss +0 -1
  25. data/files/reveal.js/css/theme/source/simple.scss +5 -0
  26. data/files/reveal.js/css/theme/source/white.scss +2 -2
  27. data/files/reveal.js/css/theme/template/settings.scss +1 -1
  28. data/files/reveal.js/css/theme/template/theme.scss +36 -23
  29. data/files/reveal.js/css/theme/white.css +75 -44
  30. data/files/reveal.js/demo.html +410 -0
  31. data/files/reveal.js/index.html +14 -373
  32. data/files/reveal.js/js/reveal.js +1186 -350
  33. data/files/reveal.js/lib/css/zenburn.css +41 -78
  34. data/files/reveal.js/lib/js/head.min.js +9 -8
  35. data/files/reveal.js/package.json +22 -26
  36. data/files/reveal.js/plugin/highlight/highlight.js +52 -4
  37. data/files/reveal.js/plugin/markdown/example.html +1 -1
  38. data/files/reveal.js/plugin/markdown/markdown.js +40 -21
  39. data/files/reveal.js/plugin/markdown/marked.js +2 -33
  40. data/files/reveal.js/plugin/math/math.js +5 -2
  41. data/files/reveal.js/plugin/multiplex/client.js +1 -1
  42. data/files/reveal.js/plugin/multiplex/index.js +24 -16
  43. data/files/reveal.js/plugin/multiplex/master.js +22 -42
  44. data/files/reveal.js/plugin/multiplex/package.json +19 -0
  45. data/files/reveal.js/plugin/notes-server/client.js +6 -1
  46. data/files/reveal.js/plugin/notes-server/index.js +17 -14
  47. data/files/reveal.js/plugin/notes-server/notes.html +215 -26
  48. data/files/reveal.js/plugin/notes/notes.html +372 -32
  49. data/files/reveal.js/plugin/notes/notes.js +40 -7
  50. data/files/reveal.js/plugin/print-pdf/print-pdf.js +47 -26
  51. data/files/reveal.js/plugin/zoom-js/zoom.js +12 -2
  52. data/files/reveal.js/test/examples/math.html +1 -1
  53. data/files/reveal.js/test/examples/slide-backgrounds.html +1 -1
  54. data/files/reveal.js/test/examples/slide-transitions.html +101 -0
  55. data/files/reveal.js/test/simple.md +12 -0
  56. data/files/reveal.js/test/test-markdown-element-attributes.html +3 -3
  57. data/files/reveal.js/test/test-markdown-element-attributes.js +1 -1
  58. data/files/reveal.js/test/test-markdown-external.html +36 -0
  59. data/files/reveal.js/test/test-markdown-external.js +24 -0
  60. data/files/reveal.js/test/test-markdown-options.html +41 -0
  61. data/files/reveal.js/test/test-markdown-options.js +26 -0
  62. data/files/reveal.js/test/test-markdown.html +1 -1
  63. data/files/reveal.js/test/test.html +5 -1
  64. data/files/reveal.js/test/test.js +26 -1
  65. data/lib/reveal-ck/version.rb +1 -1
  66. metadata +11 -4
  67. data/files/reveal.js/plugin/leap/leap.js +0 -159
  68. data/files/reveal.js/plugin/remotes/remotes.js +0 -39
@@ -3,7 +3,7 @@
3
3
  * http://lab.hakim.se/reveal-js
4
4
  * MIT licensed
5
5
  *
6
- * Copyright (C) 2015 Hakim El Hattab, http://hakim.se
6
+ * Copyright (C) 2017 Hakim El Hattab, http://hakim.se
7
7
  */
8
8
 
9
9
 
@@ -23,7 +23,7 @@ html, body, .reveal div, .reveal span, .reveal applet, .reveal object, .reveal i
23
23
  .reveal article, .reveal aside, .reveal canvas, .reveal details, .reveal embed,
24
24
  .reveal figure, .reveal figcaption, .reveal footer, .reveal header, .reveal hgroup,
25
25
  .reveal menu, .reveal nav, .reveal output, .reveal ruby, .reveal section, .reveal summary,
26
- .reveal time, .reveal mark, .reveal audio, video {
26
+ .reveal time, .reveal mark, .reveal audio, .reveal video {
27
27
  margin: 0;
28
28
  padding: 0;
29
29
  border: 0;
@@ -57,18 +57,6 @@ body {
57
57
  color: #000;
58
58
  }
59
59
 
60
- ::-moz-selection {
61
- background: #FF5E99;
62
- color: #fff;
63
- text-shadow: none;
64
- }
65
-
66
- ::selection {
67
- background: #FF5E99;
68
- color: #fff;
69
- text-shadow: none;
70
- }
71
-
72
60
 
73
61
  /*********************************************
74
62
  * VIEW FRAGMENTS
@@ -81,13 +69,13 @@ body {
81
69
 
82
70
  &.visible {
83
71
  opacity: 1;
84
- visibility: visible;
72
+ visibility: inherit;
85
73
  }
86
74
  }
87
75
 
88
76
  .reveal .slides section .fragment.grow {
89
77
  opacity: 1;
90
- visibility: visible;
78
+ visibility: inherit;
91
79
 
92
80
  &.visible {
93
81
  transform: scale( 1.3 );
@@ -96,7 +84,7 @@ body {
96
84
 
97
85
  .reveal .slides section .fragment.shrink {
98
86
  opacity: 1;
99
- visibility: visible;
87
+ visibility: inherit;
100
88
 
101
89
  &.visible {
102
90
  transform: scale( 0.7 );
@@ -107,21 +95,13 @@ body {
107
95
  transform: scale( 0.1 );
108
96
 
109
97
  &.visible {
110
- transform: scale( 1 );
111
- }
112
- }
113
-
114
- .reveal .slides section .fragment.roll-in {
115
- transform: rotateX( 90deg );
116
-
117
- &.visible {
118
- transform: rotateX( 0 );
98
+ transform: none;
119
99
  }
120
100
  }
121
101
 
122
102
  .reveal .slides section .fragment.fade-out {
123
103
  opacity: 1;
124
- visibility: visible;
104
+ visibility: inherit;
125
105
 
126
106
  &.visible {
127
107
  opacity: 0;
@@ -131,29 +111,62 @@ body {
131
111
 
132
112
  .reveal .slides section .fragment.semi-fade-out {
133
113
  opacity: 1;
134
- visibility: visible;
114
+ visibility: inherit;
135
115
 
136
116
  &.visible {
137
117
  opacity: 0.5;
138
- visibility: visible;
118
+ visibility: inherit;
139
119
  }
140
120
  }
141
121
 
142
122
  .reveal .slides section .fragment.strike {
143
123
  opacity: 1;
124
+ visibility: inherit;
144
125
 
145
126
  &.visible {
146
127
  text-decoration: line-through;
147
128
  }
148
129
  }
149
130
 
131
+ .reveal .slides section .fragment.fade-up {
132
+ transform: translate(0, 20%);
133
+
134
+ &.visible {
135
+ transform: translate(0, 0);
136
+ }
137
+ }
138
+
139
+ .reveal .slides section .fragment.fade-down {
140
+ transform: translate(0, -20%);
141
+
142
+ &.visible {
143
+ transform: translate(0, 0);
144
+ }
145
+ }
146
+
147
+ .reveal .slides section .fragment.fade-right {
148
+ transform: translate(-20%, 0);
149
+
150
+ &.visible {
151
+ transform: translate(0, 0);
152
+ }
153
+ }
154
+
155
+ .reveal .slides section .fragment.fade-left {
156
+ transform: translate(20%, 0);
157
+
158
+ &.visible {
159
+ transform: translate(0, 0);
160
+ }
161
+ }
162
+
150
163
  .reveal .slides section .fragment.current-visible {
151
164
  opacity: 0;
152
165
  visibility: hidden;
153
166
 
154
167
  &.current-fragment {
155
168
  opacity: 1;
156
- visibility: visible;
169
+ visibility: inherit;
157
170
  }
158
171
  }
159
172
 
@@ -164,7 +177,7 @@ body {
164
177
  .reveal .slides section .fragment.highlight-blue,
165
178
  .reveal .slides section .fragment.highlight-current-blue {
166
179
  opacity: 1;
167
- visibility: visible;
180
+ visibility: inherit;
168
181
  }
169
182
  .reveal .slides section .fragment.highlight-red.visible {
170
183
  color: #ff2c2d
@@ -234,66 +247,68 @@ body {
234
247
  -webkit-user-select: none;
235
248
  }
236
249
 
237
- .reveal .controls div {
250
+ .reveal .controls button {
251
+ padding: 0;
238
252
  position: absolute;
239
253
  opacity: 0.05;
240
254
  width: 0;
241
255
  height: 0;
256
+ background-color: transparent;
242
257
  border: 12px solid transparent;
243
258
  transform: scale(.9999);
244
259
  transition: all 0.2s ease;
245
-
260
+ -webkit-appearance: none;
246
261
  -webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
247
262
  }
248
263
 
249
- .reveal .controls div.enabled {
264
+ .reveal .controls .enabled {
250
265
  opacity: 0.7;
251
266
  cursor: pointer;
252
267
  }
253
268
 
254
- .reveal .controls div.enabled:active {
269
+ .reveal .controls .enabled:active {
255
270
  margin-top: 1px;
256
271
  }
257
272
 
258
- .reveal .controls div.navigate-left {
273
+ .reveal .controls .navigate-left {
259
274
  top: 42px;
260
275
 
261
276
  border-right-width: 22px;
262
277
  border-right-color: #000;
263
278
  }
264
- .reveal .controls div.navigate-left.fragmented {
279
+ .reveal .controls .navigate-left.fragmented {
265
280
  opacity: 0.3;
266
281
  }
267
282
 
268
- .reveal .controls div.navigate-right {
283
+ .reveal .controls .navigate-right {
269
284
  left: 74px;
270
285
  top: 42px;
271
286
 
272
287
  border-left-width: 22px;
273
288
  border-left-color: #000;
274
289
  }
275
- .reveal .controls div.navigate-right.fragmented {
290
+ .reveal .controls .navigate-right.fragmented {
276
291
  opacity: 0.3;
277
292
  }
278
293
 
279
- .reveal .controls div.navigate-up {
294
+ .reveal .controls .navigate-up {
280
295
  left: 42px;
281
296
 
282
297
  border-bottom-width: 22px;
283
298
  border-bottom-color: #000;
284
299
  }
285
- .reveal .controls div.navigate-up.fragmented {
300
+ .reveal .controls .navigate-up.fragmented {
286
301
  opacity: 0.3;
287
302
  }
288
303
 
289
- .reveal .controls div.navigate-down {
304
+ .reveal .controls .navigate-down {
290
305
  left: 42px;
291
306
  top: 74px;
292
307
 
293
308
  border-top-width: 22px;
294
309
  border-top-color: #000;
295
310
  }
296
- .reveal .controls div.navigate-down.fragmented {
311
+ .reveal .controls .navigate-down.fragmented {
297
312
  opacity: 0.3;
298
313
  }
299
314
 
@@ -337,11 +352,19 @@ body {
337
352
  .reveal .slide-number {
338
353
  position: fixed;
339
354
  display: block;
340
- right: 15px;
341
- bottom: 15px;
342
- opacity: 0.5;
355
+ right: 8px;
356
+ bottom: 8px;
343
357
  z-index: 31;
358
+ font-family: Helvetica, sans-serif;
344
359
  font-size: 12px;
360
+ line-height: 1;
361
+ color: #fff;
362
+ background-color: rgba( 0, 0, 0, 0.4 );
363
+ padding: 5px;
364
+ }
365
+
366
+ .reveal .slide-number-delimiter {
367
+ margin: 0 3px;
345
368
  }
346
369
 
347
370
  /*********************************************
@@ -352,6 +375,7 @@ body {
352
375
  position: relative;
353
376
  width: 100%;
354
377
  height: 100%;
378
+ overflow: hidden;
355
379
  touch-action: none;
356
380
  }
357
381
 
@@ -364,6 +388,7 @@ body {
364
388
  bottom: 0;
365
389
  left: 0;
366
390
  margin: auto;
391
+ pointer-events: none;
367
392
 
368
393
  overflow: visible;
369
394
  z-index: 1;
@@ -382,9 +407,10 @@ body {
382
407
  position: absolute;
383
408
  width: 100%;
384
409
  padding: 20px 0px;
410
+ pointer-events: auto;
385
411
 
386
412
  z-index: 10;
387
- transform-style: preserve-3d;
413
+ transform-style: flat;
388
414
  transition: transform-origin 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
389
415
  transform 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
390
416
  visibility 800ms cubic-bezier(0.260, 0.860, 0.440, 0.985),
@@ -419,6 +445,13 @@ body {
419
445
  opacity: 1;
420
446
  }
421
447
 
448
+ .reveal .slides>section:empty,
449
+ .reveal .slides>section>section:empty,
450
+ .reveal .slides>section[data-background-interactive],
451
+ .reveal .slides>section>section[data-background-interactive] {
452
+ pointer-events: none;
453
+ }
454
+
422
455
  .reveal.center,
423
456
  .reveal.center .slides,
424
457
  .reveal.center .slides section {
@@ -447,93 +480,116 @@ body {
447
480
 
448
481
 
449
482
  /*********************************************
450
- * SLIDE TRANSITION
451
- * Aliased 'linear' for backwards compatibility
483
+ * Mixins for readability of transitions
452
484
  *********************************************/
453
485
 
454
- .reveal.slide section,
455
- .reveal.linear section {
456
- backface-visibility: hidden;
486
+ @mixin transition-global($style) {
487
+ .reveal .slides section[data-transition=#{$style}],
488
+ .reveal.#{$style} .slides section:not([data-transition]) {
489
+ @content;
490
+ }
457
491
  }
458
-
459
- .reveal .slides>section[data-transition=slide].past,
460
- .reveal.slide .slides>section:not([data-transition]).past,
461
- .reveal .slides>section[data-transition=linear].past,
462
- .reveal.linear .slides>section:not([data-transition]).past {
463
- transform: translate(-150%, 0);
492
+ @mixin transition-stack($style) {
493
+ .reveal .slides section[data-transition=#{$style}].stack,
494
+ .reveal.#{$style} .slides section.stack {
495
+ @content;
496
+ }
464
497
  }
465
- .reveal .slides>section[data-transition=slide].future,
466
- .reveal.slide .slides>section:not([data-transition]).future,
467
- .reveal .slides>section[data-transition=linear].future,
468
- .reveal.linear .slides>section:not([data-transition]).future {
469
- transform: translate(150%, 0);
498
+ @mixin transition-horizontal-past($style) {
499
+ .reveal .slides>section[data-transition=#{$style}].past,
500
+ .reveal .slides>section[data-transition~=#{$style}-out].past,
501
+ .reveal.#{$style} .slides>section:not([data-transition]).past {
502
+ @content;
503
+ }
504
+ }
505
+ @mixin transition-horizontal-future($style) {
506
+ .reveal .slides>section[data-transition=#{$style}].future,
507
+ .reveal .slides>section[data-transition~=#{$style}-in].future,
508
+ .reveal.#{$style} .slides>section:not([data-transition]).future {
509
+ @content;
510
+ }
470
511
  }
471
512
 
472
- .reveal .slides>section>section[data-transition=slide].past,
473
- .reveal.slide .slides>section>section:not([data-transition]).past,
474
- .reveal .slides>section>section[data-transition=linear].past,
475
- .reveal.linear .slides>section>section:not([data-transition]).past {
476
- transform: translate(0, -150%);
513
+ @mixin transition-vertical-past($style) {
514
+ .reveal .slides>section>section[data-transition=#{$style}].past,
515
+ .reveal .slides>section>section[data-transition~=#{$style}-out].past,
516
+ .reveal.#{$style} .slides>section>section:not([data-transition]).past {
517
+ @content;
518
+ }
477
519
  }
478
- .reveal .slides>section>section[data-transition=slide].future,
479
- .reveal.slide .slides>section>section:not([data-transition]).future,
480
- .reveal .slides>section>section[data-transition=linear].future,
481
- .reveal.linear .slides>section>section:not([data-transition]).future {
482
- transform: translate(0, 150%);
520
+ @mixin transition-vertical-future($style) {
521
+ .reveal .slides>section>section[data-transition=#{$style}].future,
522
+ .reveal .slides>section>section[data-transition~=#{$style}-in].future,
523
+ .reveal.#{$style} .slides>section>section:not([data-transition]).future {
524
+ @content;
525
+ }
483
526
  }
484
527
 
528
+ /*********************************************
529
+ * SLIDE TRANSITION
530
+ * Aliased 'linear' for backwards compatibility
531
+ *********************************************/
532
+
533
+ @each $stylename in slide, linear {
534
+ .reveal.#{$stylename} section {
535
+ backface-visibility: hidden;
536
+ }
537
+ @include transition-horizontal-past(#{$stylename}) {
538
+ transform: translate(-150%, 0);
539
+ }
540
+ @include transition-horizontal-future(#{$stylename}) {
541
+ transform: translate(150%, 0);
542
+ }
543
+ @include transition-vertical-past(#{$stylename}) {
544
+ transform: translate(0, -150%);
545
+ }
546
+ @include transition-vertical-future(#{$stylename}) {
547
+ transform: translate(0, 150%);
548
+ }
549
+ }
485
550
 
486
551
  /*********************************************
487
552
  * CONVEX TRANSITION
488
553
  * Aliased 'default' for backwards compatibility
489
554
  *********************************************/
490
555
 
491
- .reveal .slides>section[data-transition=default].past,
492
- .reveal.default .slides>section:not([data-transition]).past,
493
- .reveal .slides>section[data-transition=convex].past,
494
- .reveal.convex .slides>section:not([data-transition]).past {
495
- transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
496
- }
497
- .reveal .slides>section[data-transition=default].future,
498
- .reveal.default .slides>section:not([data-transition]).future,
499
- .reveal .slides>section[data-transition=convex].future,
500
- .reveal.convex .slides>section:not([data-transition]).future {
501
- transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
502
- }
556
+ @each $stylename in default, convex {
557
+ @include transition-stack(#{$stylename}) {
558
+ transform-style: preserve-3d;
559
+ }
503
560
 
504
- .reveal .slides>section>section[data-transition=default].past,
505
- .reveal.default .slides>section>section:not([data-transition]).past,
506
- .reveal .slides>section>section[data-transition=convex].past,
507
- .reveal.convex .slides>section>section:not([data-transition]).past {
508
- transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
509
- }
510
- .reveal .slides>section>section[data-transition=default].future,
511
- .reveal.default .slides>section>section:not([data-transition]).future,
512
- .reveal .slides>section>section[data-transition=convex].future,
513
- .reveal.convex .slides>section>section:not([data-transition]).future {
514
- transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
561
+ @include transition-horizontal-past(#{$stylename}) {
562
+ transform: translate3d(-100%, 0, 0) rotateY(-90deg) translate3d(-100%, 0, 0);
563
+ }
564
+ @include transition-horizontal-future(#{$stylename}) {
565
+ transform: translate3d(100%, 0, 0) rotateY(90deg) translate3d(100%, 0, 0);
566
+ }
567
+ @include transition-vertical-past(#{$stylename}) {
568
+ transform: translate3d(0, -300px, 0) rotateX(70deg) translate3d(0, -300px, 0);
569
+ }
570
+ @include transition-vertical-future(#{$stylename}) {
571
+ transform: translate3d(0, 300px, 0) rotateX(-70deg) translate3d(0, 300px, 0);
572
+ }
515
573
  }
516
574
 
517
-
518
575
  /*********************************************
519
576
  * CONCAVE TRANSITION
520
577
  *********************************************/
521
578
 
522
- .reveal .slides>section[data-transition=concave].past,
523
- .reveal.concave .slides>section:not([data-transition]).past {
579
+ @include transition-stack(concave) {
580
+ transform-style: preserve-3d;
581
+ }
582
+
583
+ @include transition-horizontal-past(concave) {
524
584
  transform: translate3d(-100%, 0, 0) rotateY(90deg) translate3d(-100%, 0, 0);
525
585
  }
526
- .reveal .slides>section[data-transition=concave].future,
527
- .reveal.concave .slides>section:not([data-transition]).future {
586
+ @include transition-horizontal-future(concave) {
528
587
  transform: translate3d(100%, 0, 0) rotateY(-90deg) translate3d(100%, 0, 0);
529
588
  }
530
-
531
- .reveal .slides>section>section[data-transition=concave].past,
532
- .reveal.concave .slides>section>section:not([data-transition]).past {
589
+ @include transition-vertical-past(concave) {
533
590
  transform: translate3d(0, -80%, 0) rotateX(-70deg) translate3d(0, -80%, 0);
534
591
  }
535
- .reveal .slides>section>section[data-transition=concave].future,
536
- .reveal.concave .slides>section>section:not([data-transition]).future {
592
+ @include transition-vertical-future(concave) {
537
593
  transform: translate3d(0, 80%, 0) rotateX(70deg) translate3d(0, 80%, 0);
538
594
  }
539
595
 
@@ -542,34 +598,31 @@ body {
542
598
  * ZOOM TRANSITION
543
599
  *********************************************/
544
600
 
545
- .reveal .slides>section[data-transition=zoom],
546
- .reveal.zoom .slides>section:not([data-transition]) {
601
+ @include transition-global(zoom) {
547
602
  transition-timing-function: ease;
548
603
  }
549
-
550
- .reveal .slides>section[data-transition=zoom].past,
551
- .reveal.zoom .slides>section:not([data-transition]).past {
604
+ @include transition-horizontal-past(zoom) {
552
605
  visibility: hidden;
553
606
  transform: scale(16);
554
607
  }
555
- .reveal .slides>section[data-transition=zoom].future,
556
- .reveal.zoom .slides>section:not([data-transition]).future {
608
+ @include transition-horizontal-future(zoom) {
557
609
  visibility: hidden;
558
610
  transform: scale(0.2);
559
611
  }
560
-
561
- .reveal .slides>section>section[data-transition=zoom].past,
562
- .reveal.zoom .slides>section>section:not([data-transition]).past {
612
+ @include transition-vertical-past(zoom) {
563
613
  transform: translate(0, -150%);
564
614
  }
565
- .reveal .slides>section>section[data-transition=zoom].future,
566
- .reveal.zoom .slides>section>section:not([data-transition]).future {
615
+ @include transition-vertical-future(zoom) {
567
616
  transform: translate(0, 150%);
568
617
  }
569
618
 
570
619
 
571
620
  /*********************************************
572
621
  * CUBE TRANSITION
622
+ *
623
+ * WARNING:
624
+ * this is deprecated and will be removed in a
625
+ * future version.
573
626
  *********************************************/
574
627
 
575
628
  .reveal.cube .slides {
@@ -581,6 +634,7 @@ body {
581
634
  min-height: 700px;
582
635
  backface-visibility: hidden;
583
636
  box-sizing: border-box;
637
+ transform-style: preserve-3d;
584
638
  }
585
639
  .reveal.center.cube .slides section {
586
640
  min-height: 0;
@@ -641,6 +695,10 @@ body {
641
695
 
642
696
  /*********************************************
643
697
  * PAGE TRANSITION
698
+ *
699
+ * WARNING:
700
+ * this is deprecated and will be removed in a
701
+ * future version.
644
702
  *********************************************/
645
703
 
646
704
  .reveal.page .slides {
@@ -652,6 +710,7 @@ body {
652
710
  padding: 30px;
653
711
  min-height: 700px;
654
712
  box-sizing: border-box;
713
+ transform-style: preserve-3d;
655
714
  }
656
715
  .reveal.page .slides section.past {
657
716
  z-index: 12;
@@ -732,60 +791,12 @@ body {
732
791
  * NO TRANSITION
733
792
  *********************************************/
734
793
 
735
- .reveal .slides section[data-transition=none],
736
- .reveal.none .slides section:not([data-transition]) {
794
+ @include transition-global(none) {
737
795
  transform: none;
738
796
  transition: none;
739
797
  }
740
798
 
741
799
 
742
- /*********************************************
743
- * OVERVIEW
744
- *********************************************/
745
-
746
- .reveal.overview .slides {
747
- perspective-origin: 50% 50%;
748
- perspective: 700px;
749
- }
750
-
751
- .reveal.overview .slides section {
752
- height: 700px;
753
- overflow: hidden;
754
- opacity: 1 !important;
755
- visibility: visible !important;
756
- cursor: pointer;
757
- background: rgba(0,0,0,0.1);
758
- box-sizing: border-box;
759
- }
760
- .reveal.overview .slides section,
761
- .reveal.overview-deactivating .slides section {
762
- transition: none !important;
763
- }
764
- .reveal.overview .slides section .fragment {
765
- opacity: 1;
766
- }
767
- .reveal.overview .slides section:after,
768
- .reveal.overview .slides section:before {
769
- display: none !important;
770
- }
771
- .reveal.overview .slides section>section {
772
- opacity: 1;
773
- cursor: pointer;
774
- }
775
- .reveal.overview .slides section:hover {
776
- background: rgba(0,0,0,0.3);
777
- }
778
- .reveal.overview .slides section.present {
779
- background: rgba(0,0,0,0.3);
780
- }
781
- .reveal.overview .slides>section.stack {
782
- padding: 0;
783
- top: 0 !important;
784
- background: none;
785
- overflow: visible;
786
- }
787
-
788
-
789
800
  /*********************************************
790
801
  * PAUSED MODE
791
802
  *********************************************/
@@ -857,7 +868,7 @@ body {
857
868
  * PER-SLIDE BACKGROUNDS
858
869
  *********************************************/
859
870
 
860
- .reveal>.backgrounds {
871
+ .reveal .backgrounds {
861
872
  position: absolute;
862
873
  width: 100%;
863
874
  height: 100%;
@@ -872,6 +883,7 @@ body {
872
883
  height: 100%;
873
884
  opacity: 0;
874
885
  visibility: hidden;
886
+ overflow: hidden;
875
887
 
876
888
  background-color: rgba( 0, 0, 0, 0 );
877
889
  background-position: 50% 50%;
@@ -888,6 +900,7 @@ body {
888
900
  .reveal .slide-background.present {
889
901
  opacity: 1;
890
902
  visibility: visible;
903
+ z-index: 2;
891
904
  }
892
905
 
893
906
  .print-pdf .reveal .slide-background {
@@ -904,7 +917,11 @@ body {
904
917
  max-height: none;
905
918
  top: 0;
906
919
  left: 0;
920
+ object-fit: cover;
907
921
  }
922
+ .reveal .slide-background[data-background-size="contain"] video {
923
+ object-fit: contain;
924
+ }
908
925
 
909
926
  /* Immediate transition style */
910
927
  .reveal[data-background-transition=none]>.backgrounds .slide-background,
@@ -1026,6 +1043,85 @@ body {
1026
1043
  }
1027
1044
 
1028
1045
 
1046
+ /*********************************************
1047
+ * OVERVIEW
1048
+ *********************************************/
1049
+
1050
+ .reveal.overview {
1051
+ perspective-origin: 50% 50%;
1052
+ perspective: 700px;
1053
+
1054
+ .slides {
1055
+ // Fixes overview rendering errors in FF48+, not applied to
1056
+ // other browsers since it degrades performance
1057
+ -moz-transform-style: preserve-3d;
1058
+ }
1059
+
1060
+ .slides section {
1061
+ height: 100%;
1062
+ top: 0 !important;
1063
+ opacity: 1 !important;
1064
+ overflow: hidden;
1065
+ visibility: visible !important;
1066
+ cursor: pointer;
1067
+ box-sizing: border-box;
1068
+ }
1069
+ .slides section:hover,
1070
+ .slides section.present {
1071
+ outline: 10px solid rgba(150,150,150,0.4);
1072
+ outline-offset: 10px;
1073
+ }
1074
+ .slides section .fragment {
1075
+ opacity: 1;
1076
+ transition: none;
1077
+ }
1078
+ .slides section:after,
1079
+ .slides section:before {
1080
+ display: none !important;
1081
+ }
1082
+ .slides>section.stack {
1083
+ padding: 0;
1084
+ top: 0 !important;
1085
+ background: none;
1086
+ outline: none;
1087
+ overflow: visible;
1088
+ }
1089
+
1090
+ .backgrounds {
1091
+ perspective: inherit;
1092
+
1093
+ // Fixes overview rendering errors in FF48+, not applied to
1094
+ // other browsers since it degrades performance
1095
+ -moz-transform-style: preserve-3d;
1096
+ }
1097
+
1098
+ .backgrounds .slide-background {
1099
+ opacity: 1;
1100
+ visibility: visible;
1101
+
1102
+ // This can't be applied to the slide itself in Safari
1103
+ outline: 10px solid rgba(150,150,150,0.1);
1104
+ outline-offset: 10px;
1105
+ }
1106
+
1107
+ .backgrounds .slide-background.stack {
1108
+ overflow: visible;
1109
+ }
1110
+ }
1111
+
1112
+ // Disable transitions transitions while we're activating
1113
+ // or deactivating the overview mode.
1114
+ .reveal.overview .slides section,
1115
+ .reveal.overview-deactivating .slides section {
1116
+ transition: none;
1117
+ }
1118
+
1119
+ .reveal.overview .backgrounds .slide-background,
1120
+ .reveal.overview-deactivating .backgrounds .slide-background {
1121
+ transition: none;
1122
+ }
1123
+
1124
+
1029
1125
  /*********************************************
1030
1126
  * RTL SUPPORT
1031
1127
  *********************************************/
@@ -1122,6 +1218,7 @@ body {
1122
1218
  display: inline-block;
1123
1219
  width: 40px;
1124
1220
  height: 40px;
1221
+ line-height: 36px;
1125
1222
  padding: 0 10px;
1126
1223
  float: right;
1127
1224
  opacity: 0.6;
@@ -1149,6 +1246,7 @@ body {
1149
1246
 
1150
1247
  .reveal .overlay .viewport {
1151
1248
  position: absolute;
1249
+ display: flex;
1152
1250
  top: 40px;
1153
1251
  right: 0;
1154
1252
  bottom: 0;
@@ -1172,6 +1270,23 @@ body {
1172
1270
  visibility: visible;
1173
1271
  }
1174
1272
 
1273
+ .reveal .overlay.overlay-preview.loaded .viewport-inner {
1274
+ position: absolute;
1275
+ z-index: -1;
1276
+ left: 0;
1277
+ top: 45%;
1278
+ width: 100%;
1279
+ text-align: center;
1280
+ letter-spacing: normal;
1281
+ }
1282
+ .reveal .overlay.overlay-preview .x-frame-error {
1283
+ opacity: 0;
1284
+ transition: opacity 0.3s ease 0.3s;
1285
+ }
1286
+ .reveal .overlay.overlay-preview.loaded .x-frame-error {
1287
+ opacity: 1;
1288
+ }
1289
+
1175
1290
  .reveal .overlay.overlay-preview.loaded .spinner {
1176
1291
  opacity: 0;
1177
1292
  visibility: hidden;
@@ -1185,8 +1300,8 @@ body {
1185
1300
 
1186
1301
  .reveal .overlay.overlay-help .viewport .viewport-inner {
1187
1302
  width: 600px;
1188
- margin: 0 auto;
1189
- padding: 60px;
1303
+ margin: auto;
1304
+ padding: 20px 20px 80px 20px;
1190
1305
  text-align: center;
1191
1306
  letter-spacing: normal;
1192
1307
  }
@@ -1198,13 +1313,13 @@ body {
1198
1313
  .reveal .overlay.overlay-help .viewport .viewport-inner table {
1199
1314
  border: 1px solid #fff;
1200
1315
  border-collapse: collapse;
1201
- font-size: 14px;
1316
+ font-size: 16px;
1202
1317
  }
1203
1318
 
1204
1319
  .reveal .overlay.overlay-help .viewport .viewport-inner table th,
1205
1320
  .reveal .overlay.overlay-help .viewport .viewport-inner table td {
1206
1321
  width: 200px;
1207
- padding: 10px;
1322
+ padding: 14px;
1208
1323
  border: 1px solid #fff;
1209
1324
  vertical-align: middle;
1210
1325
  }
@@ -1223,7 +1338,7 @@ body {
1223
1338
  .reveal .playback {
1224
1339
  position: fixed;
1225
1340
  left: 15px;
1226
- bottom: 15px;
1341
+ bottom: 20px;
1227
1342
  z-index: 30;
1228
1343
  cursor: pointer;
1229
1344
  transition: all 400ms ease;
@@ -1285,10 +1400,50 @@ body {
1285
1400
  * SPEAKER NOTES
1286
1401
  *********************************************/
1287
1402
 
1403
+ // Hide on-page notes
1288
1404
  .reveal aside.notes {
1289
1405
  display: none;
1290
1406
  }
1291
1407
 
1408
+ // An interface element that can optionally be used to show the
1409
+ // speaker notes to all viewers, on top of the presentation
1410
+ .reveal .speaker-notes {
1411
+ display: none;
1412
+ position: absolute;
1413
+ width: 70%;
1414
+ max-height: 15%;
1415
+ left: 15%;
1416
+ bottom: 26px;
1417
+ padding: 10px;
1418
+ z-index: 1;
1419
+ font-size: 18px;
1420
+ line-height: 1.4;
1421
+ color: #fff;
1422
+ background-color: rgba(0,0,0,0.5);
1423
+ overflow: auto;
1424
+ box-sizing: border-box;
1425
+ text-align: left;
1426
+ font-family: Helvetica, sans-serif;
1427
+ -webkit-overflow-scrolling: touch;
1428
+ }
1429
+
1430
+ .reveal .speaker-notes.visible:not(:empty) {
1431
+ display: block;
1432
+ }
1433
+
1434
+ @media screen and (max-width: 1024px) {
1435
+ .reveal .speaker-notes {
1436
+ font-size: 14px;
1437
+ }
1438
+ }
1439
+
1440
+ @media screen and (max-width: 600px) {
1441
+ .reveal .speaker-notes {
1442
+ width: 90%;
1443
+ left: 5%;
1444
+ }
1445
+ }
1446
+
1292
1447
 
1293
1448
  /*********************************************
1294
1449
  * ZOOM PLUGIN
@@ -1312,5 +1467,3 @@ body {
1312
1467
  .zoomed .reveal .roll span:after {
1313
1468
  visibility: hidden;
1314
1469
  }
1315
-
1316
-