| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* use getters for returned values
* pass ref
* add log to `onScroll` in tester
* improve expect error
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* add alt text dialog
* multiline alt text input
* add pressable alt text badge
* rename `ALT: ` to `Alt text: ` to avoid including old bad ones
* reuse alt text reminder
* reuse alt text reminder in gallery
* add alt text reminder in the dialog itself
* autofocus text input
* reorder components to fix tab order
* fix close btn position
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* add `onStartReached` to web list
* fix `rootMargin`
* Add `contain`, handle scroll events
* improve types, fix typo
* simplify
* adjust `scrollToTop` and `scrollToOffset` to support `contain`, add `scrollToEnd`
* rename `handleWindowScroll` to `handleScroll`
* support basic `maintainVisibleContentPosition`
* rename `contain` to `containWeb`
* remove unnecessary `flex: 1`
* add missing props
* add root prop to `Visibility`
* add root prop to `Visibility`
* revert adding `maintainVisibleContentPosition`
* remove unnecessary wrapper
* add style
* oops
* maintain position for web
* always apply `flex: 1` to styles when contained
* add a contained list to storybook
* make `onScroll` a worklet in storybook
* revert test code
* remove unnecessary `flex: 1`
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
implementation (#3867)
* add `onStartReached` to web list
* fix `rootMargin`
* Add `contain`, handle scroll events
* improve types, fix typo
* simplify
* adjust `scrollToTop` and `scrollToOffset` to support `contain`, add `scrollToEnd`
* rename `handleWindowScroll` to `handleScroll`
* support basic `maintainVisibleContentPosition`
* rename `contain` to `containWeb`
* remove unnecessary `flex: 1`
* add missing props
* add root prop to `Visibility`
* add root prop to `Visibility`
* revert adding `maintainVisibleContentPosition`
* oops
* always apply `flex: 1` to styles when contained
* add a contained list to storybook
* make `onScroll` a worklet in storybook
* revert test code
* add scrolling to storybook
* simplify getting scrollable node
* nit: extra whitespace
* nit: random comment
* foolproof the logic
* typecheck
|
| |
| |
| |
| |
| |
| |
| | |
`onStartReached` (#3866)
* add `onStartReached` to web list
* fix `rootMargin`
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* empty state for new chat dialog
* use terniary
* dark mode pending state
* copy message text option
* fix service url input (scrollview ftw)
* whoops, fix equality
* slightly reduce horizontal message padding
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix: correctly apply structural sharing to preferences object
* Move moderation opts into a context
* Fix import
* Remove log
* Pass userdid directly
* Pass moderationPrefs directly
|
| |
| |
| |
| |
| | |
* add message sent time to message
* fix last message in group logic
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
* Move dropdown content into separate component
* Fix dropdown with keyboard
* No-op is sufficient
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Add optional momentum events to scroll context
* If there is a velocity, don't snap until momentum end
* Don't show bar on scroll down
* Rm onMomentumBegin
|
|/
|
|
|
|
|
| |
* Don't trigger hovercards on scroll
* Add display name / handle hovercards
* Increase hovercard delay
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* remove `precacheThreadPostProfiles`
* add `displayName` to `PreviewableUserAvatar`
* memo
* use `precacheProfile`
* pass `profile` directly to `PreviewableUserAvatar`
* update the `UserAvatar`'s props
* remove feed cache
* one more spot
* rm unused queryClient
* Don't call fn unnecessarily
* Preload for display name too
* try notification item
* add to feeditem
* and finally, precache for post threads
* timestamp
* Fix
* onBeforePress
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
* Hook it up
* Memoize getAgent method
* Use one shared reference
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
| |
|
|
|
|
|
| |
* Rewrite the link detection
* Handle parens and colons
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix link facet detection
Exclude the trailing period from the link, similar as done in the atproto package
* Fix JSON to text conversion
The trimEnd() call was only needed because we were always appending \n\n at the end. Fix that by only adding line breaks after non-final paragraphs.
* Detect paste reliably
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
| |
|
|
|
|
|
| |
* add option to remove quoted post
* add generous hitslop
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add email 2fa toggle
* Add UI elements needed for 2fa codes in login
* Wire up to the server
* Give a better failure message for bad 2fa code
* Handle enter key in login form 2fa field
* Trim spaces
* Improve error message
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ios player
autoplay after recycle
remove all items from AVPlayer queue
recurururururursion
use managers in the view
add prefetch
make sure player items stay in order
add controller and item managers
start of the view
create module, ios
* android player
smoother
basic caching
prep cache
somewhat works
backup
other files
android impl
blegh
lets go
touchup
add prefetch to js
use caching
* bogus testing commit
* add dims to type
* save
* add the dimensions to the embed info
* add a new case
* add a new case
* limit this case to giphy
* use gate
* Revert "bogus testing commit"
This reverts commit b3c8751b71f7108de9aa843b22ded4e0249fa854.
* add web player base
* flip mp4/webp
* basic mp4 player for web
* move some stuff into `ExternalLinkEmbed` instead
* use a class component for web
* remove extra component
* add `onPlayerStateChange` event type on web
* layer properly
* fix tests
* add new test
* about ready. native portions done, a few touch ups on web needed
show placeholder on ios
fix type
rm log
display thumbnail until video is ready to play
add oncanplay, playsinline
remove unused method
add `isLoaded` change event
release player when finished
apply gc to the view
cleanup logs
android gc
rm log
automatic gc for assets
make `nativeRef` private
remove unnecessary `await`
cleanup
rev log
only play on prepare whenever needed
rm unused
perfperfperf
rm var
comment + android width
native height calculations
rm pressable
add event dispatcher on android
add event dispatcher on ios
* ready to test ios
fix autoplay ios
clean
oops
* autoplay on web
* normalize across all platforms
add check for `ALT:`
separate gif embed logic to another file
handle permissions requests
flatten web styles
normalize styles
normalize styles
prefetch functions
pause animatable on foreground android
nits
one more oops
idk where that code went
lint
rethink the usage
wrap up
android
clear bg
update gradle
more android
rename dir
update android namespace
web
ios
add deps
use webp
rm unused
update types
use webp on mobile
* rm gate from types
* remove unused event param
* only start placeholder op if doesn't exist in disk cache
* fix gifs animating on app resume android
* remove comment
* add `isLoaded` for ios
* add `isLoaded` to Android
* onload for web
* add visual loading state
* rm a log
* implement isloaded for android
* dialogs
* replace `webpSource` with `source`
* update prop name
* Move to Tenor for GIFs (#3654)
* update some urls
* right order for dimensions
* add GIF coder for ios
* remove giphy check
* rewrite tenor urls
* remove all the unnecessary stuff for consent
* rm print
* rm log
* check if id and filename are strings
* full size playback controls
* pass tests
* add accessibility to gifs
* use `onPlay` and `onPause`
* rm unused logic for description
* add accessibility label to the controls
* add gif into to external embed in composer
* make it optional
* gif dimensions
* make the jsx look nicer
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
|
|
|
|
|
|
|
|
|
| |
* replace GIPHY with Tenor
* remove "directly" wording
* replace GIPHY wording
* remove log
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* error boundary on gif picker
* add dialog.close for web users
* fix size of dialog on web
* Safer coercion
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
|
|
|
|
| |
(#3649)
This reverts commit 1a5b8b2c94ce1e66bff7e7295b799ae5b0613988.
|
|
|
|
| |
(#3645)
|
|
|
|
|
|
|
| |
* Split HashtagScreen into two components
* Hashtag tabs
* Visual fixes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* add dims to type
* save
* add the dimensions to the embed info
* add a new case
* add a new case
* limit this case to giphy
* use gate
* flip mp4/webp
* fix tests
* add new test
|
| |
|
|
|
|
|
|
|
|
|
| |
* align center post meta in threaded
* put `displayNameStyle` in correct place
* maybe?
* with mobile padding too?
|
|
|
|
|
|
|
|
|
| |
* add dimensions to data
* keep alt text
* put it in the right url
* just send the original height and width instead
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* create dialog with flatlist in it
* use alf for composer photos/camera/gif buttons
* add gif icons
* focus textinput on gif dialog close
* add giphy API + gif grid
* web support
* add consent confirmation
* track gif select
* desktop web consent styles
* use InlineLinkText instead of Link
* add error/loading state
* hide sideborders on web
* disable composer buttons where necessary
* skip cardyb and set thumbnail directly
* switch legacy analytics to statsig
* remove autoplay prop
* disable photo/gif buttons if external media is present
* memoize listmaybeplaceholder
* fix pagination
* don't set `value` of TextInput, clear via ref
* remove console.log
* close modal if press escape
* pass alt text in the description
* Fix typo
* Rm dialog
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
|
|
|
|
|
|
|
|
| |
* add layoutanimation + transition to images
* make iOS-only
* use useLayoutEffect
* make iOS only (again)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* alignment
remove the unnecessary styles now
seriously?
flex-end everything
flex shrink
test
test
rm unneeded flex
flex the text
don't underline handle in post meta
* use `paddingLeft`
* use `paddingLeft` but with `4`
* Fix overflow color
* Use nbsp to make mobile work
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
|
|
|
|
| |
* Add hovercard for Reply To
* Tweak durations
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* automatically add a link card for urls in the composer
simplify was paste check
use a set
simplify the cross platform reuse
web implementation
remove log
pasting in the middle of a block of text
proper regex
dont re-add immediately after paste and remove
don't use `byteIndex`
lfg
automatically add link card
* `mayBePaste`
* remove accidentally pasted url from comment
|
|
|
|
|
| |
* use existing `ExternalLinkEmbed` for showing previews
* cleanup
|
|
|
|
|
| |
* allow posts with only a quote
* bump version while we're at it
|
|
|
|
|
|
|
|
|
| |
* hide translate/copy text options when no-pwi
* only do this for no-unauth
* always show if logged in
* swap order of OR
|
|
|
|
|
|
|
|
|
|
|
| |
* cache profiles
add onPress back
rm log
cache profile and did when pressing profile card
* minimal diff
|
| |
|
|
|
|
|
|
|
|
|
| |
* Add hover card for mentions
* Reposted by
* Fix key
* Add to composer reply to
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* add embed option to post dropdown menu
* put embed post button behind a gate
* increase line height in dialog
* add gate to gate name union
* hide embed button if PWI optout
* Ungate embed button
* Escape HTML, align implementations
* Make dialog conditionally rendered
* Memoize EmbedDialog
* Render dialog lazily
---------
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
|
| |
|