Commit graph

219 commits

Author SHA1 Message Date
Nolan Lawson 7876f82871
fix: build inline script using Rollup (#761)
* fix: build inline script using Rollup

This reduces code duplication and allows the theme engine to work the
same without modifying the code in two places. It does extra extra deps,
but I tried to keep them to a minimum.

* change code comment

* remove unnecessary constant
2018-12-08 11:21:54 -08:00
Nolan Lawson 34cfaf27b3
fix: make inline media changes suggested in #747 (#760) 2018-12-08 09:44:12 -08:00
Nolan Lawson 4b028b1a62
fix: use native smooth scroll when possible (#751) 2018-12-07 08:20:16 -08:00
Nolan Lawson 0e524f3e9a
fix: detect private browsing and safari blocked cookies (#733)
* WIP: detect private browsing and safari blocked cookies

* just check for indexeddb

* just check for indexeddb

* change warning text

* change text

* change text again

* change text again

fixes #444
2018-12-05 21:34:30 -08:00
Nolan Lawson 09f3281e36
chore(package): use events-lights instead of events (#721) 2018-12-04 06:44:13 -08:00
Nolan Lawson da7a29d503
chore: refactor PR #716 (#717) 2018-12-02 23:19:15 -08:00
Nolan Lawson e894e031fb
feat(a11y): add option to disable tappable toots (#716)
fixes #163. also fixed the issue where selecting text would cause the toot to be tapped
2018-12-02 21:12:58 -08:00
Nolan Lawson 9c74a072bf
fix(emojos): actually fix trademark character (#693)
another fix for #679
2018-11-25 12:35:52 -08:00
Nolan Lawson cc81a7bec6
fix(a11y): improved aria-label for status and notifications (#690)
* fix(a11y): improved aria-label for status and notifications

fixes #689

* only calculate formatted date once

* fixup tests

*  fixup tests more

* fixup

* fixup tests again
2018-11-25 01:20:58 -08:00
Nolan Lawson 48a1bd47b3
refactor(themes): use CSS specificity order for themes (#684)
The point of this PR is to make it easier to implement scrollbars (#683).

With this PR, the themes move from a body tag-based system (e.g. `body.theme-scarlet`) to a system where they simply declare global CSS and we use CSS specificity order to give us the right theme.
2018-11-24 00:41:36 -08:00
Nolan Lawson e3debcc5e1
fix(emoji): fix ™® characters treated as emoji (#682)
fixes #679
2018-11-23 21:32:57 -08:00
Nolan Lawson 689dae5d39
fix(dialog): when dialog is hidden, don't scroll to top (#672)
* fix(dialog): when dialog is hidden, don't scroll to top

* update package-lock.json
2018-11-21 00:33:46 -08:00
Nolan Lawson 3dae883761
fix(emoji): asterisk should not be treated as emoji (#668) 2018-11-20 22:41:41 -08:00
Nolan Lawson d9e79daa6a
fix(emoji): emoji replacer should ignore pound sign (#666)
* fix(emoji): emoji replacer should ignore pound sign

* add test

* fix regex
2018-11-20 09:42:49 -08:00
Nolan Lawson 5f5cb0d36d
fix(scroll): fix offsetHeight for scrolling whole document (#664) 2018-11-20 08:58:13 -08:00
Nolan Lawson 4124da2439
fix(emojos): fix emojos on Ubuntu and Chrome on Windows (#661)
* fix(emojos): fix emojos on Ubuntu and Chrome on Windows

* fixup

* start working on unit tests

* fixup

* add more tests and fix emoji
2018-11-20 00:01:23 -08:00
Nolan Lawson 639c6eaed7
fix(eventBus): increase event listeners to 1000 (#657) 2018-11-18 09:07:32 -08:00
Nolan Lawson b7f5d04b4c
fix(scrolling): use body as scrolling container (#656)
* fix(scrolling): use body as scrolling container

Fixes #526

* fixup tests and focus
2018-11-17 18:06:49 -08:00
Nolan Lawson 0964442815
chore(travis): update to mastodon v2.6.1 (#630)
* chore(travis): update to mastodon v2.6.1

* check if mastodon v2.6.1 has a race condition

* apparently in 2.6.1 direct messages no longer appear in home timeline

* Revert "check if mastodon v2.6.1 has a race condition"

This reverts commit dde8ef8be58eda0563170e6b73165fdcbea54f6b.

* try to fix tests

* fix more tests
2018-11-12 12:59:47 -08:00
Sorin Davidoi e45af16bf9 Push notifications (#579)
* feat: Push notifications

* feat: Feature-detect push notifications support

* feat: Prompt user to reauthenticate when missing push scope

* fix(service-worker): Add tags to notifications

* feat: Push notification actions for mentions
2018-10-06 13:06:10 -07:00
Nolan Lawson fd43dc6e5d
fix idb getall in edge (#535)
* fix idb getall in edge

fixes #532

* try to fix

* this should work

* fixup
2018-09-05 19:52:51 -07:00
Nolan Lawson e92bed8e58
fix image loading (#527) 2018-08-31 16:35:26 -07:00
greenkeeper[bot] 8dbc1b0503 Update standard to the latest version 🚀 (#519)
* chore(package): update standard to version 12.0.0

* package lock update

* fix eslint
2018-08-29 21:42:57 -07:00
Nolan Lawson d599f2f308
run idb operations in a web worker (#517) 2018-08-29 19:03:12 -07:00
Nolan Lawson 543536409b
add application (client) name to statuses (#497)
* add application (client) name to statuses

fixes another thing in #6

* add domain blocking (#496)

* add domain blocking

fixes another thing from #6

* show "domain blocking" on profile page

* fix stuff
2018-08-26 15:38:45 -07:00
Nolan Lawson 1423a6b14b
slight refactor of timeline fetching (#485) 2018-08-24 11:50:40 -07:00
Nolan Lawson c4c128030e
allow custom emoji in user profiles (#475)
fixes #471
2018-08-23 14:47:33 -07:00
Nolan Lawson 8949b36873
Use img.decode() (#473)
* remove will-change:transform from container

* WIP: use img.decode()

* more work on img.decode
2018-08-22 21:00:53 -07:00
Nolan Lawson aea952daf0
use better emoji removal algorithm (#452)
another follow-up to #450 to fix #449
2018-08-19 20:25:28 -07:00
Nolan Lawson af1d4b63d3
better support for de-emojified user display names (#451)
improvements to #450 to fix #449, especially for aria labels
2018-08-19 19:31:54 -07:00
Nolan Lawson 37e12e8d73
add option to remove emoji from user display names (#450)
* add option to remove emoji from user display names

fixes #449

* slight memory perf improvement
2018-08-19 18:03:26 -07:00
Nolan Lawson 350667e5df
allow user display names to contain custom emoji (#448)
* allow user display names to contain custom emoji

fixes #445

* fix tests

* fix focus issue
2018-08-19 15:23:40 -07:00
Nolan Lawson 23ccec45d0
fix notifications in a background tab (#402)
Part of the way to improving #390.

Before this fix, if you recieved a notification while Pinafore was in a background tab, nothing would happen, because most browsers (Edge, Firefox, Chrome) don't run rAF in background tabs. Furthermore, Chrome doesn't run rIC. In this PR we detect if we're in a background tab and then avoid rAF/rIC in that case.
2018-06-23 10:11:14 -07:00
Nolan Lawson 5f4e869eeb
add more fine-grained request timeouts (#387)
* add more fine-grained request timeouts

fixes #381

* tweak timeout
2018-06-13 07:38:36 -07:00
Nolan Lawson 11dcaf0cf3
Remove PseudoVirtualList (#385)
* start on removing pseudo virtual list

* rename, refactor

* remove unused file

* fix the tests

* actually fix tests

* okay actually fix tests
2018-06-09 22:55:58 -07:00
Nolan Lawson c309e5842d
slightly improve Svelte 2.0 compatibility (#244)
* slightly improve Svelte 2.0 compatibility

* fixup

* fix lint
2018-04-29 22:13:41 -07:00
Nolan Lawson 75b4d09b64 remove AsyncLayout in favor of rAf + gBCR 2018-04-27 18:16:57 -07:00
Nolan Lawson 12131bd807
refactor dialogs to be individually async (#206) 2018-04-21 09:56:53 -07:00
Nolan Lawson 78f44c7b51
make timeline components async (#204) 2018-04-21 08:45:41 -07:00
Nolan Lawson ec138f94ce
fix requestIdleCallback in edge/safari (#198)
Fixes #195
2018-04-21 00:33:36 -07:00
Nolan Lawson 77ba91c712
fix animations and cleanup store/component get() usage (#185)
fixes #181
2018-04-19 21:38:11 -07:00
Nolan Lawson 79b848df2c
fix requestIdleCallback not defined in Edge (#180) 2018-04-19 10:35:34 -07:00
Nolan Lawson 8d5690d63d
remove get() with string from Svelte calls (#169)
* remove get() with string pt 1

* remove get() with string pt 2

* fix typo

* fix some null exceptions in get()

* fixup code style
2018-04-19 09:37:05 -07:00
Nolan Lawson e431c29efa
update and pin all deps (#164) 2018-04-18 20:43:13 -07:00
Nolan Lawson 2d5714a2ea
simplify ajax.js implementation (#157)
* simplify ajax.js implementation

* fix typo
2018-04-17 22:08:15 -07:00
Nolan Lawson 7c548018c1
Simplify click delegate implementation (#155) 2018-04-17 21:47:30 -07:00
Nolan Lawson e23aa97cf2
make PseudoVirtualList sync rather than async (#133)
Attempt to address #92
2018-04-15 14:43:41 -07:00
Nolan Lawson 6230c2703e
content warnings can have emoji (#122)
fixes #105
2018-04-14 15:50:06 -07:00
Nolan Lawson a208e5dedb
fix warning about max EventEmitter listeners (#100) 2018-04-13 09:46:38 -07:00
Nolan Lawson 7853285eea
Fix scrollTop jiggle in Firefox (#94)
Fixes #64
2018-04-12 19:58:18 -07:00