showoff 0.9.11.1 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/showoff +4 -0
- data/lib/keymap.rb +30 -0
- data/lib/showoff/version.rb +1 -1
- data/lib/showoff.rb +91 -29
- data/public/css/highlight/agate.css +137 -0
- data/public/css/highlight/androidstudio.css +53 -0
- data/public/css/highlight/arta.css +138 -0
- data/public/css/highlight/ascetic.css +52 -0
- data/public/css/highlight/atelier-cave.dark.css +113 -0
- data/public/css/highlight/atelier-cave.light.css +113 -0
- data/public/css/highlight/atelier-dune.dark.css +94 -0
- data/public/css/highlight/atelier-dune.light.css +94 -0
- data/public/css/highlight/atelier-estuary.dark.css +113 -0
- data/public/css/highlight/atelier-estuary.light.css +113 -0
- data/public/css/highlight/atelier-forest.dark.css +94 -0
- data/public/css/highlight/atelier-forest.light.css +94 -0
- data/public/css/highlight/atelier-heath.dark.css +94 -0
- data/public/css/highlight/atelier-heath.light.css +94 -0
- data/public/css/highlight/atelier-lakeside.dark.css +94 -0
- data/public/css/highlight/atelier-lakeside.light.css +94 -0
- data/public/css/highlight/atelier-plateau.dark.css +113 -0
- data/public/css/highlight/atelier-plateau.light.css +113 -0
- data/public/css/highlight/atelier-savanna.dark.css +113 -0
- data/public/css/highlight/atelier-savanna.light.css +113 -0
- data/public/css/highlight/atelier-seaside.dark.css +94 -0
- data/public/css/highlight/atelier-seaside.light.css +94 -0
- data/public/css/highlight/atelier-sulphurpool.dark.css +94 -0
- data/public/css/highlight/atelier-sulphurpool.light.css +94 -0
- data/public/css/highlight/brown_paper.css +103 -0
- data/public/css/highlight/brown_papersq.png +0 -0
- data/public/css/highlight/codepen-embed.css +97 -0
- data/public/css/highlight/color-brewer.css +165 -0
- data/public/css/highlight/dark.css +103 -0
- data/public/css/highlight/darkula.css +152 -0
- data/public/css/highlight/default.css +155 -0
- data/public/css/highlight/docco.css +134 -0
- data/public/css/highlight/far.css +110 -0
- data/public/css/highlight/foundation.css +135 -0
- data/public/css/highlight/github-gist.css +211 -0
- data/public/css/highlight/github.css +123 -0
- data/public/css/highlight/googlecode.css +144 -0
- data/public/css/highlight/hybrid.css +164 -0
- data/public/css/highlight/idea.css +122 -0
- data/public/css/highlight/ir_black.css +106 -0
- data/public/css/highlight/kimbie.dark.css +97 -0
- data/public/css/highlight/kimbie.light.css +97 -0
- data/public/css/highlight/magula.css +120 -0
- data/public/css/highlight/mono-blue.css +68 -0
- data/public/css/highlight/monokai.css +126 -0
- data/public/css/highlight/monokai_sublime.css +154 -0
- data/public/css/highlight/obsidian.css +152 -0
- data/public/css/highlight/paraiso.dark.css +96 -0
- data/public/css/highlight/paraiso.light.css +96 -0
- data/public/css/highlight/pojoaque.css +106 -0
- data/public/css/highlight/pojoaque.jpg +0 -0
- data/public/css/highlight/railscasts.css +184 -0
- data/public/css/highlight/rainbow.css +107 -0
- data/public/css/highlight/school_book.css +111 -0
- data/public/css/highlight/school_book.png +0 -0
- data/public/css/highlight/solarized_dark.css +107 -0
- data/public/css/highlight/solarized_light.css +107 -0
- data/public/css/highlight/sunburst.css +161 -0
- data/public/css/highlight/tomorrow-night-blue.css +96 -0
- data/public/css/highlight/tomorrow-night-bright.css +95 -0
- data/public/css/highlight/tomorrow-night-eighties.css +95 -0
- data/public/css/highlight/tomorrow-night.css +96 -0
- data/public/css/highlight/tomorrow.css +93 -0
- data/public/css/highlight/vs.css +92 -0
- data/public/css/highlight/xcode.css +154 -0
- data/public/css/highlight/zenburn.css +118 -0
- data/public/css/ie8.css +4 -0
- data/public/css/presenter.css +5 -17
- data/public/css/run_code-dim.png +0 -0
- data/public/css/run_code.png +0 -0
- data/public/css/showoff.css +154 -127
- data/public/js/highlight.pack.js +10816 -0
- data/public/js/keyDictionary.json +139 -0
- data/public/js/presenter.js +111 -144
- data/public/js/showoff.js +333 -387
- data/views/header.erb +15 -17
- data/views/header_mini.erb +4 -0
- data/views/help.erb +79 -0
- data/views/index.erb +3 -22
- data/views/onepage.erb +27 -14
- data/views/presenter.erb +3 -17
- data/views/stats.erb +4 -4
- metadata +75 -62
- data/public/css/sh_style.css +0 -81
- data/public/css/tipsy.css +0 -26
- data/public/js/core.js +0 -79
- data/public/js/jquery.tipsy.js +0 -260
- data/public/js/onepage.js +0 -4
- data/public/js/sh_lang/sh_bison.min.js +0 -1
- data/public/js/sh_lang/sh_c.min.js +0 -1
- data/public/js/sh_lang/sh_caml.min.js +0 -1
- data/public/js/sh_lang/sh_changelog.min.js +0 -1
- data/public/js/sh_lang/sh_coffeescript.min.js +0 -1
- data/public/js/sh_lang/sh_cpp.min.js +0 -1
- data/public/js/sh_lang/sh_csharp.min.js +0 -1
- data/public/js/sh_lang/sh_css.min.js +0 -1
- data/public/js/sh_lang/sh_cucumber.min.js +0 -2
- data/public/js/sh_lang/sh_desktop.min.js +0 -1
- data/public/js/sh_lang/sh_diff.min.js +0 -1
- data/public/js/sh_lang/sh_docker.js +0 -137
- data/public/js/sh_lang/sh_docker.min.js +0 -1
- data/public/js/sh_lang/sh_erlang.min.js +0 -1
- data/public/js/sh_lang/sh_flex.min.js +0 -1
- data/public/js/sh_lang/sh_gherkin.js +0 -112
- data/public/js/sh_lang/sh_gherkin.min.js +0 -1
- data/public/js/sh_lang/sh_glsl.min.js +0 -1
- data/public/js/sh_lang/sh_haxe.min.js +0 -1
- data/public/js/sh_lang/sh_html.min.js +0 -1
- data/public/js/sh_lang/sh_ini.js +0 -87
- data/public/js/sh_lang/sh_ini.min.js +0 -87
- data/public/js/sh_lang/sh_java.min.js +0 -1
- data/public/js/sh_lang/sh_javascript.min.js +0 -1
- data/public/js/sh_lang/sh_javascript_dom.min.js +0 -1
- data/public/js/sh_lang/sh_latex.min.js +0 -1
- data/public/js/sh_lang/sh_ldap.min.js +0 -1
- data/public/js/sh_lang/sh_log.min.js +0 -1
- data/public/js/sh_lang/sh_lsm.min.js +0 -1
- data/public/js/sh_lang/sh_m4.min.js +0 -1
- data/public/js/sh_lang/sh_makefile.min.js +0 -1
- data/public/js/sh_lang/sh_oracle.min.js +0 -1
- data/public/js/sh_lang/sh_pascal.min.js +0 -1
- data/public/js/sh_lang/sh_perl.min.js +0 -1
- data/public/js/sh_lang/sh_php.min.js +0 -1
- data/public/js/sh_lang/sh_prolog.min.js +0 -1
- data/public/js/sh_lang/sh_properties.min.js +0 -1
- data/public/js/sh_lang/sh_puppet.js +0 -182
- data/public/js/sh_lang/sh_puppet.min.js +0 -182
- data/public/js/sh_lang/sh_puppet_output.js +0 -22
- data/public/js/sh_lang/sh_puppet_output.min.js +0 -22
- data/public/js/sh_lang/sh_python.min.js +0 -1
- data/public/js/sh_lang/sh_ruby.min.js +0 -1
- data/public/js/sh_lang/sh_scala.min.js +0 -1
- data/public/js/sh_lang/sh_sh.min.js +0 -1
- data/public/js/sh_lang/sh_shell.min.js +0 -1
- data/public/js/sh_lang/sh_slang.min.js +0 -1
- data/public/js/sh_lang/sh_sml.min.js +0 -1
- data/public/js/sh_lang/sh_spec.min.js +0 -1
- data/public/js/sh_lang/sh_sql.min.js +0 -1
- data/public/js/sh_lang/sh_tcl.min.js +0 -1
- data/public/js/sh_lang/sh_xml.min.js +0 -1
- data/public/js/sh_lang/sh_xorg.min.js +0 -1
- data/public/js/sh_main.min.js +0 -4
- data/public/js/showoffcore.js +0 -13
@@ -0,0 +1,139 @@
|
|
1
|
+
{
|
2
|
+
"keycodeDictionary": {
|
3
|
+
"0": "\\",
|
4
|
+
"8": "backspace",
|
5
|
+
"9": "tab",
|
6
|
+
"12": "num",
|
7
|
+
"13": "enter",
|
8
|
+
"16": "shift",
|
9
|
+
"17": "ctrl",
|
10
|
+
"18": "alt",
|
11
|
+
"19": "pause",
|
12
|
+
"20": "caps",
|
13
|
+
"27": "esc",
|
14
|
+
"32": "space",
|
15
|
+
"33": "pageup",
|
16
|
+
"34": "pagedown",
|
17
|
+
"35": "end",
|
18
|
+
"36": "home",
|
19
|
+
"37": "left",
|
20
|
+
"38": "up",
|
21
|
+
"39": "right",
|
22
|
+
"40": "down",
|
23
|
+
"44": "print",
|
24
|
+
"45": "insert",
|
25
|
+
"46": "delete",
|
26
|
+
"48": "0",
|
27
|
+
"49": "1",
|
28
|
+
"50": "2",
|
29
|
+
"51": "3",
|
30
|
+
"52": "4",
|
31
|
+
"53": "5",
|
32
|
+
"54": "6",
|
33
|
+
"55": "7",
|
34
|
+
"56": "8",
|
35
|
+
"57": "9",
|
36
|
+
"59": ";",
|
37
|
+
"61": "=",
|
38
|
+
"65": "a",
|
39
|
+
"66": "b",
|
40
|
+
"67": "c",
|
41
|
+
"68": "d",
|
42
|
+
"69": "e",
|
43
|
+
"70": "f",
|
44
|
+
"71": "g",
|
45
|
+
"72": "h",
|
46
|
+
"73": "i",
|
47
|
+
"74": "j",
|
48
|
+
"75": "k",
|
49
|
+
"76": "l",
|
50
|
+
"77": "m",
|
51
|
+
"78": "n",
|
52
|
+
"79": "o",
|
53
|
+
"80": "p",
|
54
|
+
"81": "q",
|
55
|
+
"82": "r",
|
56
|
+
"83": "s",
|
57
|
+
"84": "t",
|
58
|
+
"85": "u",
|
59
|
+
"86": "v",
|
60
|
+
"87": "w",
|
61
|
+
"88": "x",
|
62
|
+
"89": "y",
|
63
|
+
"90": "z",
|
64
|
+
"91": "cmd",
|
65
|
+
"92": "cmd",
|
66
|
+
"93": "cmd",
|
67
|
+
"96": "num_0",
|
68
|
+
"97": "num_1",
|
69
|
+
"98": "num_2",
|
70
|
+
"99": "num_3",
|
71
|
+
"100": "num_4",
|
72
|
+
"101": "num_5",
|
73
|
+
"102": "num_6",
|
74
|
+
"103": "num_7",
|
75
|
+
"104": "num_8",
|
76
|
+
"105": "num_9",
|
77
|
+
"106": "num_multiply",
|
78
|
+
"107": "num_add",
|
79
|
+
"108": "num_enter",
|
80
|
+
"109": "num_subtract",
|
81
|
+
"110": "num_decimal",
|
82
|
+
"111": "num_divide",
|
83
|
+
"112": "f1",
|
84
|
+
"113": "f2",
|
85
|
+
"114": "f3",
|
86
|
+
"115": "f4",
|
87
|
+
"116": "f5",
|
88
|
+
"117": "f6",
|
89
|
+
"118": "f7",
|
90
|
+
"119": "f8",
|
91
|
+
"120": "f9",
|
92
|
+
"121": "f10",
|
93
|
+
"122": "f11",
|
94
|
+
"123": "f12",
|
95
|
+
"124": "print",
|
96
|
+
"144": "num",
|
97
|
+
"145": "scroll",
|
98
|
+
"173": "-",
|
99
|
+
"186": ";",
|
100
|
+
"187": "=",
|
101
|
+
"188": ",",
|
102
|
+
"189": "-",
|
103
|
+
"190": ".",
|
104
|
+
"191": "/",
|
105
|
+
"192": "`",
|
106
|
+
"219": "[",
|
107
|
+
"220": "\\",
|
108
|
+
"221": "]",
|
109
|
+
"222": "'",
|
110
|
+
"223": "`",
|
111
|
+
"224": "cmd",
|
112
|
+
"225": "alt",
|
113
|
+
"57392": "ctrl",
|
114
|
+
"63289": "num"
|
115
|
+
},
|
116
|
+
"shiftedKeyDictionary": {
|
117
|
+
"0": ")",
|
118
|
+
"1": "!",
|
119
|
+
"2": "@",
|
120
|
+
"3": "#",
|
121
|
+
"4": "$",
|
122
|
+
"5": "%",
|
123
|
+
"6": "^",
|
124
|
+
"7": "&",
|
125
|
+
"8": "*",
|
126
|
+
"9": "(",
|
127
|
+
"/": "?",
|
128
|
+
".": ">",
|
129
|
+
",": "<",
|
130
|
+
"'": "\"",
|
131
|
+
";": ":",
|
132
|
+
"[": "{",
|
133
|
+
"]": "}",
|
134
|
+
"\\": "|",
|
135
|
+
"`": "~",
|
136
|
+
"=": "+",
|
137
|
+
"-": "_"
|
138
|
+
}
|
139
|
+
}
|
data/public/js/presenter.js
CHANGED
@@ -40,38 +40,13 @@ $(document).ready(function(){
|
|
40
40
|
zoom();
|
41
41
|
$(window).resize(function() { zoom(); });
|
42
42
|
|
43
|
-
|
44
|
-
|
45
|
-
$('#slaveWindow').tipsy({ offset: 5 });
|
46
|
-
$('#nextWindow').tipsy({ offset: 5 });
|
47
|
-
$('#notesWindow').tipsy({ offset: 5 });
|
48
|
-
$('#generatePDF').tipsy({ offset: 5 });
|
49
|
-
$('#onePage').tipsy({ offset: 5, gravity: 'ne' });
|
50
|
-
|
51
|
-
$('#stats').tipsy({
|
52
|
-
html: true,
|
53
|
-
width: 450,
|
54
|
-
trigger: 'manual',
|
55
|
-
gravity: 'ne',
|
56
|
-
opacity: 0.9,
|
57
|
-
offset: 5
|
43
|
+
$('#statslink').click(function(e) {
|
44
|
+
presenterPopupToggle('/stats', e);
|
58
45
|
});
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
$('#stats').click(function(e) {
|
63
|
-
// Using 'stats' as third parameter creates second element with id='stats'
|
64
|
-
// Should be renamed, along with 'downdloads' below
|
65
|
-
popupLoader($(this), '/stats', 'stats', e);
|
66
|
-
});
|
67
|
-
$('#downloads').click(function(e) {
|
68
|
-
popupLoader($(this), '/download', 'downloads', e);
|
46
|
+
$('#downloadslink').click(function(e) {
|
47
|
+
presenterPopupToggle('/download', e);
|
69
48
|
});
|
70
49
|
|
71
|
-
$('#enableFollower').tipsy({ gravity: 'ne' });
|
72
|
-
$('#enableRemote').tipsy();
|
73
|
-
$('#zoomer').tipsy({ gravity: 'ne' });
|
74
|
-
|
75
50
|
// Bind events for mobile viewing
|
76
51
|
if( mobile() ) {
|
77
52
|
$('#preso').unbind('tap').unbind('swipeleft').unbind('swiperight');
|
@@ -102,26 +77,37 @@ $(document).ready(function(){
|
|
102
77
|
register();
|
103
78
|
});
|
104
79
|
|
105
|
-
function
|
106
|
-
var title = elem.attr('title');
|
80
|
+
function presenterPopupToggle(page, event) {
|
107
81
|
event.preventDefault();
|
108
|
-
|
109
|
-
if (
|
110
|
-
|
111
|
-
|
82
|
+
var popup = $('#presenterPopup');
|
83
|
+
if (popup.length > 0) {
|
84
|
+
popup.slideUp(200, function () {
|
85
|
+
popup.remove();
|
86
|
+
});
|
112
87
|
} else {
|
88
|
+
popup = $('<div>');
|
89
|
+
popup.attr('id', 'presenterPopup');
|
113
90
|
$.get(page, function(data) {
|
114
|
-
var link = '<
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
91
|
+
var link = $('<a>'),
|
92
|
+
content = $('<div>');
|
93
|
+
|
94
|
+
link.attr({
|
95
|
+
href: page,
|
96
|
+
target: '_new'
|
97
|
+
});
|
98
|
+
link.text('Open in a new page...');
|
99
|
+
|
100
|
+
content.attr('id', page.substring(1, page.length));
|
101
|
+
content.append(link);
|
102
|
+
content.append($(data).find('#wrapper').html());
|
103
|
+
popup.append(content);
|
104
|
+
|
105
|
+
setupStats(); // this function is in showoff.js because /stats does not load presenter.js
|
106
|
+
|
107
|
+
$('body').append(popup);
|
108
|
+
popup.slideDown(200); // #presenterPopup is display: none by default
|
109
|
+
});
|
122
110
|
}
|
123
|
-
|
124
|
-
return false;
|
125
111
|
}
|
126
112
|
|
127
113
|
function reportIssue() {
|
@@ -289,31 +275,38 @@ function paceFeedback(pace) {
|
|
289
275
|
|
290
276
|
function updatePace() {
|
291
277
|
// pace notices expire in a few minutes
|
292
|
-
cutoff = 3 * 60 * 1000;
|
293
|
-
expiration = new Date().getTime() - cutoff;
|
278
|
+
var cutoff = 3 * 60 * 1000;
|
279
|
+
var expiration = new Date().getTime() - cutoff;
|
294
280
|
|
295
|
-
scale = 10; // this should max out around 5 clicks in either direction
|
296
|
-
sum = 50; // start in the middle
|
281
|
+
var scale = 10; // this should max out around 5 clicks in either direction
|
282
|
+
var sum = 50; // start in the middle
|
297
283
|
|
298
284
|
// Loops through and calculates a decaying average
|
299
285
|
for (var index = 0; index < paceData.length; index++) {
|
300
|
-
notice = paceData[index]
|
286
|
+
var notice = paceData[index];
|
301
287
|
|
302
288
|
if(notice.time < expiration) {
|
303
289
|
paceData.splice( index, 1 );
|
304
290
|
}
|
305
291
|
else {
|
306
|
-
ratio = (notice.time - expiration) / cutoff;
|
292
|
+
var ratio = (notice.time - expiration) / cutoff;
|
307
293
|
sum += (notice.pace * scale * ratio);
|
308
294
|
}
|
309
295
|
}
|
310
296
|
|
311
|
-
position = Math.max(Math.min(sum, 90), 10); // between 10 and 90
|
312
|
-
console.log("Updating pace: " + position);
|
297
|
+
var position = Math.max(Math.min(sum, 90), 10); // between 10 and 90
|
313
298
|
$("#paceMarker").css({ left: position+"%" });
|
314
299
|
|
315
|
-
if(position > 75) {
|
316
|
-
|
300
|
+
if(position > 75) {
|
301
|
+
$("#paceFast").show();
|
302
|
+
} else {
|
303
|
+
$("#paceFast").hide();
|
304
|
+
}
|
305
|
+
if(position < 25) {
|
306
|
+
$("#paceSlow").show();
|
307
|
+
} else {
|
308
|
+
$("#paceSlow").hide();
|
309
|
+
}
|
317
310
|
}
|
318
311
|
|
319
312
|
function zoom()
|
@@ -446,95 +439,75 @@ function postSlide() {
|
|
446
439
|
}
|
447
440
|
}
|
448
441
|
|
449
|
-
|
450
|
-
|
451
|
-
{
|
452
|
-
var key = event.keyCode;
|
453
|
-
|
454
|
-
if (event.ctrlKey || event.altKey || event.metaKey)
|
455
|
-
return true;
|
456
|
-
|
457
|
-
debug('keyDown: ' + key)
|
442
|
+
function presenterKeyDown(event){
|
443
|
+
var key = event.keyCode;
|
458
444
|
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
445
|
+
debug('keyDown: ' + key);
|
446
|
+
// avoid overriding browser commands
|
447
|
+
if (event.ctrlKey || event.altKey || event.metaKey) {
|
448
|
+
return true;
|
449
|
+
}
|
464
450
|
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
451
|
+
switch(getAction(event)) {
|
452
|
+
case 'DEBUG': toggleDebug(); break;
|
453
|
+
case 'PREV': presPrevStep(); break; // Watch that this uses presPrevStep and not prevStep
|
454
|
+
case 'NEXT': presNextStep(); break; // Same here
|
455
|
+
case 'RELOAD': reloadSlides(); break;
|
456
|
+
case 'CONTENTS': toggleContents(); break;
|
457
|
+
case 'HELP': toggleHelp(); break;
|
458
|
+
case 'BLANK': blankScreen(); break;
|
459
|
+
case 'FOOTER': toggleFooter(); break;
|
460
|
+
case 'FOLLOW': toggleFollow(); break;
|
461
|
+
case 'NOTES': toggleNotes(); break;
|
462
|
+
case 'PAUSE': togglePause(); break;
|
463
|
+
case 'PRESHOW': togglePreShow(); break;
|
464
|
+
case 'CLEAR':
|
465
|
+
removeResults();
|
470
466
|
try {
|
471
|
-
slaveWindow.
|
472
|
-
slaveWindow.showSlide(true);
|
467
|
+
slaveWindow.removeResults();
|
473
468
|
} catch (e) {}
|
474
|
-
|
475
|
-
|
469
|
+
break;
|
470
|
+
case 'EXECUTE':
|
476
471
|
debug('executeCode');
|
477
|
-
|
478
|
-
try {
|
472
|
+
executeVisibleCodeBlock();
|
473
|
+
try {
|
474
|
+
slaveWindow.executeVisibleCodeBlock();
|
475
|
+
} catch (e) {}
|
476
|
+
break;
|
477
|
+
default:
|
478
|
+
switch (key) {
|
479
|
+
case 48: // 0
|
480
|
+
case 49: // 1
|
481
|
+
case 50: // 2
|
482
|
+
case 51: // 3
|
483
|
+
case 52: // 4
|
484
|
+
case 53: // 5
|
485
|
+
case 54: // 6
|
486
|
+
case 55: // 7
|
487
|
+
case 56: // 8
|
488
|
+
case 57: // 9
|
489
|
+
// concatenate numbers from previous keypress events
|
490
|
+
gotoSlidenum = gotoSlidenum * 10 + (key - 48);
|
491
|
+
break;
|
492
|
+
case 13: // enter/return
|
493
|
+
// check for a combination of numbers from previous keypress events
|
494
|
+
if (gotoSlidenum > 0) {
|
495
|
+
debug('go to ' + gotoSlidenum);
|
496
|
+
slidenum = gotoSlidenum - 1;
|
497
|
+
showSlide(true);
|
498
|
+
try {
|
499
|
+
slaveWindow.slidenum = gotoSlidenum - 1;
|
500
|
+
slaveWindow.showSlide(true);
|
501
|
+
} catch (e) {}
|
502
|
+
gotoSlidenum = 0;
|
503
|
+
}
|
504
|
+
break;
|
505
|
+
default:
|
506
|
+
break;
|
507
|
+
}
|
508
|
+
break;
|
479
509
|
}
|
480
|
-
|
481
|
-
|
482
|
-
if (key == 16) // shift key
|
483
|
-
{
|
484
|
-
shiftKeyActive = true;
|
485
|
-
}
|
486
|
-
|
487
|
-
if (key == 32) // space bar
|
488
|
-
{
|
489
|
-
if (shiftKeyActive) {
|
490
|
-
presPrevStep()
|
491
|
-
} else {
|
492
|
-
presNextStep()
|
493
|
-
}
|
494
|
-
}
|
495
|
-
else if (key == 68) // 'd' for debug
|
496
|
-
{
|
497
|
-
debugMode = !debugMode
|
498
|
-
doDebugStuff()
|
499
|
-
}
|
500
|
-
else if (key == 37 || key == 33 || key == 38) // Left arrow, page up, or up arrow
|
501
|
-
{
|
502
|
-
presPrevStep();
|
503
|
-
}
|
504
|
-
else if (key == 39 || key == 34 || key == 40) // Right arrow, page down, or down arrow
|
505
|
-
{
|
506
|
-
presNextStep();
|
507
|
-
}
|
508
|
-
else if (key == 84 || key == 67) // T or C for table of contents
|
509
|
-
{
|
510
|
-
$('#navmenu').toggle().trigger('click')
|
511
|
-
}
|
512
|
-
else if (key == 83) // 's' for style
|
513
|
-
{
|
514
|
-
$('#stylemenu').toggle().trigger('click')
|
515
|
-
}
|
516
|
-
else if (key == 90 || key == 191) // z or ? for help
|
517
|
-
{
|
518
|
-
$('#help').toggle()
|
519
|
-
}
|
520
|
-
else if (key == 66 || key == 70) // f for footer (also "b" which is what kensington remote "stop" button sends
|
521
|
-
{
|
522
|
-
toggleFooter()
|
523
|
-
}
|
524
|
-
else if (key == 78) // 'n' for notes
|
525
|
-
{
|
526
|
-
toggleNotes()
|
527
|
-
}
|
528
|
-
else if (key == 27) // esc
|
529
|
-
{
|
530
|
-
removeResults();
|
531
|
-
try { slaveWindow.removeResults(); } catch (e) {}
|
532
|
-
}
|
533
|
-
else if (key == 80) // 'p' for preshow
|
534
|
-
{
|
535
|
-
try { slaveWindow.togglePreShow(); } catch (e) {}
|
536
|
-
}
|
537
|
-
return true
|
510
|
+
return true;
|
538
511
|
}
|
539
512
|
|
540
513
|
//* TIMER *//
|
@@ -602,12 +575,6 @@ function setProgressColor(progress) {
|
|
602
575
|
}
|
603
576
|
}
|
604
577
|
|
605
|
-
var presSetCurrentStyle = setCurrentStyle;
|
606
|
-
var setCurrentStyle = function(style, prop) {
|
607
|
-
presSetCurrentStyle(style, false);
|
608
|
-
try { slaveWindow.setCurrentStyle(style, false); } catch (e) {}
|
609
|
-
}
|
610
|
-
|
611
578
|
/********************
|
612
579
|
Follower Code
|
613
580
|
********************/
|