Bug 1467792 - [Wayland] child pop-up menu clicking issues on weston
[Wayland] child pop-up menu clicking issues on weston
Status: NEW
Product: Fedora
Classification: Fedora
Component: firefox (Show other bugs)
27
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Martin Stransky
Fedora Extras Quality Assurance
:
Depends On:
Blocks: 1054334
  Show dependency treegraph
 
Reported: 2017-07-05 03:40 EDT by Hiroshi Hatake
Modified: 2017-08-15 05:28 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Patch for to enable to handle clicking events in popup menu on weston. (3.27 KB, patch)
2017-07-10 04:34 EDT, Hiroshi Hatake
no flags Details | Diff

  None (edit)
Description Hiroshi Hatake 2017-07-05 03:40:01 EDT
How reproducible:

https://github.com/stransky/gecko-dev

1. Bookmarks -> Show All Bookmarks

2. And then click this menu.

Actual results:

No response when clicking popup and its child menus

Expected results:

Clicking events should handle them.

Additional info:

Environment
---

Fedora rawhide (26 beta) amd64

* gtk3-3.22.16-1.fc26.x86_64
* wayland-devel-1.13.0-1.fc26.x86_64
* mesa-libwayland-egl-17.1.4-1.fc26.x86_64
* wayland-protocols-devel-1.7-2.fc26.noarch
* using self built stransky/gecko-dev (rev. https://github.com/stransky/gecko-dev/commit/de7ad4e633e6acb32a2a0d1403ef1a8c0539ad95)

This issue is a side effect by Bug 1466377?
Comment 1 Hiroshi Hatake 2017-07-05 03:45:32 EDT
Ah, I've forgot to add comment about when using gnome-shell.
Using gnome-shell is work for me.
This issue is only for weston including 2.0.0-1.fc26.x86_64.
Comment 2 Hiroshi Hatake 2017-07-06 02:00:38 EDT
I've also confirmed that using GDK_WINDOW_TYPE_HINT_POPUP_MENU as gtkTypeHint can handle clicking but cannot handle child menu on weston.
Using GDK_WINDOW_TYPE_HINT_UTILITY as gtkTypeHint can handle child menu but cannot handle on weston.
Comment 3 Hiroshi Hatake 2017-07-06 02:16:57 EDT
When using firefox-wayland-56.1-1.fc26.x86_64, I got same result to comment #0.
Comment 4 Hiroshi Hatake 2017-07-06 04:07:12 EDT
And I confirmed that keyboard events can be handled by popup menus and its child when using GDK_WINDOW_TYPE_HINT_UTILITY.
Comment 5 Hiroshi Hatake 2017-07-06 04:26:12 EDT
When settting ui.popup.disable_autohide as true, it works for me.
This Bug caused by wrong handling for ui.popup.disable_autohide on weston?
Comment 6 Hiroshi Hatake 2017-07-07 05:09:46 EDT
Or another way to re-enable to handle cliking event on weston as below:

Reoving !this._identityPopup.hasAttribute("noautohide") clause from https://dxr.mozilla.org/mozilla-central/source/browser/base/content/browser.js#7652 solves unhandled clicking issue on weston.
But both of ways seems to be unnatural for me.
Comment 7 Hiroshi Hatake 2017-07-10 04:34 EDT
Created attachment 1295729 [details]
Patch for to enable to handle clicking events in popup menu on weston.

Without this patch, I encountered not to be handled clicking events in popup menus on Weston even if weston 2.0.0.
With this patch, clicking events in popup menus works for me.

But I'm not fully understand why this patch enables to handle clicking events for popups.
Comment 8 Martin Stransky 2017-07-10 07:05:16 EDT
It may be a regression from Bug 1466377 which updates the noautohide popups.
Comment 9 Martin Stransky 2017-07-10 07:54:22 EDT
I just tested latest gecko-dev and weston-2.0.0-1.fc26.x86_64 and the bookmark example works for me. Do you still see that?
Comment 10 Martin Stransky 2017-07-10 07:54:46 EDT
I also have gtk3-3.22.16-1.1.fc26.x86_64 installed.
Comment 11 Hiroshi Hatake 2017-07-10 22:31:39 EDT
(In reply to Martin Stransky from comment #9)
> I just tested latest gecko-dev and weston-2.0.0-1.fc26.x86_64 and the
> bookmark example works for me. Do you still see that?

Yes, I do.
I still see this issue on Fedora 26 and weston-2.0.0-1.fc26.x86_64.

And with the following prefs.js which contains any debugging purpose settings:


```
# Mozilla User Preferences

/* Do not edit this file.
 *
 * If you make changes to this file while the application is running,
 * the changes will be overwritten when the application exits.
 *
 * To make a manual change to preferences, you can visit the URL about:config
 */

user_pref("app.update.lastUpdateTime.addon-background-update-timer", 0);
user_pref("app.update.lastUpdateTime.background-update-timer", 0);
user_pref("app.update.lastUpdateTime.blocklist-background-update-timer", 0);
user_pref("app.update.lastUpdateTime.browser-cleanup-thumbnails", 1499739809);
user_pref("app.update.lastUpdateTime.experiments-update-timer", 0);
user_pref("app.update.lastUpdateTime.search-engine-update-timer", 0);
user_pref("app.update.lastUpdateTime.xpi-signature-verification", 0);
user_pref("browser.bookmarks.restore_default_bookmarks", false);
user_pref("browser.bookmarks.showMobileBookmarks", false);
user_pref("browser.cache.disk.capacity", 1048576);
user_pref("browser.cache.disk.filesystem_reported", 1);
user_pref("browser.cache.disk.smart_size.first_run", false);
user_pref("browser.cache.frecency_experiment", 3);
user_pref("browser.laterrun.bookkeeping.profileCreationTime", 1499739779);
user_pref("browser.laterrun.bookkeeping.sessionCount", 1);
user_pref("browser.laterrun.enabled", true);
user_pref("browser.migration.version", 48);
user_pref("browser.newtabpage.enhanced", true);
user_pref("browser.newtabpage.storageVersion", 1);
user_pref("browser.onboarding.notification.lastPrompted", "onboarding-tour-private-browsing");
user_pref("browser.pagethumbnails.storage_version", 3);
user_pref("browser.places.smartBookmarksVersion", 8);
user_pref("browser.safebrowsing.provider.mozilla.lastupdatetime", "1499739800458");
user_pref("browser.safebrowsing.provider.mozilla.nextupdatetime", "1499743400458");
user_pref("browser.search.countryCode", "JP");
user_pref("browser.search.region", "JP");
user_pref("browser.selfsupport.enabled", false);
user_pref("browser.slowStartup.averageTime", 19866);
user_pref("browser.slowStartup.samples", 1);
user_pref("browser.startup.homepage_override.buildID", "20170711105538");
user_pref("browser.startup.homepage_override.mstone", "56.0a1");
user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[],\"addon-bar\":[\"addonbar-closebutton\",\"status-bar\"],\"PersonalToolbar\":[\"personal-bookmarks\"],\"nav-bar\":[\"urlbar-container\",\"search-container\",\"bookmarks-menu-button\",\"downloads-button\",\"home-button\",\"sidebar-button\",\"pocket-button\",\"screenshots_mozilla_org-browser-action\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"toolbar-menubar\":[\"menubar-items\"]},\"seen\":[\"pocket-button\",\"webcompat-reporter-button\",\"developer-button\",\"webide-button\",\"screenshots_mozilla_org-browser-action\"],\"dirtyAreaCache\":[\"PersonalToolbar\",\"nav-bar\",\"TabsToolbar\",\"toolbar-menubar\"],\"currentVersion\":6,\"newElementCount\":0}");
user_pref("datareporting.policy.dataSubmissionPolicyAcceptedVersion", 2);
user_pref("datareporting.policy.dataSubmissionPolicyNotifiedTime", "1499739804495");
user_pref("e10s.rollout.cohort", "unsupportedChannel");
user_pref("experiments.activeExperiment", false);
user_pref("extensions.blocklist.pingCountVersion", 0);
user_pref("extensions.databaseSchema", 21);
user_pref("extensions.e10s.rollout.hasAddon", false);
user_pref("extensions.e10sBlockedByAddons", false);
user_pref("extensions.e10sMultiBlockedByAddons", false);
user_pref("extensions.getAddons.databaseSchema", 5);
user_pref("extensions.lastAppVersion", "56.0a1");
user_pref("extensions.lastPlatformVersion", "56.0a1");
user_pref("extensions.pendingOperations", false);
user_pref("extensions.shield-recipe-client.api_url", "https://normandy.cdn.mozilla.net/api/v1");
user_pref("extensions.shield-recipe-client.dev_mode", false);
user_pref("extensions.shield-recipe-client.enabled", true);
user_pref("extensions.shield-recipe-client.logging.level", 50);
user_pref("extensions.shield-recipe-client.run_interval_seconds", 86400);
user_pref("extensions.shield-recipe-client.startup_delay_seconds", 300);
user_pref("extensions.shield-recipe-client.user_id", "");
user_pref("extensions.systemAddonSet", "{\"schema\":1,\"addons\":{}}");
user_pref("extensions.webextensions.uuids", "{\"screenshots@mozilla.org\":\"4c99ee95-d223-453f-9384-7abbced7ecb2\"}");
user_pref("gecko.handlerService.migrated", true);
user_pref("media.gmp-gmpopenh264.abi", "x86_64-gcc3");
user_pref("media.gmp-gmpopenh264.lastUpdate", 1499739815);
user_pref("media.gmp-gmpopenh264.version", "1.6");
user_pref("media.gmp-manager.buildID", "20170711105538");
user_pref("media.gmp-manager.lastCheck", 1499739806);
user_pref("media.gmp.storage.version.observed", 1);
user_pref("network.cookie.prefsMigrated", true);
user_pref("pdfjs.migrationVersion", 2);
user_pref("pdfjs.previousHandler.alwaysAskBeforeHandling", true);
user_pref("pdfjs.previousHandler.preferredAction", 4);
user_pref("places.history.expiration.transient_current_max_pages", 104858);
user_pref("plugin.disable_full_page_plugin_for_types", "application/pdf");
user_pref("signon.importedFromSqlite", true);
user_pref("toolkit.startup.last_success", 1499739770);
user_pref("toolkit.startup.recent_crashes", 1);
user_pref("toolkit.telemetry.previousBuildID", "20170711105538");
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
```

When setting ui.popup.disable_autohide as true, it works for me.
Comment 12 Hiroshi Hatake 2017-07-10 22:33:47 EDT
And I also use gtk3-3.22.16-1.fc26.x86_64.
Comment 13 Hiroshi Hatake 2017-07-11 05:38:22 EDT
Comment on attachment 1295729 [details]
Patch for to enable to handle clicking events in popup menu on weston.

I've noticed that this patch causes SEGV on a key press.
This approach seems to be wrong.
Comment 14 Jan Kurik 2017-08-15 05:28:45 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 27 development cycle.
Changing version to '27'.

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