Public bug reported: Several different pieces of the system have implemented their own functions for getting the display name and icon of an app.
Examples: * Dash Apps scope * App permission prompts trust-store src/core/trust/mir/click_desktop_entry_app_info_resolver.cpp * System Settings “Storage” screen ubuntu-system-settings plugins/about/click.cpp * System Settings “App permissions” screens ubuntu-system-settings plugins/security-privacy/trust-store-model.cpp This duplication has the same basic problems as any code duplication: inconsistency, inefficiency, and insecurity. Inconsistency: For example, different parts of the OS have already had problems with inconsistent rendering of icons (bug 1363015). Inefficiency: For example, when Ubuntu Touch switches from Click to Snappy, all these pieces of code will need revamping separately. Insecurity: For example, none of these pieces of code seem to handle a name that is 10000 characters long, contains line feed characters, or contains Bidi_Control characters that cause it to overwrite the surrounding text. Defences like that should not need implementing in multiple places. The obvious solution is to have an API for returning the display name and/or icon of a given app. Maybe apps themselves should not be able to access this API for apps other than themselves (because that would give them a way of telling whether a particular app is installed). But parts of the OS should. If the UI toolkit is not the appropriate component to provide this API, please move it to the appropriate component. ** Affects: ubuntu-ui-toolkit (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu SDK bug tracking, which is subscribed to ubuntu-ui-toolkit in Ubuntu. https://bugs.launchpad.net/bugs/1555542 Title: No standard way to get an app’s name and icon Status in ubuntu-ui-toolkit package in Ubuntu: New Bug description: Several different pieces of the system have implemented their own functions for getting the display name and icon of an app. Examples: * Dash Apps scope * App permission prompts trust-store src/core/trust/mir/click_desktop_entry_app_info_resolver.cpp * System Settings “Storage” screen ubuntu-system-settings plugins/about/click.cpp * System Settings “App permissions” screens ubuntu-system-settings plugins/security-privacy/trust-store-model.cpp This duplication has the same basic problems as any code duplication: inconsistency, inefficiency, and insecurity. Inconsistency: For example, different parts of the OS have already had problems with inconsistent rendering of icons (bug 1363015). Inefficiency: For example, when Ubuntu Touch switches from Click to Snappy, all these pieces of code will need revamping separately. Insecurity: For example, none of these pieces of code seem to handle a name that is 10000 characters long, contains line feed characters, or contains Bidi_Control characters that cause it to overwrite the surrounding text. Defences like that should not need implementing in multiple places. The obvious solution is to have an API for returning the display name and/or icon of a given app. Maybe apps themselves should not be able to access this API for apps other than themselves (because that would give them a way of telling whether a particular app is installed). But parts of the OS should. If the UI toolkit is not the appropriate component to provide this API, please move it to the appropriate component. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-ui-toolkit/+bug/1555542/+subscriptions -- Mailing list: https://launchpad.net/~ubuntu-sdk-bugs Post to : ubuntu-sdk-bugs@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-sdk-bugs More help : https://help.launchpad.net/ListHelp