I suppose this could be fixed in at least a couple of ways: - implementing the escapePressed handler on the top-level Popover element, instead of on its foreground child (I just did a quick test and it seems that in this case, if overriden, both the original handler and the override are called, not sure whether that’s intended or a bug in QML, but in any case that would work for our use case)
- adding a cancel() or escape() signal on the popover which would be emitted when ESC is pressed, thus allowing embedders to do specific processing, while keeping the default behaviour of closing the popover -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to ubuntu-ui-toolkit in Ubuntu. https://bugs.launchpad.net/bugs/1546677 Title: Popovers doesn’t allow overriding onEscapePressed Status in ubuntu-ui-toolkit package in Ubuntu: New Bug description: With the fix for bug #1523828, popovers are automatically closed when ESC is pressed. This is a good default behaviour, however the implementation is unfortunate: because the escapePressed handler is defined on the foreground (a child item of the root popover), app developers don’t get a chance to override it. Here’s a concrete use case: in the browser, when bookmarking a page with Ctrl+D, a popover with bookmark options is shown. We want the Enter key to validate the options and save the bookmark, and the ESC key to remove the bookmark. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-ui-toolkit/+bug/1546677/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp

