Skip to content

desktop-icons: Fix stuck grab issue with rubber banding

The desktop icons extension can get into a state where the desktop no longer takes mouse input.

This happens if a user starts a rubber banding operation and then drags the mouse to somewhere on screen that has a pop up menu, and then pops the menu up.

This commit addresses the bug by limiting the grab actor to the backgrounds, and by explicitly ending the rubber banding operation when one of the icons own menus is shown.

One side effect of limiting the grab actor to the backgrounds, is the rubber banding code never gets to see motion outside of the backgrounds anymore. In order to keep drag operations feeling fluid when the user moves toward the edge of the screen, this commit also overrides the grab helpers captured-event handler so those motion events keep coming.

We also start to end the rubber band if for any reason the grab it had was released.

Merge request reports