Public bug reported:

The on_driver_selection_changed method in SoftwarePropertiesQt.py was
incorrectly ported from the GTK frontend, preventing driver
installation.

Qt's toggled signal passes a bool, unlike GTK which passes the widget.
The code used functools.partial to pre-bind arguments, so the bool was
either passed as an extra positional argument (causing a TypeError) or
misinterpreted as a package name (causing a KeyError). The method also
called self.userinterface.sender() to get the radio button, but
self.userinterface is the wrong QObject, so it returns None.
Additionally, a typo ("manually_install" instead of
"manually_installed") caused wrong signal wiring for some buttons.

The net effect is that driver_changes is never populated, so the Apply
button stays disabled and no packages are sent to PackageKit.

Fix: accept the button as an explicit parameter instead of using
sender(), use lambdas instead of partial to absorb the bool from
toggled, and fix the typo.

** Affects: software-properties (Ubuntu)
     Importance: High
     Assignee: Erich Eickmeyer (eeickmeyer)
         Status: In Progress


** Tags: resolute

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2147067

Title:
  Qt Additional Drivers tab cannot install drivers

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/2147067/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to