Open Bug 1919554 Opened 1 month ago Updated 15 days ago

Dragged text is not dropped on reddit.com

Categories

(Firefox :: Data Loss Prevention, defect)

Firefox 132
Desktop
Windows
defect

Tracking

()

Tracking Status
firefox-esr115 --- unaffected
firefox-esr128 --- disabled
firefox130 --- disabled
firefox131 --- disabled
firefox132 --- disabled
firefox133 --- affected

People

(Reporter: bhidecuti, Unassigned)

References

(Blocks 2 open bugs, Regression)

Details

(Keywords: regression)

Attachments

(1 file)

Found in

  • 132.0a1 (2024-09-18)

Affected versions

  • 132.0a1

Preconditions

  • Download the DLP test assets from https://drive.google.com/file/d/1yjqVRuxdKV3WnO7D2wzMgDXBuYBxUgVw/view
  • Create a distribution folder inside the Firefox folder and paste the policies-1.json to it and then rename it to policies.json
  • Run the DLP agent in CMD using: .\content_analysis_sdk_agent.exe --user --toblock=.\d{3}-?\d{2}-?\d{4}. --towarn=.warn. --delays=10

Tested platforms

  • Affected platforms: Windows 10/11
  • Unaffected platforms: Ubuntu, macOS

Steps to reproduce

  1. Enter any random text in Notepad (or any similar app)
  2. Open Firefox and go to reddit.com
  3. Drag and drop the text entered at step 1 into the search bar (top of the page)
  4. Observe the behavior

Expected result

  • The dragged text is dropped into the search bar (as reddit.com is part of the AllowUrlRegexList and any content should be allowed)

Actual result

  • The dragged text is not dropped into the search bar

Regression range

  • This probably happens after bug 1910452. I will set it as the regressor. Please remove it if it incorrect

Additional notes

  • Not reproducing if using different URLs for the AllowUrlRegexList
  • Also, if reddit.com is not part of the AllowUrlRegexList, the dragged text is analyzed but is still not dropped (when allowed)
  • See the attached video

:handyman, since you are the author of the regressor, bug 1910452, could you take a look?

For more information, please visit BugBot documentation.

Flags: needinfo?(davidp99)

I'll take a look, possibly related to bug 1919537

Assignee: nobody → gstoll
Status: NEW → ASSIGNED
Flags: needinfo?(davidp99)

Sadly the fix to bug 1919537 did not have an effect on this. I'm putting this back to focus on other things.

Note that when I dropped text on the reddit search bar it redirected me as if I had dropped the text on the Awesome Bar.

Assignee: gstoll → nobody
Status: ASSIGNED → NEW

I am also able to reproduce this in about:logins.

Set release status flags based on info from the regressing bug 1910452

Without using the allow url list, I don't see text that passes CA being dropped on the reddit.com search bar. I do see text dropped in other places on the site, like the "Username or email" field on the login screen. It's just the search bar that doesn't get the contents. Coordinates in BrowserChild::RecvStoreDropTargetAndDelayEndDragSession look to be correct at first glance. Same for about:logins.

A profile from dropping on about:logins, with contentanalysis and WidgetDragEvent logs, and a couple of extra messages added: https://share.firefox.dev/3XYukOn

At 3.978 seconds the delayed drop behavior begins. There is some paint refresh behavior, then, while the drop is supposed to be sent, the EventStateManager::PreHandleEvent produces this warning:

NS_DebugBreak — WARNING: aTargetFrame should be related with aTargetContent

so the page is doing something that disconnects the frame from content between when we find it (BrowserChild::RecvStoreDropTargetAndDelayEndDragSession) and when we send the event to it (BrowserChild::RecvDispatchToDropTargetAndResumeEndDragSession).

This appears to be about elements in a Shadow DOM. I assume it happens with any elements in one. I'm still not clear on if the problem originates during the WidgetQueryEvent or during the dispatch of the delayed drop.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: