* Allow using icons from freedesktop.org icon theme for most ForkAwesome
icons if available
* Let's not use it for the nested list of details in the models for now
* See https://github.com/Martchus/syncthingtray/issues/121
* Remove `0 &&` in condition for making `QPalette` from Plasma theme
* Set `WindowText`/`Window` of `QPalette` in legacy case so
`isPaletteDark()` works
* Set the icon manager's palette from the beginning (and not only if the
Plasma theme changes)
For instance, the NetworkManager Plasmoid uses these margins for its
ListView. It looks probably better than without margins (after removing
paddings with scroll page).
It is actually just the normal marging/padding Plasmoids normally have but
with the scroll bar it doesn't look good.
The margins would be automatically collapsed if the scroll view was the
immediate content item. However, that's not the case so we need to set the
according property manually using `Plasma.Representation`.
* Make the Fork Awesome image provider URL a property and change its value
if the Plasmoid's theme changes to cause Qt Quick to redraw images
* Turn caching of Image objects off so Qt Quick actually fetches the images
again from the image provider
* Change the URL only back after returning to the event loop; otherwise Qt
Quick apparently does not react to the property change
* See https://github.com/Martchus/syncthingtray/issues/126
This should avoid:
```
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/main.qml:13:34: QML FullRepresentation: Binding loop detected for property "implicitWidth"
…
qml: PlasmaExtras.ScrollArea is deprecated. Use PlasmaComponents3.ScrollView instead.
…
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/TabButton.qml:27:13: Unable to assign [undefined] to QFont
…
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid-git/contents/ui/ToolButton.qml:23:13: Unable to assign [undefined] to QFont
```
This should prevent the following warnings:
```
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:284:17: QML DevicesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:287:17: QML DownloadsPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:290:17: QML RecentChangesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:281:17: QML DirectoriesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:284:17: QML DevicesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:287:17: QML DownloadsPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
file:///usr/share/plasma/plasmoids/martchus.syncthingplasmoid/contents/ui/FullRepresentation.qml:290:17: QML RecentChangesPage: Detected anchors on an item that is managed by a layout. This is undefined behavior; use Layout.alignment instead.
```
See https://github.com/Martchus/syncthingtray/issues/133
* Use header (with integrated buttons when shown as part of the system tray
Plasmoid)
* Use less space so it fits into the system tray plasmoid (at least on a
full HD screen with 96 dpi)
* Show action for internal errors only if there are internal errors (like
in the Qt Widgets based GUI)
* Port away from deprecated tab bar (which is not used in official
Plasmoids anymore as well)
* Simplify code for ensuring the minimum size as configured (still does
not work within the system tray Plasmoid)