about summary refs log tree commit diff
path: root/src/view/com/composer/text-input
Commit message (Collapse)AuthorAgeFilesLines
* Immediately parse pre-filled links in composer state (#6974)Eric Bailey2024-12-062-3/+7
| | | | | | | * Immediately parse pre-filled links in composer state * Add hack to fix PasteInput height bug * Parse out ext links separately from post links
* perf: optimizations for composer with Tiptap (#6315)Nick Perez2024-11-231-8/+3
| | | | | | | | | | | | | * chore: update tiptap packages * perf: reduce number of re-renders * refactor: apply min height without a layout effect * Remove stale zeed-dom resolution --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
* Fix Newline handling in Web's Composer (#6658)Horus Lugo2024-11-231-0/+20
|
* Fix overflow issue on iOS autocomplete, among other things (#6611)Samuel Newman2024-11-213-40/+27
| | | | | | | | | | | * stop using ref in render * fix display name fallback on web * use unicode ellipsis for useGrapheme * fix overflow issue * sanitize handle/displayname on web
* Fix Fast Refresh in <Text> files (#6609)dan2024-11-212-2/+2
| | | | | | | | | | | * Separate non-components from components * Mark old Text as deprecated * Move emoji utilities to non-React file * Fix type * Fix import
* Leverage jsx transform to remove unnecessary react imports and update eslint ↵Paul Coroneos2024-11-192-7/+2
| | | | | | | | | config (#6516) * update eslint config with jsx runtime * leverage jsx transform to remove unnecessary react imports and update eslint config * run yarn lint --fix to remove eslint disables related to react/prop-types that is now disabled
* set includeFontPadding false for fixed TextInput height on Android (#6170)khuddite2024-11-091-1/+5
|
* Composer UI fixes (#6065)dan2024-11-012-2/+9
| | | | | | | | | * Fix close button overlap * Make footer actually sticky on web * Special toast for thread * Only stick to bottom for last post
* Fix duplicates in thread composer (#6068)dan2024-11-012-4/+21
|
* Thread composer UI (#6050)dan2024-11-011-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Basic adding of posts * Switch active post on focus * Conditionally show plus button * Insert posts midthread * Track active/inactive post * Delete posts in a thread * Focus after deletion * Tweak empty post detection * Mix height for active only * Move toolbar with post on web * Fix footer positioning * Post All button * Fix reply to positioning * Improve memoization * Improve memoization for clearVideo * Remove unnecessary argument * Add some manual memoization to fix re-renders * Scroll to bottom on add new * Fix opacity on Android * Add backdrop * Fix videos * Check alt for video too * Clear pending publish on error * Fork alt message by type * Separate placeholder for next posts * Limit hitslop to avoid clashes
* Sort imports (#6009)dan2024-10-293-4/+4
| | | | | * Mark import sort/order/style rules as error * npm run lint -- --fix
* Make composer min height conditional and align attachments (#5976)dan2024-10-282-2/+12
| | | | | | | * Make web composer min height condiitonal * Fix alignment * Fix alignment on mobile
* Split composer into smaller components (#5941)dan2024-10-252-6/+6
| | | | | | | | | | | | | | | * Extract ComposerTopBar * Rename state variables to align with props * Extract ComposerEmbeds * Extract ComposerPills * Extract ComposerFooter * Tweak condition to be simpler * Extract ComposerPost
* Move Dialogs to Radix (#5648)Samuel Newman2024-10-081-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use Redix FocusTrap (#5638) * Use Redix FocusTrap * force resolutions on radix libs * add focus guards * use @radix-ui/dismissable-layer for escape handling * fix banner menu keypress by using `Pressable` * add menu in dialog example to storybook --------- Co-authored-by: Samuel Newman <mozzius@protonmail.com> * use DismissableLayer/FocusScope for composer * fix storybook dialog * thread Portal through Prompt and avatar/banner * fix dialog style regression * remove tamagui --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Move remaining composer state into reducer (#5623)dan2024-10-071-1/+1
| | | | | | Co-authored-by: Mary <git@mary.my.id> Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: Hailey <me@haileyok.com>
* Rework native autocomplete (#5521)Hailey2024-09-272-108/+93
| | | | Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Fix composer jumpiness on native (#5476)Eric Bailey2024-09-241-30/+20
|
* [Neue] Handle emoji within custom font (#5449)Eric Bailey2024-09-242-16/+18
| | | | | | | | | | | | | * Support emoji in text with custom font * Add emoji support to elements that need it * Remove unused file causing lint failure * Fix a few more emoji locations * Couple more * No throw
* [Neue] Ligatures & composer (#5427)Eric Bailey2024-09-192-23/+60
| | | | | | | | | * Disable contextual ligatures * Ensure new type styles are applied to the composer * Clean up using real devices * Feedback
* [Video] Allow drag-and-drop & pasting video (#5252)Samuel Newman2024-09-101-7/+17
| | | | | * allow DnD/pasting video * rm await
* Add emoji picker to chat composer (#5196)Eric Bailey2024-09-063-7/+27
| | | | | Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: Adrov Igor <nucleartux@gmail.com>
* Fix Android composer cursor bug by removing `setTimeout` from native ↵Hailey2024-08-121-57/+45
| | | | composer `onChangeText` (#4922)
* Fix: emoji picker closes when hitting spacebar (#4422) (#4441)Michał Gołda2024-07-111-21/+23
| | | | Co-authored-by: Hailey <me@haileyok.com>
* Fix pasting images on web (#4670)dan2024-06-271-8/+7
|
* Prevent rich-formatting paste (#4327)Mary2024-06-131-8/+19
| | | | | * fix: prevent rich-formatting paste * fix: return true instead of preventDefault
* Rewrite the link detection (#3687)dan2024-04-243-87/+110
| | | | | * Rewrite the link detection * Handle parens and colons
* Remove unnecessary `.trimEnd()` and fix facet detection (#3672)Hailey2024-04-242-12/+23
| | | | | | | | | | | | | | | * 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>
* Automatically add a link card for URLs in the composer (#3566)Hailey2024-04-163-50/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 consistent avatar shape/defaults for labelers (#3257)Eric Bailey2024-03-192-2/+10
| | | | | | | | | | | | | | | | | | | | | | | * Add type: labeler to easy spots * Search and ProfileCard * Filter out of suggested follows * ComposeReplyTo * PReviewable avatar in posts * Lists * PostMeta * Notifications * Autocomplete * Straggler * Bump sdk
* Integrate new tag detection and regexes (#3063)Eric Bailey2024-03-012-9/+18
| | | | | | | | | | | * Integrate new tag detection and regexes * Bump SDK * Can use const * Clarify intent * Enhance clarity
* Add tags and mute words (#2968)Eric Bailey2024-02-263-2/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add bare minimum hashtags support (#2804) * Add bare minimum hashtags support As atproto/api already parses hashtags, this is as simple as hooking it up like link segments. This is "bare minimum" because: - Opening hashtag "#foo" is actually just a search for "foo" right now to work around #2491. - There is no integration in the composer. This hasn't stopped people from using hashtags already, and can be added later. - This change itself only had to hook things up - thank you for having already put the hashtag parsing in place. * Remove workaround for hash search not working now that it's fixed * Add RichTextTag and TagMenu * Sketch * Remove hackfix * Some cleanup * Sketch web * Mobile design * Mobile handling of tags search * Web only * Fix navigation woes * Use new callback * Hook it up * Integrate muted tags * Fix dropdown styles * Type error * Use close callback * Fix styles * Cleanup, install latest sdk * Quick muted words screen * Targets * Dir structure * Icons, list view * Move to dialog * Add removal confirmation * Swap copy * Improve checkboxees * Update matching, add tests * Moderate embeds * Create global dialogs concept again to prevent flashing * Add access from moderation screen * Highlight tags on native * Add web highlighting * Add close to web modal * Adjust close color * Rename toggles and adjust logic * Icon update * Load states * Improve regex * Improve regex * Improve regex * Revert link test * Hyphenated words * Improve matching * Enhance * Some tweaks * Muted words modal changes * Handle invalid handles, handle long tags * Remove main regex * Better test * Space/punct check drop to includes * Lowercase post text before comparison * Add better real world test case --------- Co-authored-by: Kisaragi Hiu <mail@kisaragi-hiu.com>
* remove line height from text input for composer on ios (#2844)Hailey2024-02-121-1/+3
| | | | | * remove line height from text input for composer * only apply removal to ios
* use the palette's font color in the composer (as string) (#2792)Hailey2024-02-081-1/+4
|
* use the palette's font color in the composer (#2791)Hailey2024-02-071-1/+1
| | | | | | | * use the palette's font color in the composer * correct type for cssproperties * log
* Reduce the odds of false positives in the language suggester (close #2598) ↵Paul Frazee2024-01-301-1/+0
| | | | (#2700)
* Disable scroll on the composer TextInput (close #2413) (#2603)Paul Frazee2024-01-231-0/+1
|
* Tweak positioningPaul Frazee2024-01-221-1/+3
|
* Merge branch 'feat/image-dnd' of https://github.com/mary-ext/fork-bsky-app ↵Paul Frazee2024-01-221-14/+107
|\ | | | | | | into mary-ext-feat/image-dnd
| * fix: firefox edge-caseMary2024-01-211-5/+2
| |
| * fix: design adjustmentsMary2024-01-211-2/+3
| |
| * fix: always call preventDefaultMary2024-01-211-4/+12
| |
| * refactor: use right borderDarkMary2024-01-211-5/+1
| |
| * feat: new designMary2024-01-211-35/+81
| |
| * feat: web composer image drag and dropMary2024-01-211-9/+54
| |
* | New Web Layout (#2126)dan2024-01-221-1/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rip out virtualization on the web * Screw around with layout * onEndReached * scrollToOffset * Fix background * onScroll * Shell bars * More scroll * Fixes * position: sticky * Clean up 1 * Clean up 2 * Undo PagerWithHeader changes and fork it * Trim down both versions * Cleanup 3 * Memoize, lint * Don't scroll away modal or lightbox * Add content-visibility for rows * Fix composer * Fix types * Fix borked scroll animation * Fixes to layout * More FlatList parity * Layout fixes * Fix more layout * More layout * More layouts * Fix profile layout * Remove onScroll * Display: none inactive pages * Add an intermediate List component * Fix type * Add onScrolledDownChange * Port pager to use onScrolledDownChange * Fix on mobile * Don't pass down onScroll (replacement TBD) * Remove resetMainScroll * Replace onMainScroll with MainScrollProvider * Hook ScrollProvider to pager * Fix the remaining special case * Optimize a bit * Enforce that onScroll cannot be passed * Keep value updated even if no handler * Also memo it * Move the fork to List.web * Add scroll handler * Consolidate List props a bit * More stuff * Rm unused * Simplify * Make isScrolledDown work * Oops * Fixes * Hook up context scroll handlers * Scroll restore for tabs * Route scroll restoration POC * Fix some issues with restoration * Remove bad idea * Fix pager scroll restoration * Undo accidental locale changes * onContentSizeChange * Scroll to post * Better positioning * Layout fixes * Factor out navigation stuff * Cleanup * Oops * Cleanup * Fixes and types * Naming etc * Fix crash * Match FL semantics * Snap the header scroll on the web * Add body scroll lock * Scroll to top on search * Fix types * Typos * Fix Safari overflow * Fix search positioning * Add border * Patch react navigation * Revert "Patch react navigation" This reverts commit 62516ed9c20410d166e1582b43b656c819495ddc. * fixes * scroll * scrollbar * cleanup unrelated * undo unrel * flatter * Fix css * twk
* Internationalize more strings (#2440)Stanislas Signoud2024-01-091-1/+2
| | | Co-authored-by: Ansh <anshnanda10@gmail.com>
* emoji picker improvements (#2392)Hailey2024-01-023-57/+90
| | | | | | | | | | | | | * rework emoji picker * dynamic position * always prefer the left if it will fit * add accessibility label * Update EmojiPicker.web.tsx oops. remove accessibility from fake button
* Bump react-native to 0.73.1, expo to 50 (#2214)Eric Bailey2023-12-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bump to react-native@0.73, bump expo@next Includes bumps for all expo deps and dev dependencies. Updates react-native patch and others, and removes the babel-preset-expo patch. * Remove duplicate Splash ref * Bump more deps * Properly install expo-notifications * Bump webview dep * Bump packages according to expo fix; remove pager-view patch as it is no longer needed * Don't access expo-camera from Web * Fix crypto dep on web * Fix some type issues * Build esnext modules to support dynamic imports --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* Web composer improvements (#2257)Paul Frazee2023-12-201-1/+1
| | | | | * Keep the emoji picker in the tablet width (close #1880) * Support pressing tab to select a mention (close #1831)
* Restore autofocus on emoji drop down (#1821)Elie Michel2023-12-201-1/+1
|