Here is a screen cast recording for better illustration. ** Description changed:
- The value of "WwanEnabled" under "org.freedesktop.NetworkManager" is not - synced correctly, which will lead to a airplane mode switching failure - when host has WWAN device(s). + [ Impact ] - There is a MR on the upstream project, which can solve this bug. - https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/310 + * Sometimes on devices with WWAN card, whenever user presses the + wireless function key (Fn+F8) or turn on the airplane mode radio button + in Settings, the airplane mode will not be enabled, and the airplane + mode icon is not shown in the status bar. - The description copied from the MR: + * There is a unmerged upstream merge request that delivers the fix: + https://gitlab.gnome.org/GNOME/gnome-settings- + daemon/-/merge_requests/310 - g-signal is not fired on property changes, so nm_signal is never called, - and all changes of NetworkManager's WwanEnabled property are missed. - That leads to an inability to disable the airplane mode on laptops with - WWAN after the airplane mode was once enabled by button. + It works perfectly well on several Lenovo laptops with WWAN cards. + The root causes is that the value of "WwanEnabled" under "org.freedesktop.NetworkManager" is not synced correctly, gsd-rfkill should listen to "g-properties-changed" instead of "g-signal" now. - Fix this by subscribing to g-properties-changed to actually listen to - the updates of WwanEnabled. It also makes the code simpler. + [ Test Plan ] - ================================== + 1. Find a machine which has WWAN card. + 2. Boot the machine, and run rfkill list to see if WWAN is unblocked. if not use rfkill to unblock the WWAN, and reboot. + 3. Press the wireless media key (Fn+F8) or turn on the airplane mode radio button in Settings. + 4. The airplane mode should be enabled, but actually not. + + [ Where problems could occur ] + + * When user is using a very low version network-manager that still + broadcasting DBUS "PropertiesChanged" events on "g-signal" instead of + the concurrent "g-properties-changed", the airplane mode will sometimes + not be able to enable. + + [ Other Info ] 1. About Ubuntu Description: Ubuntu 22.04.2 LTS Release: 22.04 + Kernel: 6.1.0-1007-oem 2. The version of packages: - gnome-settings-daemon: - Installed: 42.1-1ubuntu2.1 + Installed: 42.1-1ubuntu2.1 network-manager: - Installed: 1.36.6-0ubuntu2 + Installed: 1.36.6-0ubuntu2 3. Expect: The function nm_signal(plugins/rfkill/gsd-rfkill-manager.c) is called, and manager->wwan_enabled is set to the correct value. 4. Actual: The function nm_signal(plugins/rfkill/gsd-rfkill-manager.c) is never called, so manager->wwan_enabled is not synced, If machine has WWAN device(s), and the initial value of manager->wwan_enabled is true, it will never be able to switch to airplane mode. ** Attachment added: "cannot-enable-ariplane-mode.webm" https://bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/2011770/+attachment/5654814/+files/cannot-enable-ariplane-mode.webm -- You received this bug notification because you are a member of Ubuntu Desktop Bugs, which is subscribed to gnome-settings-daemon in Ubuntu. https://bugs.launchpad.net/bugs/2011770 Title: [gsd-rfkill] WwanEnabled never get synced To manage notifications about this bug go to: https://bugs.launchpad.net/oem-priority/+bug/2011770/+subscriptions -- desktop-bugs mailing list desktop-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/desktop-bugs