Commit graph

92 commits

Author SHA1 Message Date
rr-
32d498c74b client/markdown: allow to specify image size 2016-12-22 23:41:43 +01:00
rr-
81080da06f client/settings: add ability to autoplay videos 2016-11-11 23:14:51 +01:00
rr-
bf0342df71 client/views: refactor make(Non)VoidElement
Merge into one function
2016-11-11 23:08:50 +01:00
rr-
20a5a58734 client/markdown: recognize entity links 2016-11-11 21:52:07 +01:00
rr-
9aa59a228e client/css: align radioboxes to first line 2016-10-22 14:03:34 +02:00
rr-
2b34d395eb client/views: escape tag/user/post links 2016-10-02 20:25:48 +02:00
rr-
977cc47966 client/search: escape : in tag search 2016-09-29 22:47:41 +02:00
rr-
a69bdba63f client/build: ditch arrayToObject
UglifyJS seems to have troubles using it, I didn't want to investigate
it too much as it's just a syntactic sugar used in about 4 places so I
just removed it altogether
2016-09-29 11:16:55 +02:00
rr-
d31acc5952 client/views: show "!" in document title on errors
Closes #96
2016-09-26 22:48:13 +02:00
rr-
5b565e3b00 client/errors: show errors in inline Markdown 2016-09-10 11:36:02 +02:00
rr-
e05e0e5fd2 client/util: refactor Markdown formatter code 2016-09-10 11:36:02 +02:00
rr-
7fa8593b0a client/general: improve URL escaping
Specifically, cater for /, + and % in URL components.
2016-09-04 02:07:22 +02:00
rr-
997eb3de63 client/tags: fix detecting changes to names
Since 243ab15 the order of tag aliases matters, so the changes need to
pick up also permuting - which were ignored before.
2016-08-28 23:48:50 +02:00
rr-
cf1d15354d client/paging: avoid redrawing header navigation 2016-08-28 23:40:28 +02:00
rr-
e83e1b06a1 client/general: remove spurious console.log 2016-08-28 22:23:20 +02:00
rr-
ad8ed89e3c client/general: show empty thumbnails as grid 2016-08-23 23:14:05 +02:00
rr-
d5e197e6ea client/general: add empty href for link buttons
In e464e69 I removed href='#' but I noticed that it broke some things.
Readding href serves two purposes:

- it makes links reachable with Tab key
- it makes links clickable with Enter key

The alternative to this approach was to introduce [tabindex] and [role]
attributes. But not only using tabindex=0 with <a/> is questionable,
it'd require adding a keyboard handler that'd intercept space and return
key presses and simulated link clicks. Since it's best to leave this
kind of thing to the native UI, I went with readding hrefs instead. I
believe that hash hrefs, even though being a common practice, are silly,
so I decided to settle down with empty hrefs.

As a bonus, I added a snippet that prevents middle mouse clicks from
opening such links/buttons in new tabs, which was the motivation for
e464e69.
2016-08-22 01:40:30 +02:00
rr-
5bcf44aa2d client/posts: implement upload form 2016-08-21 23:43:36 +02:00
rr-
9014baab92 client/snapshots: add snapshots browser 2016-08-20 13:01:17 +02:00
rr-
1b62daed9a client/general: clean up, refactor 2016-08-05 23:02:41 +02:00
rr-
9304e309f6 client/settings: add posts per page option 2016-08-05 23:02:41 +02:00
rr-
d5a00fe4b9 client/posts: add note editing 2016-08-05 23:02:41 +02:00
rr-
67f803a2f2 client/general: fix support for deleted users 2016-08-02 12:27:02 +02:00
rr-
7022686b77 client/tags: improve privilege checking
- Hide fields that are uneditable, rather than disabling them
- Support fragmented edit privileges (e.g. roles than can edit only some
  aspects of tags) - up until now the client tried to send everything at
  once, which resulted in errors for such cases.
2016-07-26 20:49:48 +02:00
rr-
865c4f3b79 client/posts: respect edit privileges in sidebar 2016-07-26 20:38:12 +02:00
rr-
7488abb332 client/posts: add simple editing 2016-07-17 20:32:00 +02:00
rr-
394e51ed21 client/general: improve scrolling 2016-07-13 17:18:28 +02:00
rr-
5ac5eb5503 client/general: refactor URL parameter handling 2016-07-08 00:54:24 +02:00
rr-
c7f6663c36 client/general: escape entity names in links 2016-06-23 12:47:56 +02:00
rr-
6ea129a9ef client/views: escape HTML
This lets client use < > in tag names.
2016-06-23 12:47:56 +02:00
rr-
f3049e5546 client/tags: add summary view, add tag description 2016-06-23 00:17:11 +02:00
rr-
1a75c61f65 client/tags: fix tag categories with spaces 2016-06-23 00:15:25 +02:00
rr-
c0fd46c890 client/views: fix complex templates 2016-06-23 00:15:24 +02:00
rr-
5f4b67a2bc client/views: improve HTML to DOM converter
Putting a <tr> in the template resulted in... something weird. Adapting
tricks from JQuery with additional fixes.
2016-06-20 21:44:04 +02:00
rr-
54e3099c56 client/general: refactor control flow
- Controller lifetime is bound to route lifetime
- View lifetime is bound to controller lifetime
- Control lifetime is bound to view lifetime
- Enhanced event dispatching
- Enhanced responsiveness in some places
- Views communicate user input to controllers via new event system
2016-06-18 10:35:20 +02:00
rr-
892c154b34 client/polyfill: add NodeList.querySelectorAll 2016-06-13 20:10:55 +02:00
rr-
3cbcbf1140 client/general: fix jscs warnings 2016-06-12 22:10:20 +02:00
rr-
4295e1c827 client/misc: fix Markdown permalinks 2016-06-12 18:15:27 +02:00
rr-
7e8a9a0948 client/comments: add comment list view for post 2016-06-12 12:54:08 +02:00
rr-
9e13c05517 client/misc: fix invalid markup for SJIS 2016-06-11 22:33:33 +02:00
rr-
8303c08437 client/users: make avatars clickable 2016-06-11 17:36:02 +02:00
rr-
7566d2e0f3 client/general: respect privileges 2016-06-11 17:36:02 +02:00
rr-
abd679888a client/general: make fatal errors fatal 2016-06-11 17:36:02 +02:00
rr-
d445a4c93f client/general: simplify input creation 2016-06-08 22:51:15 +02:00
rr-
07329d33a4 client/posts: add post view (without comments yet) 2016-06-08 22:43:03 +02:00
rr-
009e13c6d8 client/polyfill: add .querySelector to NodeList 2016-06-08 22:39:49 +02:00
rr-
c114cec642 client/posts: add safety buttons 2016-06-03 19:47:09 +02:00
rr-
fd2df3966d client/home: show top nav after all, improve looks 2016-06-01 23:42:42 +02:00
rr-
53fd6fb29b client/home: view featured post, add search form 2016-05-29 12:41:22 +02:00
rr-
6d6cce20dd client/misc: add formatMarkdown() 2016-05-29 12:41:22 +02:00