Skip to content

Conversation

Saadnajmi
Copy link
Collaborator

Summary:

Needs #2713 to land first.

Test Plan:

Nick Lefever and others added 23 commits October 1, 2025 15:01
Summary: Add support for `draggedTypes` to the View component, enabling the configuration of a native view as a drop target.

Test Plan:
* Run Zeratul with Fabric enabled
* Drag a file over the messages view and check that the cursor is changing indicating a drop target

 https://pxl.cl/4ldkW

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Subscribers: taskcreeper

Differential Revision: https://phabricator.intern.facebook.com/D53674739
Summary: Add the drag and drop event emitters to View with the payload conversion matching the Paper API for dragEnter/dragLeave/drop events.

Test Plan: Tested later in this stack.

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53674738
Summary: Add support for drag and drop to the `ViewComponent` for files and images. The implementation converts the dropped pasteboard items the same way as in Paper. The `DataTransferItem` resulting from the pasteboard conversion of the dragged items is used to build the JS payload for the dragEnter/dragLeave/drop events.

Test Plan:
* Run Zeratul with Fabric enabled
* Drag and drop an image on the messages view
* Send the attachment

 https://pxl.cl/4ldB7

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53674742
Nick Lefever and others added 5 commits October 6, 2025 12:32
Summary: This diff adds keyboard event handling to the TextInput component by testing the valid keys for manual keyboard event handling and dispatching key events to the View component keyboard handling method.

Test Plan:
- Run Workplace Chat with Fabric enabled.
- Open a message thread with 3 or more participants.
- Type `@` to display the reference selector.
- Change the selection with the up and down arrows and select an entry with tab to test the custom keyboard event handling.

 https://pxl.cl/4ghtH

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53241729

Tasks: T157889406, T154618477
Summary: Add support for drag and drop to the TextInput component. This re-uses the drag and drop handlers implemented on the View component to support dropping images/files on TextInput views directly.

Test Plan:
* Run Zeratul with Fabric enabled
* Drag and drop an image on the message composer
* Send the attachment

https://pxl.cl/4ldBX

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53674740
Summary: This diff refactors the data transfer item payload conversion logic to share it with `TextInputEventEmitter` paste event, allowing to implement the onPaste event emitters building the same payload as generated by the drag and drop implementation.

Test Plan: Tested later in this stack.

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53694921
Summary: Implement the file/image pasteboard pasting event for the `TextInput` component in Fabric. The payload for the event is the same as for the drag and drop events.

Test Plan:
* Run Zeratul with Fabric enabled
* Copy an image/file on the pasteboard
* Focus the message composer
* Paste the image/file and send the message

 https://pxl.cl/4lk92

Reviewers: shawndempsey, #rn-desktop

Reviewed By: shawndempsey

Differential Revision: https://phabricator.intern.facebook.com/D53694922
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants