Commit graph

271 commits

Author SHA1 Message Date
Nolan Lawson d3fb67bec3
feat: show unread follow requests on community page (#1493)
* feat: show unread follow requests on community page

fixes #477

* fixup

* fixup
2019-09-16 22:36:24 -07:00
Nolan Lawson 3496d7e4ea
fix: improve focus style on nav item (#1492) 2019-09-15 23:18:11 -07:00
Nolan Lawson 54db8752d2
fix: remove avatars from tab order / screenreaders (#1491)
* fix: remove avatars from tab order / screenreaders

* fixup
2019-09-15 18:27:52 -07:00
Nolan Lawson 4256a790fc
fix: fix cursor position jumping on autocomplete (#1490)
fixes #56
2019-09-15 16:33:49 -07:00
Nolan Lawson 1a8de05083
fix: fix style/a11y of search/toots on small devices (#1489)
* fix: fix style/a11y of search/toots on small devices

fixes #3

* fixup

* fixup

* fixup

* fix test
2019-09-15 16:33:44 -07:00
Nolan Lawson d5fb6c568c
fix: ignore rapid Ctrl-Enter inputs when composing (#1488)
fixes #421
2019-09-15 10:45:52 -07:00
Nolan Lawson 35058ed965
feat: mark media as sensitive without a CW (#1486)
fixes #1297
2019-09-15 10:45:46 -07:00
Nolan Lawson 8035cb2580
fix: fix focal point on animated GIFs (#1484)
fixes #1483 for animated mp4s
2019-09-14 22:26:34 -07:00
Nolan Lawson 58af4d888e
feat: clicking avatar opens media modal (#1485)
fixes #1464
2019-09-14 22:26:29 -07:00
Nolan Lawson dbb746ff34
fix: media modal uses full height on mobile (#1481)
fixes #1465
2019-09-13 22:11:22 -07:00
Nolan Lawson 2112361fef
fix: fix case sensitivity in hashtag links (#1478)
fixes #1477
2019-09-13 19:04:22 -07:00
Nolan Lawson 6d3a0b5fee
fix: allow audio uploads on iOS Safari (#1472)
fixes #1461
2019-09-08 11:07:20 -07:00
Nolan Lawson 26a036259e
chore: update standard (#1466) 2019-09-07 20:27:47 -07:00
Nolan Lawson a0ad82d850
fix: Revert "fix: h2 in media edit dialog should be h1 (#1453)" (#1455)
This reverts commit 450785ea81.
2019-08-29 20:16:15 -07:00
Nolan Lawson 9787fe9f05
fix: length indicator aria-label should not be negative (#1454) 2019-08-29 20:13:25 -07:00
Nolan Lawson 450785ea81
fix: h2 in media edit dialog should be h1 (#1453)
The dialog is in its own document, so the heading level should start
back at h1.
2019-08-29 20:13:20 -07:00
Nolan Lawson de27d0e2bf
perf: don't fetch custom emoji on every page load (#1451)
fixes #812

follow-up to #1448 and #1450
2019-08-29 19:15:30 -07:00
Nolan Lawson 7d4cb1914a
fix: make the OCR progress bar accessible (#1445)
* fix: make the OCR progress bar accessible

* fixup
2019-08-28 08:13:24 -07:00
Nolan Lawson c8738f17b0
fix: add progress bar for OCR (#1444) 2019-08-27 23:23:35 -07:00
Nolan Lawson fc0f5df6c6
fix: length gauge should respect reduceMotion (#1440) 2019-08-27 22:58:25 -07:00
Nolan Lawson f6981cff01
fix: improve style of focal/alt editor on mobile (#1439)
fixes #1438
2019-08-27 22:58:17 -07:00
Nolan Lawson b46f76fbf8
fix: use url over id as media upload cache key (#1437) 2019-08-25 22:24:37 -07:00
Nolan Lawson e2c137b2ef
fix: prefer local file URLs for OCR (#1436) 2019-08-25 21:48:59 -07:00
Nolan Lawson cb12e05584
fix: tweak style of focal point coordinate inputs (#1435) 2019-08-25 18:33:50 -07:00
Nolan Lawson ca9a32d303
feat: add OCR for image descriptions using tesseract.js (#1433)
* feat: add OCR for image descriptions using tesseract.js

* tweak style of alt editor

* remove unnecessary files
2019-08-25 18:33:44 -07:00
Nolan Lawson bd2a7abe2a
fix: tweak backdrop filter in focal point editor (#1434) 2019-08-25 17:22:04 -07:00
Nolan Lawson e79fc8f3bd
fix: fix cursor when grabbing in draggable UI (#1432) 2019-08-24 21:23:52 -07:00
Nolan Lawson 59d26f1a09
feat: add length gauge for media alt text editor (#1431)
* feat: add length gauge for media alt text editor

* fix test
2019-08-24 21:23:43 -07:00
Nolan Lawson 7f9195c2af
feat: combine alt/focal point into single "media edit" dialog (#1430)
* feat: combine alt/focal point into single "media edit" dialog

* resize text automatically
2019-08-24 19:28:12 -07:00
Nolan Lawson 88ab0b929c
fix: improve style of "large inline" media (#1428) 2019-08-24 10:43:50 -07:00
Sorin Davidoi da668c5330 fix(components/media): Handle autoplay with blurhash (#1425)
Closes https://github.com/nolanlawson/pinafore/issues/1424.
2019-08-23 07:13:25 -07:00
Nolan Lawson 7188454790
perf: use more efficient CSS selectors for inline media (#1423) 2019-08-22 09:10:02 -07:00
Nolan Lawson 8c6a701d6f
fix: ensure "disable blurhash" setting is honored (#1422)
* fix: ensure "disable blurhash" setting is honored

fixes #1421

* remove play button for audio/video
2019-08-22 09:09:21 -07:00
Nolan Lawson dd625b80a0
fix: remove unused nCols computation (#1420) 2019-08-21 23:26:16 -07:00
sgenoud ada6b9f699 fix: Fix the blurhash alignment and general style (#1418)
* Fix the blurhash alignment issue

* Fix the video blurhash style
2019-08-21 22:31:14 -07:00
Nolan Lawson f80ca32478
perf: be more consistent about compose input scheduling (#1414) 2019-08-20 08:08:15 -07:00
Nolan Lawson cccbfd70da
perf: improve input responsiveness in compose input (#1413)
* perf: improve input responsiveness in compose input

* remove some unused code from autosize.js

* remove some more unused code
2019-08-19 21:37:11 -07:00
Nolan Lawson 4232da5e33 fix: fix lint 2019-08-19 20:23:58 -07:00
Sorin Davidoi acb134e518 fix(components/media): Handling of grouped videos (#1409)
* fix(components/media): Handling of grouped videos

Fixes #1404

* fix(status/media): Wrap in a div
2019-08-19 19:01:35 -07:00
Sorin Davidoi 94cf7df954 fix(components/media): Autoplay and blurhash (#1400)
Fixes https://github.com/nolanlawson/pinafore/issues/1399.
2019-08-18 10:29:03 -07:00
Nolan Lawson f8180e813f
fix: move blurhash worker operations to before status rendering (#1391)
* fix: move blurhash worker operations to before status rendering

* slight refactor

* avoid sending encoded data back and forth

* move cache outside worker
2019-08-17 14:36:13 -07:00
Nolan Lawson daa1978945
fix: tweak position of sensitive media button in blurhash mode (#1390) 2019-08-17 14:36:07 -07:00
Nolan Lawson aca1067568
fix: tweak colors for blurhash sensitive media button/text (#1389) 2019-08-17 14:33:57 -07:00
Sorin Davidoi 77bb784efd feat(media): Blurhash (#1381)
* chore(npm): Install blurhash

* feat(media): Show blurhash

* fix(media/blurhash): Better sensitive video handling

* feat(media): Preference for using blurhash

* chore(utils/blurhash): Add performance marks

* fix(utils/blurhash): Performance marks

* fix(utils/blurhash): Use correct dimension

* refactor(utils/blurhash): Use constant for number of pixels

* refactor(media): Simplify logic for displaying blurhash

* chore(tests/spec): Attempt to adjust sensitivity tests for blurhash

* chore(tests/spec): Update sensitivity tests for blurhash

* chore(tests/spec): Check for sensitive

* fix(media/blurhash): Handle videos

* fix: Video handling

* fix: Videos

* minor refactoring, fix Svelte warning

* fix: Large inline images and videos

* feat(settings): Rename blurhash setting

* refactor: Use toBlob, block media rendering until blurhash ready

* refactor: Move computations to Web Worker

* fix(workers/blurhash): More error handling

* feat(workers/blurhash): Use quick-lru for caching

* fix: Don't create Context2D needlessly

* fix(workers/blurhash): Increase cache size to 100

* fix(workers/blurhash): Don't resolve promise twice

* fix(utils/decode-image): Ignore data URLs

Throws exception which prevents the image from loading.
2019-08-17 10:54:45 -07:00
Nolan Lawson ea58242b85
fix: fix malformed URLs in statuses (#1385)
fixes #1384
2019-08-11 11:09:51 -07:00
Nolan Lawson c5e2eeee2d
perf: fix potential memory leak in IntersectionObserver (#1383) 2019-08-11 11:09:43 -07:00
Nolan Lawson b2d7fad435
perf: only update draggable x/y state at end of drag (#1379)
* perf: only update draggable x/y state at end of drag

This is more intelligent and more performant than using requestIdleCallback willy-nilly. We can just update the store when the user is actually done dragging the button.

* remove console.log

* consistent syntax
2019-08-07 20:38:01 -07:00
Nolan Lawson a5f68aa45c
fix: make focal point button a bit larger (#1377)
* fix: make focal point button a bit larger

* make it a tad smaller
2019-08-07 09:11:52 -07:00
Nolan Lawson 87bab8662c
perf: use requestPostAnimationFrame to reduce layout thrashing (#1376) 2019-08-07 09:11:34 -07:00
Nolan Lawson 98e02cf650
perf: avoid measureText() where possible (#1375) 2019-08-07 09:11:15 -07:00
Nolan Lawson d58ab52a09
fix: improve focal points draggable style/perf (#1371)
* fix: improve focal points draggable style/perf

* remove unnecessary global

* fix all the things

* fix comment
2019-08-04 13:31:51 -07:00
Nolan Lawson 00945a3608
chore: update standard to v13 (#1370) 2019-08-03 13:49:37 -07:00
Nolan Lawson 734d1d7bbd
fix: fix useless nav-indicator-key attribute (#1353) 2019-07-21 19:31:19 -07:00
Louise de Beaufort 53f0fdf1a8 fix: Fix the style of blockquotes, ul and li in toots (#1348)
* Fix the style of blockquotes, ul and li in toots

* fixup based on review comments

fixes #1324
2019-07-21 15:31:05 -07:00
Nolan Lawson fa57608056
fix: improve style of report dialog (#1345) 2019-07-19 20:08:26 -07:00
Nolan Lawson a6235ded8c
fix: fix autosizing of delete/redraft (#1338)
fixes #1334
2019-07-17 21:34:53 -07:00
Nolan Lawson ade28cca5d
fix: remove useless noop methods (#1325) 2019-07-08 19:26:37 -07:00
Nolan Lawson 68343a7a09
fix: use pure CSS for focus effect (#1323)
* fix: use pure CSS for focus effect

fixes #1322

* apply elsewhere too

* fix comment
2019-07-08 09:42:45 -07:00
Nolan Lawson 7fd6cdc22c
fix: fix event propagation for click delegates (#1317)
fixes #1316
2019-07-07 17:32:50 -07:00
Nolan Lawson 8f6681ad7a
fix: clicking outside image closes modal (#1312)
fixes #862
2019-07-07 14:51:08 -07:00
Nolan Lawson 9fd5c8f6d2
fix: focal point should be only visible for images (#1311) 2019-07-07 13:24:49 -07:00
Nolan Lawson 19566bda2e
fix: use focusin/focusout instead of custom events (#1308) 2019-07-07 11:43:35 -07:00
Nolan Lawson e5125a5a63
fix: fix poll color inside of notifications (#1304)
fixes #1271
2019-07-07 11:06:52 -07:00
Nolan Lawson 85b75900c1
feat: add ability to set focal points for media (#1303)
* feat: add ability to set focal points for media

fixes #739

* fix tests

* actually fix tests

* really really fix tests

* really really really fix tests pinkie swear
2019-07-07 00:14:19 -07:00
Nolan Lawson d31f2ce010
feat: add support for audio attachments (#1293)
This is a new thing in Mastodon v2.9. I kept the "camera" icon because I like it better than the paperclip, and I think it covers the 99% use case.
2019-06-23 09:41:31 -07:00
codl 9149cbe76a fix report dialog not taking comments #1282 (#1283) 2019-06-19 23:00:38 -07:00
Nolan Lawson 6980083ed0
fix: push subscriptions per instance (#1277)
* fix: push subscriptions per instance

fixes #1274

* fixup

* add notice about one push notification per instance at a time
2019-06-19 23:00:27 -07:00
Nolan Lawson c397753ddb
fix: Esc key dismisses tooltip (#1268)
fixes #1267
2019-06-03 19:31:00 -07:00
Nolan Lawson 58a8772edc
perf: lazy-load the ComposeBox (#1262) 2019-06-01 17:01:50 -07:00
Nolan Lawson f5c7bc790f
fix: fix compose toolbar on iphone 4 again (#1259) 2019-06-01 14:27:50 -07:00
Nolan Lawson a35f5ee2d9
feat: implement wellness settings (#1256)
* implement wellness settings

fixes #1192

Adds
- grayscale mode (as well as separate grayscale/dark grayscale
themes)
- disable follower/boost/fav counts (follower counts capped at 10)
- disable unread notification count (red dot)

* fix lint

* fix crawler
2019-06-01 13:07:31 -07:00
Nolan Lawson fcf64c2169
fix: fix "Show more" button in Notifications timeline when filtered (#1255) 2019-05-29 18:48:59 -07:00
Nolan Lawson 45630c185f
feat: add option to disable infinite scroll (#1253)
* feat: add option to disable infinite scroll

fixes #391 and fixes #270. Also makes me less nervous about #1251 because now keyboard users can disable infinite load and easily access the "reload" button in the snackbar footer.

* fix test
2019-05-28 22:46:01 -07:00
Nolan Lawson 44a87dcd9a
fix: fix compose button toolbar style on small devices (#1254) 2019-05-28 22:24:22 -07:00
Nolan Lawson 8672ade314
fix: unescape html in card titles/descriptions (#1252) 2019-05-28 22:24:16 -07:00
Nolan Lawson 34e82cbaf2
fix: statuses in own thread should not have cursor:pointer (#1250) 2019-05-27 17:38:59 -07:00
Nolan Lawson f1857cb86e
fix: improve color contrast of dark themes (#1249) 2019-05-27 17:01:53 -07:00
Nolan Lawson 3a7d6d3552
fix: add <select> aria-label, remove unnecessary aria-labelledby (#1242) 2019-05-27 12:31:59 -07:00
Nolan Lawson 12179505e1
fix: improve UI/a11y of media upload (#1241) 2019-05-27 12:31:49 -07:00
Nolan Lawson 482ee3d3bb
fix: improve media upload a11y (#1240)
use ul/li instead of divs here
2019-05-27 12:31:42 -07:00
Nolan Lawson 37d3cac7d2
fix: add tests for polls, improve a11y of poll form (#1239) 2019-05-27 12:31:35 -07:00
Nolan Lawson b45868bbfd
fix: poll button label is backwards (#1238) 2019-05-27 01:05:55 -07:00
Nolan Lawson 6efc28aac8
fix: fix reduceMotion of svelte slide transition (#1237)
fixes #1236
2019-05-27 00:24:57 -07:00
Nolan Lawson 0878275ab9
feat: ability to create polls (#1235)
* feat: ability to create polls

fixes #1130

* fix adds and deletes

* fix tests

* fix tests again
2019-05-27 00:24:47 -07:00
Nolan Lawson 2c1de66592
feat: vote on polls (#1234)
more work on #1130
2019-05-26 20:45:42 -07:00
Nolan Lawson 45441d3a9e
fix: show poll results, time remaining, allow refresh (#1233)
more work towards #1130
2019-05-26 18:48:04 -07:00
Nolan Lawson dac4b493c8
fix: poll for updates to timeago displays (#1232)
* fix: poll for updates to timeago displays

* code cleanup

* avoid some recomputes

* avoid costly recomputes
2019-05-26 16:01:14 -07:00
Nolan Lawson bf640b9b0f
fix: fix unread notifications badge for filters (#1231)
fixes #1230
2019-05-26 16:01:06 -07:00
Nolan Lawson 8f477eeccb
feat: add poll notifications (#1229)
more work on #1130
2019-05-26 09:54:35 -07:00
Nolan Lawson 12c5b732ae
feat: add poll result push notifications (#1227)
fixes one of the sub-tasks in #1130.

I also went ahead and removed the reply feature, because I cannot get it to work in Android 6.0.1 and I can't find any documentation for it in W3C/WHATWG, so I'm not sure how it is supposed to work.
2019-05-25 15:20:09 -07:00
Nolan Lawson a17948cf99
feat: add home/notification filter settings (#1226)
Fixes #1223
Fixes #1224
2019-05-25 13:21:36 -07:00
Nolan Lawson 92bff6caaa
fix: minor tweaks to PushNotificationSettings (#1222) 2019-05-25 13:21:17 -07:00
Nolan Lawson c18168d913
fix: tweak poll results style and fix a11y (#1220) 2019-05-25 13:20:45 -07:00
sgenoud af955492e8 feat: Add poll results to a status (#1219) 2019-05-25 08:36:44 -07:00
Nolan Lawson 9e6bc60abe
fix: improve focus style on dialog list item (#1208)
fixes #1201
2019-05-11 10:01:14 -07:00
Nolan Lawson b7b9758445
fix: fix some dialog state issues (#1203)
* fix: fix some dialog state issues

fixes #1202

* fix console logs
2019-05-09 20:34:45 -07:00
sgenoud db0f5bf237 fix: Fix ios design issues (#1199)
* Take into account the layout weirdness on iPhones

This makes the menu bar full screen in landscape mode and allow the
snackbar to have enough bottom padding

* Improve the icon for PWA

fixes #1198
2019-05-09 07:34:28 -07:00
Nolan Lawson 4432d49467
fix: fix style of snackbar on mobile (#1197) 2019-05-08 23:35:33 -07:00
Nolan Lawson 0887196db4
feat: add snackbar alert with refresh button (#1193)
* feat: add snackbar alert with refresh button

fixes #77

* fixup

* change refresh to reload
2019-05-08 07:52:12 -07:00
Nolan Lawson c56d561e9d
fix: fix aria-hidden on toast (#1194)
* fix: fix aria-hidden on toast

* fixup
2019-05-08 07:51:53 -07:00