about summary refs log tree commit diff
path: root/src/view/com/composer/text-input/TextInput.web.tsx
Commit message (Collapse)AuthorAgeFilesLines
* Close web mention suggestions popup on `Escape` (#8605)Samuel Newman2025-08-281-55/+49
| | | | | | | | | | | | | * alf web typeahead * fix type error * fix escape behaviour * change selection on hover * rm React. * undo random change
* don't override backspace if alt or meta key (#8855)Samuel Newman2025-08-151-1/+5
|
* Fix deletion of composed emojis in web composer (#8829)Arturo Fonseca2025-08-131-1/+20
|
* fix whitespace collapse (#8659)Samuel Newman2025-07-171-1/+3
|
* Keep all radix dependencies aligned by using single package (#8219)Samuel Newman2025-04-241-3/+3
| | | | | | | * keep all radix deps aligned by using single package * import directly from `radix-ui` or `radix-ui/internal` * prevent radix leaking into native build
* 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 Fast Refresh in <Text> files (#6609)dan2024-11-211-1/+1
| | | | | | | | | | | * Separate non-components from components * Mark old Text as deprecated * Move emoji utilities to non-React file * Fix type * Fix import
* Composer UI fixes (#6065)dan2024-11-011-1/+6
| | | | | | | | | * 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-011-4/+20
|
* 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
* Make composer min height conditional and align attachments (#5976)dan2024-10-281-0/+9
| | | | | | | * Make web composer min height condiitonal * Fix alignment * Fix alignment on mobile
* Split composer into smaller components (#5941)dan2024-10-251-5/+5
| | | | | | | | | | | | | | | * Extract ComposerTopBar * Rename state variables to align with props * Extract ComposerEmbeds * Extract ComposerPills * Extract ComposerFooter * Tweak condition to be simpler * Extract ComposerPost
* [Neue] Ligatures & composer (#5427)Eric Bailey2024-09-191-4/+26
| | | | | | | | | * 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-061-3/+1
| | | | | Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: Adrov Igor <nucleartux@gmail.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-241-22/+16
| | | | | * Rewrite the link detection * Handle parens and colons
* Remove unnecessary `.trimEnd()` and fix facet detection (#3672)Hailey2024-04-241-9/+20
| | | | | | | | | | | | | | | * 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-161-23/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Add tags and mute words (#2968)Eric Bailey2024-02-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* 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)
* Tweak positioningPaul Frazee2024-01-221-1/+3
|
* 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
|
* emoji picker improvements (#2392)Hailey2024-01-021-0/+5
| | | | | | | | | | | | | * 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
* Hackfix to composer focus on web (#2057)Paul Frazee2023-12-031-0/+10
|
* Autocomplete updates (react-query refactor) (#1911)Paul Frazee2023-11-151-12/+2
| | | | | | | | | | | | | * Unify the autocomplete code; drop fuse * Persist autocomplete results while they're in progress * Commit lockfile * Use ReturnType helper --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Composer update (react-query refactor) (#1899)Paul Frazee2023-11-141-5/+15
| | | | | | | | | * Move composer state to a context * Rework composer to use RQ --------- Co-authored-by: Eric Bailey <git@esb.lol>
* Dont trim before posting (close #1621) (#1622)Paul Frazee2023-10-051-1/+1
| | | | | * Dont trim before posting (close #1621) * Tweak: do trim end
* fix link highlighting with mention present (#1544)Eric Bailey2023-09-271-73/+23
|
* composer: inhibit Cmd-Enter from inputting newline (#1421)uakci2023-09-111-0/+1
|
* Add ESLint React plugin (#1412)dan2023-09-071-112/+107
| | | | | * Add eslint-plugin-react * Enable display name rule
* Fix caret jumps for web composer (#1374)dan2023-09-051-5/+2
| | | | | * Fix caret jumps for web composer * Autofocus at the end on mount
* Replace web editor link behavior (#1319)Paul Frazee2023-08-281-26/+17
| | | | | * Replace web editor link behavior (close #1293) (close #1292) * Update link decorator to match rich text link detector
* [APP-836] Emoji picker for web (#1254)Ansh2023-08-231-12/+25
| | | | | | | | | | | | | | | | | | | | | | | | | * add emoji-mart package for emoji dropdown picker * remove emoji picker modal * load emoji mart data not as part of the main bundle * remove @emoji-mart/data * setup emoji insertion with events * get emoji data from local static assets * close emoji picker after one emoji has been inserted * Switch emoji picker trigger to an icon * Update emoji-mart-data.js * make grabbing emoji data work on more browsers --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* [APP-834] Allow @ing someone in post directly from profile (#1241)Ansh2023-08-221-1/+59
| | | | | * setup `initMention` for mobile * setup creating post with profile tagged on web
* Update the web composer textinput to an emitter (close #1193) (#1205)Paul Frazee2023-08-171-9/+22
| | | | | | | The tiptap useEditor() hook creates an awkward challenge for passing event handlers into its plugins and native events. By introducing a memoized editor, we should be able to shuttle events out of tiptap without retriggering the useEditor hook. The emitter can then change its registered handlers with each state update.
* A set of composer fixes (#1187)Paul Frazee2023-08-161-0/+2
| | | | | | | * Don't insert a newline on cmd+entrl (close #1173) * Don't linkify selected text on url-paste (close #1149) * Disable the adult content controls if there is no media on the post (close #1169)
* Shorten links in composer to reduce char usage (#1188)Paul Frazee2023-08-161-0/+1
| | | | | | | * Modify toShortUrl() to always include the full domain * Shorten links in the composer to save on characters * Apply some limits to the link card suggester
* Fix hardbreak formattingrenahlee2023-05-051-0/+2
|
* Add keyboard shortcuts: new, escape, and hard break (#552)Ollie H2023-05-021-0/+2
| | | | | | | | | | | | | | | | | | | | | * Add keyboard shortcuts: new, escape, and hard break * Add preferences modal * Remove code accidentally re-added due to rebase * Fix incorrect copy and lint * Put stuff back so diffs are clearer * Re-add invite codes to settings * Address comments * Tune the copy --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* React Native accessibility (#539)Ollie H2023-05-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * React Native accessibility * First round of changes * Latest update * Checkpoint * Wrap up * Lint * Remove unhelpful image hints * Fix navigation * Fix rebase and lint * Mitigate an known issue with the password entry in login * Fix composer dismiss * Remove focus on input elements for web * Remove i and npm * pls work * Remove stray declaration * Regenerate yarn.lock --------- Co-authored-by: Paul Frazee <pfrazee@gmail.com>