With some apps, firefox specifically, it's possible to enter a dnd positive feedback loop, e.g.
- kwin sends wl_data_offer::action event
- the app reacts to it and calls wl_data_offer::set_actions() with the same actions
- kwin re-sends the wl_data_offer::action event because DataOfferInterface::dragAndDropActionsChanged() has been emitted
- the app calls wl_data_offer::set_actions() again, and so on...
This should make D&D in Firefox more responsive.