Commit graph

3279 commits

Author SHA1 Message Date
j
eac7a05584 only show one icon on load 2016-07-27 21:55:34 +02:00
adbf2dad81 ArrayEditable: replace self.$items
When shrinking the number of items, this allows the old elements to be
GCed sooner.
2016-06-23 17:56:22 +02:00
84b3c34130 Editable: avoid setTimeout
It's easily avoided and clearer without it.
2016-06-23 17:56:22 +02:00
ec85c7b458 Element: faster tooltip event binding
Even when there is no tooltip, setTooltip() accounts for about 5% of the
time spent setting the values on an ArrayEditable, of which about 2% is
Ox.filter.

There only a few possible sets of events, so use object identity rather
than calculating the set difference. In particular, this is a lot faster
when self.options.tooltip is false-y.

(I think it was actually wrong before, anyway:

    bindTooltipEvents({mouseenter, mouseleave})
    bindTooltipEvents({mousemove, mouseleave})

would (correctly) unbind mouseenter and bind mousemove, but would set
boundTooltipEvents = {mousemove} even though mouseleave is still bound.)
2016-06-23 17:56:22 +02:00
db343c382e ArrayEditable: one tooltip, not one per element
When changing the visible annotations in the bins in Pandora, creating
(and destroying) all the Ox.Tooltips takes a substantial fraction of the
time. So instead, maintain only one tooltip for each ArrayEditable.
2016-06-23 17:56:22 +02:00
869de36163
Fix Ox.Request.cancel(fn) (fixes #2932)
arguments[0] === req inside the forEach callback, so previously this
would throw

    TypeError: arguments[0] is not a function
2016-06-22 15:53:18 +01:00
j
af610a0df9 work around mobile interaction restrictions 2016-05-17 17:40:40 +02:00
j
5a40d4ef8f space 2016-05-17 17:40:40 +02:00
j
5073700241 add keyboard shortcut to toggle playback rate between 1 and 2 2016-03-29 14:57:42 +02:00
j
f2e7c75d2c add playbackRate to video elements 2016-03-29 14:26:04 +02:00
j
da08120ff4 selected item might be gone 2016-03-16 08:29:31 +01:00
j
cb875c86df fix subtitle toggle in edit panel too 2016-03-05 16:27:29 +05:30
j
ab21bdbe25 fix subtitle selection in player menu 2016-03-05 16:10:24 +05:30
j
07ec93179c disable subtitles if disabled via options.enableSubtitles, fixes #2898 2016-03-05 15:38:52 +05:30
3637b70244 Autocomplete: only replace input when a prefix matches (fixes #2753)
Previously, if the top match for "Smi" was "John Smith", the contents of
the field would be changed to "Smi[n Smith]" (where square brackets
indicate selection). On top of this, if you then type the fourth letter
("n"), the input becomes "Smin", which is not what you typed.

This preserves the "happy path" for replacing the field contents if
there is a prefix match, but without making the field unusable if
there's an infix match.
2016-03-02 17:08:45 +00:00
rlx
eaa4183e60 cosmetic changes 2016-02-22 14:56:35 +05:30
rlx
541d739fb7 cosmetic changes 2016-02-22 14:49:18 +05:30
rlx
8abbbd4791 faster Ox.every 2016-02-20 14:38:04 +05:30
rlx
75b5b76157 Ox.Image: disable tests 2016-02-18 14:45:47 +05:30
rlx
0d0ab99060 add (failing) test to Ox.minify 2016-02-18 13:47:22 +05:30
rlx
d6b7d2e949 Ox.every: add 'that' argument; make Ox.some work more like Ox.every 2016-02-18 11:00:55 +05:30
rlx
064a28da3d Ox.zipObject: support (key, value) 2016-02-18 10:59:37 +05:30
rlx
08e16d073c Ox.unique: for string argument, return string 2016-02-18 10:58:32 +05:30
rlx
7f8403d89f Ox.$: remove unused var, better height/width, fix typo in .map 2016-02-15 13:17:52 +05:30
rlx
869a5ef5ee fix Ox.isEqual for RegExp 2016-02-12 15:59:27 +05:30
rlx
92e141cb81 typo 2016-02-12 15:59:08 +05:30
rlx
d9ef18d482 indeterminate checkboxes... 2016-02-10 13:24:57 +05:30
rlx
2944379b71 indeterminate checkboxes... 2016-02-10 13:22:38 +05:30
rlx
1472927883 indeterminate checkboxes... 2016-02-10 13:19:45 +05:30
rlx
6d560fc4f5 indeterminate checkboxes... 2016-02-10 13:17:17 +05:30
rlx
ff30b32188 indeterminate checkboxes... 2016-02-10 13:15:15 +05:30
rlx
5ea5a5ee2b indeterminate checkboxes... 2016-02-10 13:10:38 +05:30
rlx
56c72ba0b4 'minus' -> 'remove' 2016-02-10 13:08:10 +05:30
rlx
4248a3a783 indeterminate checkboxes... 2016-02-10 13:06:15 +05:30
rlx
12c466b0d3 indeterminate checkboxes... 2016-02-10 13:04:39 +05:30
rlx
0dd921caae indeterminate checkboxes... 2016-02-10 13:03:36 +05:30
rlx
368ae04fe0 Ox.Checkbox: add indeterminate option 2016-02-10 12:56:19 +05:30
j
0327947864 fix form_elements example 2016-01-30 22:39:45 +05:30
rlx
396c69333e Edits: fix doubleclick-to-scroll-to-top in list view 2016-01-21 12:54:25 +05:30
rlx
731c2e88fe Filter: handle formatISBN 2016-01-17 16:44:59 +05:30
rlx
94262efd60 fix Ox.formatISBN 2016-01-16 20:45:57 +05:30
rlx
13d505cbc1 add dashes option to Ox.formatISBN 2016-01-16 20:28:43 +05:30
rlx
cec3e63880 Ox.isValidEmail: handle new TLDs 2016-01-16 17:50:39 +05:30
rlx
835122967f whitespace 2016-01-13 14:56:13 +05:30
rlx
3f4fa3b1fe support for squared select inputs 2016-01-13 14:17:31 +05:30
rlx
1a0c5aeab5 fix css for form elements on text pages 2016-01-13 13:42:39 +05:30
rlx
1734bcc66f allow for squared-styled progress bars 2016-01-12 19:01:15 +05:30
rlx
32252a1dfd some more support for squared style 2016-01-12 11:11:08 +05:30
rlx
53bc6e9e56 checkboxes: allow for squared style 2016-01-12 09:50:00 +05:30
rlx
0b7beec62d off by one in formatISBN 2016-01-11 18:47:14 +05:30
rlx
8a96a0a095 update formatISBN 2016-01-11 15:15:12 +05:30
rlx
598e676458 fix doc comment 2016-01-11 14:54:28 +05:30
rlx
df32ec9ebc add Ox.formatISBN 2016-01-11 14:51:31 +05:30
j
bb8ac55513 filter invalid srt blocks 2016-01-03 10:51:39 +05:30
j
c5534df039 fix srt parser 2016-01-03 10:35:47 +05:30
j
19be508afe Fix pending requests: depend on data not id. 2016-01-02 19:31:56 +05:30
b0853447d1 AnnotationPanel: allow sorting by creation time
fixes #2865
2015-12-14 13:06:03 +00:00
rolux
511a5267b5 Ox.Map: remove terms reformatting 2015-10-30 10:51:53 +01:00
j
fc4dc70545 fix mouse zoom in imageview on linux 2015-10-22 11:33:37 +02:00
rolux
ea918ff6da fix disabled input text color in light and dark theme; add disabled input to form example 2015-10-19 14:57:23 +02:00
j
7516c940f5 use default value instead of '', fixes #2848 2015-10-12 15:41:11 +01:00
j
5bdc80a24f split clip at position 2015-10-04 16:08:44 +01:00
078be8e98f Collapse and style definition lists
ie display this:

     <dl>
       <dt>Foo:</dt>
       <dd>Bar</dd>
       <dt>Juice:</dt>
       <dd>Toast</dd>
       <dd>Milk</dd>
     </dl>

as:

     *Foo:*    Bar
     *Juice:*  Toast
               Milk
2015-09-14 20:45:49 +00:00
6f135629a0 Allow definition lists in sanitized HTML (fixes #2828) 2015-09-14 20:45:06 +00:00
rolux
ac29cb88a6 update Ox.parseUserAgent 2015-08-04 19:20:48 +02:00
rolux
34dcf833b2 update Ox.parseUserAgent 2015-08-04 19:00:47 +02:00
rolux
2fc8324aed update Ox.parseUserAgent 2015-08-03 14:44:41 +02:00
j
2d5ad4500e use Ox.sort, fixes #2802 2015-06-25 14:28:56 +02:00
j
24027c0bcb pass empty string instead of undefined to Ox.words 2015-05-23 13:25:22 +02:00
j
6988dfa89f don't break on unknown keys 2015-05-23 13:02:39 +02:00
j
9deffcfee2 revert r3694, undefined values should not return emtpy string 2015-05-23 15:01:20 +05:30
j
a7ea1a0c46 Ox.formatResolution: return empty string if array is undefined 2015-05-23 14:23:23 +05:30
3ed5da882f Element: 'fix' mousewheel event before modifying it
In strict mode (in recent browsers), modifying deltaX on a WheelEvent
throws an exception:

Uncaught TypeError: Cannot set property deltaX of #<WheelEvent> which has only a getter

In non-strict mode or older browsers, assigning to deltaX is just a
no-op.

https://github.com/jquery/jquery-mousewheel/blob/master/jquery.mousewheel.js
is cited in this function; it uses $.event.fix() to make a mutable
jQuery.Event-flavoured copy of the native event before modifying its
properties. Let's do the same.

Fixes #2751
2015-05-20 12:33:44 +02:00
rolux
eae9074cea Ox.trace: formatting; add documentation 2015-04-24 13:51:04 +02:00
j
6a5cb61880 fix subtitle offset 2015-04-21 16:40:35 +05:30
j
1b18ade72c fix video offset 2015-04-21 16:04:45 +05:30
rolux
fc982fe775 de-refactoring 2015-04-20 09:50:46 +02:00
rolux
cbcfbe8340 animate subtitles on toggle scale 2015-04-20 09:43:01 +02:00
rolux
d437d95f96 fix subtitles css for 'scale to fill' case 2015-04-20 09:39:33 +02:00
j
160c38c361 bind e to show entity info 2015-04-17 13:06:35 +05:30
j
4f7b9846d8 entities are not links 2015-04-16 20:03:38 +00:00
j
f624c86309 decode html entities 2015-04-17 01:09:36 +05:30
j
cacdba606e fix Menu.checkItem with checked argument for groups and submenues 2015-04-16 20:02:36 +01:00
j
c83e7b6930 its possible to disable all users 2015-04-16 20:02:06 +01:00
j
755dcdccaa listen for allusers/nousers click event 2015-04-16 19:29:02 +05:30
rolux
6f5b051821 fix annotations edit menu 2015-04-15 22:44:52 +01:00
rolux
205c84b398 remove duplicate method 2015-04-15 20:07:15 +01:00
rolux
3453fb02b1 fix doc comments 2015-04-15 20:05:33 +01:00
rolux
c6edce6446 typo 2015-04-15 20:03:06 +01:00
rolux
fbc02301b5 add Ox.isValidDate and Ox.isInvalidDate; fix Ox.makeDate 2015-04-15 20:01:46 +01:00
rolux
d42b9c25fb fix #2737 (add 'Show All Users' and 'Show No Users') 2015-04-15 19:01:51 +01:00
rolux
c7225757df remove keyboard shortcut tooltips > 9 2015-04-15 18:56:18 +01:00
rolux
1fb1e35bab keyboard shortcuts end at '9' 2015-04-15 18:25:40 +01:00
rolux
cd34cc5c6e add 'Show All Users' and 'Show No Users' 2015-04-15 18:20:07 +01:00
j
5958b9f408 dont fail if annotation folder does not have focus 2015-04-15 10:10:46 +01:00
j
3c006f9bc5 pass autocomplete callback with layer 2015-04-14 19:48:10 +01:00
j
28d8271174 add subtitlesOffset 2015-04-14 15:50:52 +01:00
j
398e3f6749 encode state.part in url, fixes #2725 2015-03-31 20:53:55 +02:00
j
e6178af146 fix off by one chapter title display, fixes #2726 2015-03-28 14:56:14 +01:00
j
cd3ec3b78b support updating VideoEditPanel clipSize 2015-03-24 19:08:10 +05:30
j
c7bf33fdfe expose new Ox.Element as in setElement 2015-03-24 19:07:23 +05:30
j
0ea08dfc0c fix double toggle collapse 2015-03-23 18:00:25 +05:30
j
470e6ac127 wait until google.maps.LatLng is available 2015-03-23 17:37:58 +05:30
j
f302db9490 pass showLayers from panels to folder 2015-03-23 17:26:41 +05:30
j
69cd6ceed8 update collapsed state if options.collapsed is changed 2015-03-23 17:26:08 +05:30
j
f81a07fc37 handle empty video element 2015-03-19 14:21:32 +00:00
j
a4451b5dd8 add Ox.post(like Ox.get) 2015-03-14 11:25:45 +05:30
j
97ede3643e Ox.Range: update size if max/min/step changes 2015-03-14 11:24:47 +05:30
j
1cbaee2d67 only update timeline src if image has index(ignore loading icon and others), fixes #2709 2015-03-13 07:09:20 +00:00
j
46d0dcf2e3 add option to Ox.Input to set readonly attribute 2015-02-27 12:26:47 +05:30
rolux
747128bdea Ox.UI: add loadThemes option to loader 2015-02-22 19:13:25 +05:30
rolux
29792f74aa add keyboard listeners 2015-02-21 11:17:32 +00:00
rolux
8e32500063 fix input with arrows 2015-02-21 12:47:11 +05:30
j
9e8e145924 continue parsing if getPart resets page 2015-02-20 21:00:03 +05:30
j
e9edeb4629 fix loading VideoPlayer with just a video url 2015-02-16 13:22:48 +00:00
rolux
cfea71af38 Ox.Menu: allow leaf items to have ids with underscores 2015-02-15 17:26:04 +00:00
j
862fe8c6bd fix FormElementGroup.value 2015-02-15 10:18:25 +00:00
rolux
1737b452cf typo in docs 2015-02-15 10:02:11 +00:00
rolux
ba3416784f refactor array input 2015-02-14 19:52:13 +00:00
rolux
91d3f438b7 FormElementGroup: support setting value via .value() 2015-02-14 19:51:55 +00:00
rolux
35b0c46eac ArrayInput: add 'isEmpty' option 2015-02-14 19:09:51 +00:00
j
e97b4ee922 fix adding input with value 2015-02-13 11:05:46 +00:00
rolux
50f41fe0c4 ArrayInput: support FormElementGroups as Inputs; fire 'add' and 'remove' events 2015-02-13 10:48:38 +00:00
rolux
600cbc877b cosmetic changes 2015-02-13 09:10:17 +00:00
rolux
9fef3ccb67 on drag/resize, don't wrap dialog in box 2015-02-12 09:44:47 +00:00
rolux
6e01a73178 fix #2673 (editor focus lost after player position submit) 2015-02-11 15:11:59 +01:00
rolux
cb3d0e9cd8 fix #2671 (can't enable subs in editor view if loaded disabled) 2015-02-11 14:24:56 +01:00
j
547ce17f81 focus disabled input elments, fixes #2660 2015-02-06 11:44:41 +00:00
rolux
4134badf9d editor view: fix invalid entity inputs; fix keyboard focus 2015-02-06 10:16:13 +00:00
rolux
8a58849a22 Ox.ImageElement: trigger load event 2015-02-06 06:22:42 +00:00
rolux
b69f125b97 fix area calculation 2015-02-05 07:38:42 +00:00
rolux
c946fa876e Ox.ImageViewer: add options.area, that.getArea and that.setArea 2015-02-05 07:18:25 +00:00
j
1554d19f91 add part span in constructUrl 2015-02-05 06:29:46 +00:00
rolux
62ade0f54f Ox.URL: add support for /documents/ID/span 2015-02-05 11:44:10 +05:30
rolux
36ffd07203 revert 3624 2015-02-05 11:02:38 +05:30
j
5835cbc38c allow pages to have additional url parts 2015-02-04 15:32:24 +05:30
j
7b24011ea1 Ox.Editable tpye=input: on submit value gets piped through Ox.encodeHTMLEntities, decode before editing 2015-01-09 18:53:17 +01:00
j
3b65b9a1c3 trigger seeking/seeked events if video is not ready. fixes #2316 2014-12-26 23:44:31 +00:00
j
4aba1474d6 annotations are loaded asynchronously: dont fire select event before they are loaded. 2014-12-26 12:08:35 +00:00
j
acbb56da65 pass entity name to find and findannotations, fixes #2626 2014-12-23 10:57:01 +00:00
rolux
8f9a013236 remove debugging code 2014-12-22 22:21:20 +00:00
rolux
7024ef53b5 debugging 2014-12-22 22:15:54 +00:00
rolux
09796cd151 allow for data attribute in annotation html (use case: display rounded value, store precise value) 2014-12-21 13:53:29 +00:00
rolux
1ff7846e71 add comment 2014-12-17 19:37:17 +00:00
rolux
c3a309585e tentatively add public updateItem method to ArrayEditable 2014-12-17 19:36:13 +00:00
rolux
4710f80b65 focus input after hiding autocomplete menu 2014-12-17 19:27:04 +00:00
rolux
6e7a1936dc remove timeout and logging 2014-12-17 15:43:43 +00:00
rolux
c7d9ffc615 pass options through editable 2014-12-17 15:39:58 +00:00
rolux
424bbdd759 pass options through array editable 2014-12-17 15:38:16 +00:00
rolux
5f15edeb16 add logging 2014-12-17 15:28:43 +00:00
rolux
69ec0d3970 add logging 2014-12-17 15:23:22 +00:00
rolux
073e9badd6 still testing 2014-12-17 14:57:04 +00:00
rolux
655f77a06d testing, try longer timeout 2014-12-17 14:54:59 +00:00
rolux
a7739f5e5e testing, try timeout 2014-12-17 14:44:24 +00:00
rolux
5cca2aca81 typo 2014-12-17 14:37:14 +00:00
rolux
a5d23b5c3f annotation folder: change autocomplete menu offset; update its position 2014-12-17 14:36:58 +00:00
rolux
17f4c87439 refactor and add public updatePosition method 2014-12-17 14:36:22 +00:00
rolux
c36243d31c Ox.Input: add autocompleteSelectOffset and autocompleteSelectUpdate options 2014-12-17 14:35:10 +00:00
rolux
a21327ff7e fix #2597 (pandora): 'if an annotation contains a link, tooltip has to change' 2014-12-17 12:37:03 +00:00
rolux
e43881c594 add 'unformat' option to editables 2014-12-16 20:38:41 +00:00
rolux
ad4e7dfa9a update AnnotationFolder 2014-12-16 20:23:29 +00:00
rolux
4538f3801a ArrayEditable: pass format option 2014-12-16 20:23:17 +00:00
rolux
c5a02fc61d typo 2014-12-16 19:40:42 +00:00
rolux
5aaf951c6b (testing...) 2014-12-16 19:39:57 +00:00
rolux
453b98f388 annotation folder: don't use autocompleteReplaceCorrect 2014-12-16 18:43:18 +00:00
rolux
1c70e8a6b9 (revert...) 2014-12-16 18:28:02 +00:00
rolux
e557af2355 in annotations panel edit menu, strip tags from annotation value 2014-12-16 16:35:39 +00:00
rolux
e762ec9137 (testing...) 2014-12-16 16:04:53 +00:00
rolux
d6a1dae8b8 allow for autocomplete in annotations of type entity (first pass) 2014-12-16 13:02:18 +00:00
rolux
ad7e5f3eaf Make sure ArrayInput works with undefined as value 2014-11-21 14:32:13 +00:00
rolux
1989129c0f update parseUserAgent 2014-11-21 09:45:24 +00:00
rolux
c47545d77e make sure Ox.Input works without options 2014-11-20 13:47:25 +00:00
rolux
303bc1c0a7 toggle -> toggleElement 2014-11-17 21:08:10 +00:00
rolux
ebc66bd68b fix #2536 (can't set timeline in item timeline view via main menu) 2014-11-16 10:10:19 +00:00
rolux
38c8dfae9f video annotation panel: add 'delete' shortcut to help 2014-11-15 21:33:06 +00:00
j
d196176c91 srt must end with a newline 2014-11-11 14:34:52 +01:00
j
4a354aa59e srt newlines are \r\n; add utf-8 BOM, fixes #2556 2014-11-11 14:27:01 +01:00
j
50b344321e srt timestamps must include milliseconds, fixes #2550 2014-11-10 11:49:00 +01:00
j
bb931c006f fix build without examples, version can contain more than numbers 2014-10-31 19:12:45 +01:00
j
9651cec448 timelines are nested now, fixes #2513 2014-10-10 16:30:39 +02:00
j
6b9b86e95a fix iframe init, compare to timestamp not date string 2014-10-09 12:56:13 +02:00
j
07d5ebce4a set -ms-linear-gradient on background: and not background-image: in IE 2014-10-06 15:15:42 +02:00
j
2f92bb9839 fix empty video player 2014-10-06 10:35:11 +00:00
rolux
e9ea876f88 update parseUserAgent 2014-09-29 00:16:25 +02:00
rolux
383433a06d rename build/ to min/ 2014-09-26 18:57:12 +02:00
rolux
51696562f1 remove unneeded Ox. prefix from path and file names 2014-09-26 15:51:50 +02:00
rlx
cbc888584d typo in docs 2014-09-26 15:04:34 +02:00
rlx
25069a22d2 Ox.isOxElement -> Ox.UI.isElement 2014-09-26 14:57:02 +02:00
rlx
ba22a7e2eb Ox.UI -> Ox 2014-09-26 14:50:32 +02:00
rlx
8f948335ce UI.js: remove aliases 2014-09-26 14:49:38 +02:00
rlx
552aba4271 Ox -> Ox.UI 2014-09-26 14:31:20 +02:00
rlx
e2a42ab04e Ox -> Ox.UI 2014-09-26 14:18:11 +02:00
rlx
177693b3ce don't throw on place deselect (data is now null, not {}) 2014-09-26 13:20:48 +02:00
rlx
02da127698 don't invoke global event handlers if keyboard event and focused element is input 2014-09-26 12:56:22 +02:00
rlx
2aec28f105 use OxKeyboardFocus class for input-like elements 2014-09-26 12:24:34 +02:00
rlx
c69858ca2d Ox.Request: if data is in cache, don't fail if it gets removed before timeout 2014-09-26 11:57:50 +02:00
rlx
5424023903 keep parent and iframe from sending init messages indefinitely 2014-09-26 11:29:14 +02:00
rlx
4b84424869 Ox.List: use Ox.contains 2014-09-26 10:59:06 +02:00
rlx
cdf8aa8788 fix info list width calculation 2014-09-25 21:56:44 +02:00
rlx
1e845092c4 use jQuery to get .animate 2014-09-25 19:42:11 +02:00