about summary refs log tree commit diff
path: root/src/view/com/util
Commit message (Collapse)AuthorAgeFilesLines
* Optimistic hidden replies (#4977)Eric Bailey2024-08-231-7/+5
|
* Make settings account buttons a little nicer (#4980)Eric Bailey2024-08-221-36/+42
| | | | | | | | | | | * Replace account dropdown with Menu * Replace card row and add interaction state * Remove testID copy pasta * Sanitize handle * Remove hover from row
* Fix fixed footer experiment (#4969)dan2024-08-221-12/+41
| | | | | | | | | | | | | | | | | * Split minimal shell mode into headerMode and footerMode For now, we'll always write them in sync. When we read them, we'll use headerMode as source of truth. This will let us keep footerMode independent in a future commit. * Remove fixed_bottom_bar special cases during calculation This isn't the right time to determine special behavior. Instead we'll adjust footerMode itself conditionally on the gate. * Copy-paste setMode into MainScrollProvider This lets us fork the implementation later just for this case. * Gate footer adjustment in MainScrollProvider This is the final piece. Normal calls to setMode() keep setting both header and footer, but MainScrollProvider adjusts the footer conditionally.
* Prep threadgate shadow hack (#4970)Eric Bailey2024-08-211-1/+1
| | | | Co-authored-by: Hailey <me@haileyok.com>
* Detached QPs and hidden replies (#4878)Eric Bailey2024-08-215-25/+304
| | | | Co-authored-by: Hailey <me@haileyok.com>
* Show quote posts (#4865)Samuel Newman2024-08-211-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * show quote posts * fix filter * fix keyExtractor * move likedby and repostedby to new file structure * use modern list component * remove relative imports * update quotes count after quoting * call `onPost` after updating quote count * Revert "update quotes count after quoting" This reverts commit 1f1887730a210c57c1e5a0eb0f47c42c42cf1b4b. * implement * update like count in quotes list * only add `onPostReply` where needed * Filter quotes with detached embeds * Bump SDK * Don't show error for no results --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Eric Bailey <git@esb.lol>
* Add `list hidden` screen (#4958)Hailey2024-08-202-35/+13
| | | | | Co-authored-by: Hailey <me@haileyok.com> Co-authored-by: Eric Bailey <git@esb.lol>
* Move global "Sign out" out of the current account row (#4941)dan2024-08-151-21/+37
| | | | | | | | | | | | | | | | | | | | | | | * Rename logout to logoutEveryAccount * Add logoutCurrentAccount() * Make all "Log out" buttons refer to current account Each of these usages is completely contextual and refers to a specific account. * Add Sign out of all accounts to Settings * Move single account Sign Out below as well * Prompt on account removal * Add Other Accounts header to reduce ambiguity * Spacing fix --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* swap control files (#4936)Samuel Newman2024-08-144-592/+579
| | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Video] set audio category to ambient every time a new player is made (#4934)Samuel Newman2024-08-142-0/+10
| | | | | | | | | | | | * set auto category to ambient every time a new player is made * mute on foregrounding * remember previous state --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* [Video] Try/catch video play/pause (#4930)Samuel Newman2024-08-132-7/+21
| | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Video] Fix crash when switching tabs (#4925)Hailey2024-08-121-19/+4
|
* [Video] Invert usage of `setAudioActive` (#4924)Hailey2024-08-121-2/+2
|
* Improve styles (#4916)Minseo Lee2024-08-111-6/+1
| | | | Co-authored-by: Hailey <me@haileyok.com>
* [Video] Resume background audio whenever muting video audio (#4915)Hailey2024-08-091-3/+3
|
* [Videos] Add error boundary to native (#4914)Samuel Newman2024-08-103-64/+116
| | | | | | | | | * move error fallback to own component * use error boundary on native --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Videos] handle app backgrounding (#4912)Samuel Newman2024-08-091-7/+36
| | | | | | | | | | | | | * play when returning from background * play when unfullscreening * play when entering fullscreen, just to be sure * state -> ref --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* animate controls + fade out time after a while (#4913)Samuel Newman2024-08-091-28/+40
| | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Video] More tweaks to `AVAudioSession` options (#4910)Hailey2024-08-091-6/+15
|
* [Video] Prevent pausing of background audio with `expo-video` on iOS (#4908)Hailey2024-08-091-2/+14
| | | | | | | | | | | | | | | | | * audio mixing pref * lint * patch expo video to add enter/exit fullscreen events * rm logs * fix audio problems * toggle mute when enter/exiting fullscreen --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Video] more minor tweaks (#4906)Samuel Newman2024-08-091-9/+67
| | | | | | | | | | | | | * update expo-video * pause when on a different screen * rm collapsable * add mute/unmute button --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Video] Bundle of minor tweaks (#4904)Samuel Newman2024-08-092-26/+30
| | | | | | | | | | | | | * fix bg color * unique video urls for debug * improve controls slightly * mute until fullscreen --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Cleanup flags (#4891)dan2024-08-081-10/+2
| | | | | * Remove launched gates * Remove disabled gates
* [Video] Visibility detection view (#4741)Hailey2024-08-0710-175/+148
| | | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Videos] Video player - PR #2 - better web support (#4732)Samuel Newman2024-08-0710-81/+973
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * attempt some sort of "usurping" system * polling-based active video approach * split into inner component again * click to steal active video * disable findAndActivateVideo on native * new intersectionobserver approach - wip * fix types * disable perf optimisation to allow overflow * make active player indicator subtler, clean up video utils * partially fix double-playing * start working on controls * fullscreen API * get buttons working somewhat * rm source from where it shouldn't be * use video elem as source of truth * fix keyboard nav + mute state * new icons, add fullscreen + time + fix play * unmount when far offscreen + round 2dp * listen globally to clicks rather than blur event * move controls to new file * reduce quality when not active * add hover state to buttons * stop propagation of videoplayer click * move around autoplay effects * increase background contrast * add subtitles button * add stopPropagation to root of video player * clean up VideoWebControls * fix chrome * change quality based on focused state * use autoLevelCapping instead of nextLevel * get subtitle track from stream * always use hlsjs * rework hls into a ref * render player earlier, allowing preload * add error boundary * clean up component structure and organisation * rework fullscreen API * disable fullscreen on iPhone * don't play when ready on pause * debounce buffering * simplify giant list of event listeners * update pref * reduce prop drilling * minimise rerenders in `ActiveViewContext` * restore prop drilling --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* Respect labels on feeds and lists (#4818)Eric Bailey2024-08-021-12/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Prep * Pass in optional moderation to FeedCard * Compute moderation decision, filter contentList contexts, pass into card * Let's go a different route * Filter from within search queries * Use same search query for starter packs * Filter lists from profile tabs * Cleanup * Filter from profile feeds * Moderate post embeds * Memoize * Use ScreenHider on lists * Hide both list types * Fix crash on iOS in screen hider, fix lineheight * Memoize renderItem * Reuse objects to prevent re-renders
* [Web] Retrigger onEndReached if needed when content height changes (#4859)dan2024-07-311-3/+32
| | | | | * Extract EdgeVisibility * Key Visibility by container height instead of item count
* Improve a11y on noty feed (#4842)Eric Bailey2024-07-251-8/+2
|
* Replace `import hairlineWidth =` with const (#4831)Samuel Newman2024-07-256-20/+14
| | | | | | | | | * replace import with const * just use `StyleSheet.hairlineWidth` --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* [Videos] Video player - PR #1 - basic player (#4731)Samuel Newman2024-07-256-0/+332
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add ffmpeg-kit-react-native * get select video button + compression working * up res to 1080p * add progress component * move logic out of compressVideo * (WIP) add lonestar compression * rework web compression a bit * mess around with adding a thumbnail * 3mbps * replace * use 3mbps * add expo-video * remove unnecessary try/catch * rm ToastAndroid * fix web * wrap lazy component in suspense * gate video select button * rm web compression * flip sign * remove expo-video from web * review nits * add video picker permissions + rm temp buttons * add ffmpeg-kit-react-native * replace * hls-capable player * start trying to hoist up video player instance * hoist video player and move things around * always show native controls * fix controls on expo video android * gate temp video player in feed * rm IS_DEV, doesn't do what I thought it did * use __DEV__ instead --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* make toast shorter (#4821)Hailey2024-07-241-1/+1
|
* Hack-modify avi path to use smaller thumbs behind gate (#4816)Paul Frazee2024-07-231-2/+24
| | | | | * Hack-modify avi path to use smaller thumbs behind gate * Only use small thumbs on smaller rendering
* Native toast rework (#4808)Samuel Newman2024-07-231-69/+75
| | | | | | | | | * rework toast to use reanimated * fix animation on iOS --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Use appropriate icons for toasts (#4803)Samuel Newman2024-07-233-6/+10
| | | | | | | | | | | | | * use appropriate icons for toasts * use info for session expiry * tweak size * message -> safeMessage --------- Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Fix alt text for GIFs (#4766)Hailey2024-07-101-2/+11
| | | | | * fix alt text dialog for gifs * only apply to native
* tweak top padding external (#4755)Hailey2024-07-091-4/+8
|
* change `contentVisibility` to `contain` (#4752)Hailey2024-07-082-24/+28
|
* Fix RTL text rendering for display names (#4747)Hailey2024-07-081-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | * header display name rtl support * highlighted post rtl * move `NON_BREAKING_SPACE` to an external constant * rtl support in search dropdown * profile card rtl * old profile card rtl * hover card * wizard list card * new chat * account card * chat header * clean up notifications * just force LTR on meta display name
* Fix misplaced '@' in RTL post meta. (#4531)Joel2024-07-071-1/+3
| | | | | Co-authored-by: Joel <joel.garplind+github@gmail.com> Co-authored-by: Hailey <me@haileyok.com>
* Ensure `/start` navigates to `/starter-pack` when clicking a link internally ↵Hailey2024-07-071-29/+27
| | | | | | | (#4745) * remove temporary metadata removal * ensure proper navigation
* Video compression in composer (#4638)Samuel Newman2024-07-051-1/+1
| | | | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* Fix `onEndReached` not firing sometimes on web (#4728)Hailey2024-07-041-0/+1
| | | | | | | | | | | | | | | * handle off screen visibility observer. * Revert "handle off screen visibility observer." This reverts commit e499ea0ed66b31964f79261b41f58a288b0cdb6f. * key ftw * Remove special case --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* New user progress guides (#4716)Paul Frazee2024-07-041-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add the animated checkmark svg * Add progress guide list and task components * Add ProgressGuide Toast component * Implement progress-guide controller * Add 7 follows to the progress guide * Wire up action captures * Wire up progress-guide persistence * Trigger progress guide on account creation * Clear the progress guide from storage on complete * Add progress guide interstitial, put behind gate * Fix: read progress guide state from prefs * Some defensive type checks * Create separate toast for completion * List tweaks * Only show on Discover * Spacing and progress tweaks * Completely hide when complete * Capture the progress guide in local state, and only render toasts while guide is active * Fix: ensure persisted hydrates into local state * Gate --------- Co-authored-by: Eric Bailey <git@esb.lol> Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Add starter pack embeds to posts (#4699)Hailey2024-07-041-0/+5
| | | | | | | | | | | | | | | | | | | | | | | * starter pack embeds * revert test code * Types * add `BaseLink` * precache on click * rm log * add a comment * loading state * top margin --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* change maxWidth -> width to fix GIFs in DMs (#4717)Samuel Newman2024-07-031-5/+2
| | | Co-authored-by: Samuel Newman <10959775+mozzius@users.noreply.github.com>
* Add dismiss backdrop to native dropdowns (#4711)dan2024-07-011-65/+98
|
* Better starterpack embed (#4659)Hailey2024-06-261-29/+47
|
* Add debug feedContext label (#4598)dan2024-06-221-0/+29
|
* Rework "Who can reply" to blend more nicely into the UI (#4578)Paul Frazee2024-06-192-7/+7
| | | | | | | | | | | | | * Rework WhoCanReply controls in threads to blend more nicely * Fix layout * Fix post control hitslops * Move dialog content to separate component --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* use 1000x1000 for image height in avatar cropper (#4453)Hailey2024-06-201-2/+2
|