Upgrading Widgets from plasma-workspace

Pavel mars at altlinux.org
Wed Mar 13 08:57:32 GMT 2019


Any ideas would be greatly appreciated!


04.03.2019 15:55, Pavel:
> Good day. Need your help.
>  I am Upgrading Widgets from plasma-workspace and faced a number of 
> problems.
>  I will show the modernization goals using the example of the 
> diskactivity widget, designed to visualize hard drive activity:
>
>  1) At the moment when the widget is first loaded after installation, 
> all the checkboxes are selected in the settings (checked = true).
>   - It is necessary to make the widget display only real disk devices 
> (not virtual, not loop or ram) by default.
>
>  2) When the user tries to disable all checkboxes in the widget 
> settings, this does not work. After the last checkbox is turned off, 
> all checkboxes are turned on again (the default mode). I can’t disable 
> all checkboxes at the same time.
>   - I need to make sure that after disabling all settings the widget 
> is empty.
>
>   I decided to do this using the widget's initialization flag 
> (widget_initialized). By default, widget_initialized = false.
> When you first start the widget, when it has loaded all its settings, 
> the value of the flag widget_initialized = true is set to 
> Component.onCompleted.
> And if the widget_initialized flag is set to true, then all subsequent 
> changes are considered to be made by the user.
> The widget_initialized flag allows to distinguish the first launch of 
> the widget from the case when the user cleared all settings.
>
>  Is there any other way to do this? Suppose using the API? Is there 
> any specialized API that allows you to achieve a similar result? 
> Preferably available from QML. Or maybe this API can be added somewhere?
>
>  Thank you!
>
>
-- 
With best regards, Pavel Moseev

mars at basealt.ru
mars at altlinux.org



More information about the Plasma-devel mailing list