Commit graph

414 commits

Author SHA1 Message Date
Nolan Lawson 4ddf47f3da
feat: implement basic login mode (#1543)
fixes #1542
2019-09-26 05:28:52 -07:00
Nolan Lawson 2ada968439
fix: fix search on Mastodon v3 (#1541)
fixes #1539
2019-09-26 05:24:20 -07:00
Alex Berg 5e150b31df fix: Add "unfavorite/unboost" label (#1540)
* Add "unfavorite" label.

* fixup, also fix Boost/Unboost

* fix test
2019-09-26 05:24:05 -07:00
Nolan Lawson 038dc27163
perf: lazy-load computations (#1538)
* perf: lazy-load computations (experimental)

* fix lint

* add marks

* fixup

* lazy-load mixins too

* add missing files

* fix tests
2019-09-26 05:23:36 -07:00
Nolan Lawson 8fbf38e974
fix: fix video on iOS Safari (#1537)
* fix: fix video on iOS Safari

* add another missing type
2019-09-24 22:32:27 -07:00
Nolan Lawson 2c6a8468ea
fix: apply focus-fix to account profile name (#1536) 2019-09-24 22:32:06 -07:00
Nolan Lawson ea4c1ad819
fix: return focus to sensitive media button (#1535)
* fix: return focus to sensitive media button

fixes #1517

* additional fix for media sensitive focus

* fix audio/video name in aria-label of button

* fix hotkeys
2019-09-24 22:31:56 -07:00
Nolan Lawson af27c8b26b
fix: remove relative timestamp from tab focus order (#1534)
fixes #1533
2019-09-24 22:30:26 -07:00
Nolan Lawson b8b6556a14
fix: more focus style fixes for small devices (#1532) 2019-09-24 18:46:58 -07:00
Nolan Lawson 65524105f9
fix: hotkeys work with caps lock on (#1531)
fixes #1530
2019-09-24 18:46:53 -07:00
Nolan Lawson 3a2fe740c1
feat: add KaiOS manifest file (#1528) 2019-09-24 00:50:42 -07:00
Nolan Lawson 1bbe2a5612
fix: improve focus styles (#1526)
* fix: improve focus styles

* fixup
2019-09-24 00:50:35 -07:00
Nolan Lawson fbed5b8ac8
fix: improve autosuggest styles on small screens (#1529) 2019-09-24 00:50:25 -07:00
Nolan Lawson 91c491fd8d
fix: more CSS tweaks for very small screens (#1527) 2019-09-24 00:29:42 -07:00
Nolan Lawson 59b6c7e0ce
fix: improve styles on poll form (#1525) 2019-09-24 00:29:24 -07:00
Nolan Lawson ce33c80b6d
fix: ignore modifiers in left/right focus keys (#1524)
fixes #1522
2019-09-24 00:29:12 -07:00
Nolan Lawson 488e87bda1
fix: reduce motion disables nav indicator animation (#1523)
fixes #1521
2019-09-24 00:28:40 -07:00
Nolan Lawson 3d58c86963
feat: left/right keys can change columns or focus (#1516)
* feat: left/right keys can change columns or focus

* fixup

* fixup, add tests
2019-09-22 23:53:29 -07:00
Nolan Lawson 8f3b0ac80a
fix: remove aria-live region for autosuggest (#1520) 2019-09-22 23:53:09 -07:00
Nolan Lawson 3338159eaa
fix: improve nav button focus appearance (#1518) 2019-09-22 20:11:40 -07:00
Nolan Lawson 3490f98208
fix: fix nav animation for notifications/mentions (#1515) 2019-09-22 16:20:26 -07:00
Nolan Lawson 8648bb0ad2
fix: remove focus-after class on nav items (#1514)
this broke the navigation animation, so let's remove it for now
2019-09-22 16:20:20 -07:00
Nolan Lawson 0df6552f83
fix: don't set aria-activedescendant immediately on autocomplete textarea (#1513) 2019-09-22 16:19:51 -07:00
Nolan Lawson d0b7f981d2
fix: fix pleroma hashtag links (#1511)
fixes #832
2019-09-22 15:12:51 -07:00
Nolan Lawson 98a4fbb96e
fix: attempt to fix Safari login bug (#1510) 2019-09-22 15:12:45 -07:00
Nolan Lawson 41270f9210
fix: more fixes for tiny screen sizes (#1509) 2019-09-21 18:16:55 -07:00
Nolan Lawson 38b16c91d1
fix: improve style on very small mobile screens (#1505) 2019-09-21 13:45:48 -07:00
Nolan Lawson 5332a4e1e9
fix: fix null exception on community page (#1504) 2019-09-21 13:43:45 -07:00
Nolan Lawson 2b4edee216
feat: press "7" to open compose modal (#1507) 2019-09-21 13:43:24 -07:00
Nolan Lawson 3a71f2f8d5
fix: fix shortcut help dialog not keyboard-scrollable (#1508)
fixes #1473
2019-09-21 13:42:56 -07:00
Nolan Lawson 489319a3a6
fix: improve nav height on tiny screens, use variables (#1503) 2019-09-20 23:17:57 -07:00
Nolan Lawson 6358af5d04
feat: add legacy build (#1502)
* feat: add legacy build

* service worker should also be in ES5

* fixup
2019-09-20 23:17:52 -07:00
Nolan Lawson abfe232f0e
fix: simplify redirect url logic (#1500) 2019-09-20 18:53:37 -07:00
Nolan Lawson ab9fc31405
fix: remove svelte #await (#1501) 2019-09-20 18:53:04 -07:00
Nolan Lawson 3e303a444d
fix: removing media should reset sensitive status (#1497)
fixes #1495
2019-09-17 00:19:59 -07:00
Nolan Lawson 08992f836a
fix: delete-and-redraft preserves sensitive status (#1496)
fixes #1494
2019-09-17 00:19:53 -07:00
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 72e187a0fa
perf: disable database cleanups when page is not active (#1471)
* perf: disable database cleanups when page is not active

* fix test
2019-09-07 21:05:36 -07:00
Nolan Lawson d71d6b49ef
fix: run idb cleanups in requestIdleCallback (#1470) 2019-09-07 20:27:54 -07:00
Nolan Lawson 26a036259e
chore: update standard (#1466) 2019-09-07 20:27:47 -07:00
Nolan Lawson df0afa12ed
perf: periodically clean up old compose drafts (#1469)
fixes #1419
2019-09-07 17:49:58 -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 ebd10a43d2
perf: fetch lists from database on page load (#1450)
* perf: fetch lists from database on page load

follow-up to #1448, I would like for there not to be a flash on the /community page where the lists suddenly load in, but I would still like to avoid the network request if possible. So when the page first loads, we can load the lists from the database and only fetch them from the network if not in the cache.

* add comment
2019-08-29 18:41:36 -07:00
Nolan Lawson 56f266cb93
perf: terminate tesseract worker after a delay (#1449)
fixes #1447
2019-08-29 08:51:41 -07:00
Sorin Davidoi b01191037e refactor(store/observers/instance): Don't fetch lists eagerly (#1448)
They are already fetched on-demand when the community column is loaded.
2019-08-29 07:55:40 -07:00
Sorin Davidoi 7d8f19a672 fix(actions/instances): Clear data when token revoked (#1446) 2019-08-29 07:55:12 -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 7b32c71c93
fix: reset websocket on online/offline/active events (#1429)
* fix: reset websocket on online/offline/active events

* minor fixup

* add comments
2019-08-24 13:33:57 -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
Nolan Lawson 5c9416b7fa
fix: fix blurhash for reblogged images (#1412)
fixes #1411
2019-08-19 20:23:05 -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
Nolan Lawson c98b96aa44
fix: move worker-loader to webpack config (#1405)
This avoids ESLint complaining about the `worker-loader!` declaration
2019-08-18 15:15:20 -07:00
Nolan Lawson 009a511c80
perf: call revokeObjectURL() on stale blurhash blob URLs (#1403)
* perf: call revokeObjectURL() on stale blurhash blob URLs

fixes #1402

* add a test

* add comment
2019-08-18 15:15:13 -07:00
Sorin Davidoi c127d0a6bc feat(settings): Increase clickable area (#1401) 2019-08-18 12:29:36 -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
Sorin Davidoi 823a7abebf fix(workers/blurhash): Don't use OffscreenCanvas (#1398) 2019-08-18 05:14:11 -07:00
Nolan Lawson 03dff1c595
fix: remove firefox UA sniff for img.decode (#1393)
fixes #1388
2019-08-17 15:35:43 -07:00
Nolan Lawson f25c93526c
fix: rename "hide all media by default" (#1394) 2019-08-17 15:35:38 -07:00
Nolan Lawson be3b5eb9d9
fix: reduce number of blurhash performance measures (#1395) 2019-08-17 15:35:31 -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
Sorin Davidoi 66b247875f fix(service-worker): Open notifications if no status (#1378)
* fix(service-worker): Open notifications if no status

If the notifications couldn't be fetched fallback to displaying all notifications (aligned with how the Mastodon Web UI [handles it](https://github.com/tootsuite/mastodon/blob/master/app/javascript/mastodon/service_worker/web_push_notifications.js#L118)).

Might fix https://github.com/nolanlawson/pinafore/issues/1365.

* fix(service-worker): Use self
2019-08-07 20:38:38 -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