This includes refactoring TrayWidget::applySettings() which
is now a member function and only affects the current instance.
This prevents applying settings on every instance every time
a new tray widget is created.
To apply settings for all tray widgets, the static function
TrayWidget::applySettingsOnAllInstances() is used instead.