blinker / firefox.plugin / package.json @ a03cd52e
History | View | Annotate | Download (10.271 KB)
1 | a03cd52e | Thies Pfeiffer | { |
---|---|---|---|
2 | "name": "blinker", |
||
3 | "title": "Blinker - Gaze-based web browsing", |
||
4 | "id": "jid1-Rcm3sTktBkCg3Q@jetpack", |
||
5 | "description": "Use your eyes to browse and control the web.", |
||
6 | "author": "CITEC", |
||
7 | "contributors": [
|
||
8 | "Dimitri Heil <agassiz.07@gmail.com>",
|
||
9 | "Thies Pfeiffer <Thies.Pfeifer@Uni-Bielefeld.de>"
|
||
10 | ], |
||
11 | "version": "0.2.9", |
||
12 | "main": "lib/main.js", |
||
13 | "unpack": true, |
||
14 | "license": "GPL-3.0", |
||
15 | "preferences": [
|
||
16 | { |
||
17 | "name": "scaling", |
||
18 | "title": "Scaling Factor", |
||
19 | "description": "Scaling factor, the received coordinates are scaled by. (Must be a number - float, double or integer)", |
||
20 | "type": "string", |
||
21 | "value": "1" |
||
22 | }, |
||
23 | { |
||
24 | "name": "bookmarks", |
||
25 | "title": "Bookmarks", |
||
26 | "description": "Add bookmarks, separated by a semicolon, which will be embedded into the control bar for fast access.", |
||
27 | "type": "string", |
||
28 | "value": "" |
||
29 | }, |
||
30 | { |
||
31 | "name": "gestures", |
||
32 | "title": "Gestures", |
||
33 | "description": "Add gestures followed by the function name that should be triggered when the gesture is recognized. The syntax is: '1234|functionName' (without quotes). TopLeft = 1, TopRight = 2,BottomLeft = 3,BottomRight = 4.Separate gesture with semicolon.", |
||
34 | "type": "string", |
||
35 | "value": "1212|pageReload;1431|pageForward;2342|pageBack" |
||
36 | }, |
||
37 | { |
||
38 | "name": "physicalScreenHeight", |
||
39 | "title": "Physical Screen Width", |
||
40 | "description": "The physical screen height in millimetres.", |
||
41 | "type": "integer", |
||
42 | "value": 347 |
||
43 | }, |
||
44 | { |
||
45 | "name": "physicalScreenWidth", |
||
46 | "title": "Physical Screen Width", |
||
47 | "description": "The physical screen width in millimetres.", |
||
48 | "type": "integer", |
||
49 | "value": 551 |
||
50 | }, |
||
51 | |||
52 | { |
||
53 | "name": "eyeTracker", |
||
54 | "description": "Which Eyetracker is being used?", |
||
55 | "title": "EyeTracker", |
||
56 | "type": "menulist", |
||
57 | "value": "eyetribe", |
||
58 | "options":[
|
||
59 | { |
||
60 | "value": "eyetribe", |
||
61 | "label": "EyeTribe" |
||
62 | }, |
||
63 | { |
||
64 | "value": "smi", |
||
65 | "label": "SMI" |
||
66 | }, |
||
67 | { |
||
68 | "value": "mygaze", |
||
69 | "label": "myGaze" |
||
70 | } |
||
71 | ] |
||
72 | }, |
||
73 | { |
||
74 | "name": "eyeTribeAverage", |
||
75 | "description": "Use the EyeTribe's average gaze data instead of raw.", |
||
76 | "title": "EyeTribe Average Data", |
||
77 | "type": "bool", |
||
78 | "value": false |
||
79 | }, |
||
80 | { |
||
81 | "name": "privacyMode", |
||
82 | "description": "Show only gazed area.", |
||
83 | "title": "PrivacyMode", |
||
84 | "type": "bool", |
||
85 | "value": false |
||
86 | }, |
||
87 | { |
||
88 | "name": "gazeCrosshair", |
||
89 | "description": "Show crosshair at gazed position.", |
||
90 | "title": "Gaze Crosshair", |
||
91 | "type": "bool", |
||
92 | "value": true |
||
93 | }, |
||
94 | { |
||
95 | "name": "borderGazedObjects", |
||
96 | "description": "Show border on gazed objects.", |
||
97 | "title": "Border gazed objects", |
||
98 | "type": "bool", |
||
99 | "value": false |
||
100 | }, |
||
101 | { |
||
102 | "name": "debugInformation", |
||
103 | "description": "Show debug information beside the mouse cursor.", |
||
104 | "title": "Debug information", |
||
105 | "type": "bool", |
||
106 | "value": false |
||
107 | }, |
||
108 | { |
||
109 | "name": "scrollAtBorders", |
||
110 | "description": "Scroll when gaze is near according side of screen.", |
||
111 | "title": "Scroll at borders", |
||
112 | "type": "bool", |
||
113 | "value": true |
||
114 | }, |
||
115 | { |
||
116 | "name": "scrollThreshold", |
||
117 | "title": "Scroll threshold", |
||
118 | "description": "Value in % where to initiate scrolling.", |
||
119 | "type": "integer", |
||
120 | "value": 25 |
||
121 | }, |
||
122 | { |
||
123 | "name": "scrollSpeed", |
||
124 | "title": "Scrolling speed", |
||
125 | "description": "Value of how many lines to scroll per step.", |
||
126 | "type": "integer", |
||
127 | "value": 15 |
||
128 | }, |
||
129 | { |
||
130 | "name": "getLinksFromElementBelow", |
||
131 | "description": "Activate parsing the element at exact gaze position for links.", |
||
132 | "title": "Get links from element at gaze position", |
||
133 | "type": "bool", |
||
134 | "value": false |
||
135 | }, |
||
136 | { |
||
137 | "name": "explicitMode", |
||
138 | "description": "Make every single link selectable inline.", |
||
139 | "title": "Every single link will be selectable", |
||
140 | "type": "bool", |
||
141 | "value": false |
||
142 | }, |
||
143 | { |
||
144 | "name": "getLinksFromArea", |
||
145 | "description": "Activate parsing the area around gaze position for links.", |
||
146 | "title": "Get links from area around gaze position", |
||
147 | "type": "bool", |
||
148 | "value": true |
||
149 | }, |
||
150 | { |
||
151 | "name": "linkParsingAreaWidth", |
||
152 | "title": "Total link search area width", |
||
153 | "description": "The width of the area around the gaze position that is being parsed for links in pixel.", |
||
154 | "type": "integer", |
||
155 | "value": 300 |
||
156 | }, |
||
157 | { |
||
158 | "name": "linkParsingAreaHeight", |
||
159 | "title": "Total link search area height", |
||
160 | "description": "The height of the area around the gaze position that is being parsed for links in pixel.", |
||
161 | "type": "integer", |
||
162 | "value": 300 |
||
163 | }, |
||
164 | { |
||
165 | "name": "gazeSmoothingHistory", |
||
166 | "title": "Gaze smoothing history", |
||
167 | "description": "Number of gaze points taken into account for smoothing the gaze.", |
||
168 | "type": "integer", |
||
169 | "value": 30 |
||
170 | }, |
||
171 | { |
||
172 | "name": "gazeSmoothing", |
||
173 | "description": "Number of gaze points taken into account for smoothing the gaze.", |
||
174 | "title": "Gaze Smoothing", |
||
175 | "type": "bool", |
||
176 | "value": true |
||
177 | }, |
||
178 | { |
||
179 | "name": "gazeConfirmationSteps", |
||
180 | "description": "Number of confirmations needed to call an url.", |
||
181 | "title": "Gaze Confirmations", |
||
182 | "type": "integer", |
||
183 | "value": 2 |
||
184 | }, |
||
185 | { |
||
186 | "name": "gazeConfirmationSize", |
||
187 | "description": "Number of points for gaze checking.", |
||
188 | "title": "Count of calibration checking points.", |
||
189 | "type": "integer", |
||
190 | "value": 100 |
||
191 | |||
192 | }, |
||
193 | { |
||
194 | "name": "controlsInControlBar", |
||
195 | "description": "Show website controls in TopBar instead of WheelSelector.", |
||
196 | "title": "Show controls in TopBar", |
||
197 | "type": "bool", |
||
198 | "value": true |
||
199 | }, |
||
200 | { |
||
201 | "name": "hideOnFocusLost", |
||
202 | "description": "Hide the website when window focus is lost.", |
||
203 | "title": "Hide on focus lost", |
||
204 | "type": "bool", |
||
205 | "value": false |
||
206 | }, |
||
207 | { |
||
208 | "name": "fixationThreshold", |
||
209 | "description": "Time in ms after which an object's 'isFixation' event is called.", |
||
210 | "title": "Fixation activation threshold", |
||
211 | "type": "integer", |
||
212 | "value": 500 |
||
213 | }, |
||
214 | { |
||
215 | "name": "saccadeLength", |
||
216 | "description": "Minimal distance of gaze positions that should be considered as a saccade.", |
||
217 | "title": "Saccade length", |
||
218 | "type": "integer", |
||
219 | "value": 200 |
||
220 | }, |
||
221 | { |
||
222 | "name": "topEdge", |
||
223 | "description": "What should happen when you look over the top edge of the screen.", |
||
224 | "title": "Top Edge Function Trigger", |
||
225 | "type": "menulist", |
||
226 | "value": "showControlBar", |
||
227 | "options":[
|
||
228 | { |
||
229 | "value": "showControlBar", |
||
230 | "label": "Show control bar" |
||
231 | }, |
||
232 | { |
||
233 | "value": "initiateGesture", |
||
234 | "label": "Initiate gaze gestures" |
||
235 | }, |
||
236 | |||
237 | { |
||
238 | "value": "clearDivs", |
||
239 | "label": "Clear gaze elements" |
||
240 | }, |
||
241 | { |
||
242 | "value": "toggleScrolling", |
||
243 | "label": "Toggle scrolling" |
||
244 | }, |
||
245 | { |
||
246 | "value": "toggleReadingMode", |
||
247 | "label": "Toggle reading mode" |
||
248 | }, |
||
249 | { |
||
250 | "value": "none", |
||
251 | "label": "None" |
||
252 | } |
||
253 | ] |
||
254 | }, |
||
255 | { |
||
256 | "name": "leftEdgeTolerance", |
||
257 | "description": "Tolerance distance for gaze after when the corresponding function is called.", |
||
258 | "title": "Left edge tolerance", |
||
259 | "type": "integer", |
||
260 | "value": 0 |
||
261 | },{ |
||
262 | "name": "rightEdgeTolerance", |
||
263 | "description": "Tolerance distance for gaze after when the corresponding function is called.", |
||
264 | "title": "Right edge tolerance", |
||
265 | "type": "integer", |
||
266 | "value": 100 |
||
267 | },{ |
||
268 | "name": "topEdgeTolerance", |
||
269 | "description": "Tolerance distance for gaze after when the corresponding function is called.", |
||
270 | "title": "Top edge tolerance", |
||
271 | "type": "integer", |
||
272 | "value": 50 |
||
273 | }, |
||
274 | { |
||
275 | "name": "modeToggleRefractionTime", |
||
276 | "description": "Time in ms to prohibit mode changing.", |
||
277 | "title": "Mode toggle refraction time", |
||
278 | "type": "integer", |
||
279 | "value": 1000 |
||
280 | }, |
||
281 | { |
||
282 | "name": "checkCalibration", |
||
283 | "description": "Check calibration after calibrating.", |
||
284 | "title": "Check calibration", |
||
285 | "type": "bool", |
||
286 | "value": false |
||
287 | }, |
||
288 | { |
||
289 | "name": "gazeCorrectionPoints", |
||
290 | "description": "Number of points for gaze checking.", |
||
291 | "title": "Count of calibration checking points.", |
||
292 | "type": "integer", |
||
293 | "value": 1 |
||
294 | |||
295 | }, |
||
296 | { |
||
297 | "name": "leftEdge", |
||
298 | "description": "What should happen when you look over the left edge of the screen.", |
||
299 | "title": "Left Edge Function Trigger", |
||
300 | "type": "menulist", |
||
301 | "value": "clearDivs", |
||
302 | "options":[
|
||
303 | { |
||
304 | "value": "showControlBar", |
||
305 | "label": "Show control bar" |
||
306 | }, |
||
307 | { |
||
308 | "value": "initiateGesture", |
||
309 | "label": "Initiate gaze gestures" |
||
310 | }, |
||
311 | { |
||
312 | "value": "clearDivs", |
||
313 | "label": "Clear gaze elements" |
||
314 | }, |
||
315 | { |
||
316 | "value": "toggleScrolling", |
||
317 | "label": "Toggle scrolling" |
||
318 | }, |
||
319 | { |
||
320 | "value": "toggleReadingMode", |
||
321 | "label": "Toggle reading mode" |
||
322 | }, |
||
323 | { |
||
324 | "value": "none", |
||
325 | "label": "None" |
||
326 | } |
||
327 | ] |
||
328 | }, |
||
329 | { |
||
330 | "name": "rightEdge", |
||
331 | "description": "What should happen when you look over the right edge of the screen.", |
||
332 | "title": "Right Edge Function Trigger", |
||
333 | "type": "menulist", |
||
334 | "value": "none", |
||
335 | "options":[
|
||
336 | { |
||
337 | "value": "showControlBar", |
||
338 | "label": "Show control bar" |
||
339 | }, |
||
340 | { |
||
341 | "value": "initiateGesture", |
||
342 | "label": "Initiate gaze gestures" |
||
343 | }, |
||
344 | { |
||
345 | "value": "toggleScrolling", |
||
346 | "label": "Toggle scrolling" |
||
347 | }, |
||
348 | { |
||
349 | "value": "clearDivs", |
||
350 | "label": "Clear gaze elements" |
||
351 | }, |
||
352 | { |
||
353 | "value": "toggleReadingMode", |
||
354 | "label": "Toggle reading mode" |
||
355 | }, |
||
356 | { |
||
357 | "value": "none", |
||
358 | "label": "None" |
||
359 | } |
||
360 | ] |
||
361 | }, |
||
362 | { |
||
363 | "name": "gazeOffsetX", |
||
364 | "title": "X - Offset", |
||
365 | "description": "An offset that is added to the gaze position in x direction (can be negative).", |
||
366 | "type": "integer", |
||
367 | "value": 0 |
||
368 | }, |
||
369 | { |
||
370 | "name": "gazeOffsetY", |
||
371 | "title": "Y - Offset", |
||
372 | "description": "An offset that is added to the gaze position in y direction (can be negative).", |
||
373 | "type": "integer", |
||
374 | "value": 0 |
||
375 | }, |
||
376 | { |
||
377 | "name": "selectionMode", |
||
378 | "description": "How an element's function should be triggered.", |
||
379 | "title": "Selection Mode", |
||
380 | "type": "menulist", |
||
381 | "value": "isFixated", |
||
382 | "options":[
|
||
383 | { |
||
384 | "value": "gazeEnter", |
||
385 | "label": "by just touching with gaze" |
||
386 | }, |
||
387 | { |
||
388 | "value": "isFixated", |
||
389 | "label": "by fixating the element" |
||
390 | } |
||
391 | ] |
||
392 | }, |
||
393 | { |
||
394 | "name": "showLeftGazeLinkOption", |
||
395 | "description": "Show left option on gaze links.", |
||
396 | "title": "Show left gaze link option", |
||
397 | "type": "bool", |
||
398 | "value": true |
||
399 | }, |
||
400 | { |
||
401 | "name": "controlBarCalibInfo", |
||
402 | "description": "Show actual calibratin accuracy in controlbar.", |
||
403 | "title": "ControlBar Calibration Information", |
||
404 | "type": "bool", |
||
405 | "value": true |
||
406 | }, |
||
407 | { |
||
408 | "name": "autoReadingMode", |
||
409 | "title": "Automatic Reading Mode", |
||
410 | "description": "Toggle Reading Mode and BrowseMode automatically.", |
||
411 | "type": "bool", |
||
412 | "value": true |
||
413 | }, |
||
414 | { |
||
415 | "name": "autoReadingModeThreshold", |
||
416 | "title": "Automatic reading mode threshold time", |
||
417 | "description": "Duration of fixation in 'ms' after which the browseMode is toggled.", |
||
418 | "type": "integer", |
||
419 | "value": 2000 |
||
420 | }, |
||
421 | { |
||
422 | "name": "autoReadingModeDistance", |
||
423 | "title": "Automatic reading mode distance threshold", |
||
424 | "description": "Distance relative to last position after which the autoReadingMode timer is reset.", |
||
425 | "type": "integer", |
||
426 | "value": 200 |
||
427 | }, |
||
428 | { |
||
429 | "name": "blickBrowserMode", |
||
430 | "description": "Choose a Mode.", |
||
431 | "title": "BlickBrowser Mode", |
||
432 | "type": "menulist", |
||
433 | "value": "browse", |
||
434 | "options":[
|
||
435 | { |
||
436 | "value": "reading", |
||
437 | "label": "ReadingMode" |
||
438 | }, |
||
439 | { |
||
440 | "value": "browse", |
||
441 | "label": "BrowseMode" |
||
442 | } |
||
443 | ] |
||
444 | }] |
||
445 | } |
||
446 | |||
447 |