An icon theme may use variously styled icons for various types of UI
elements. For example, Breeze theme uses monochrome icons for actions
(toolbars) and statuses, but colourful for view contents. qBittorrent
was using icon names without putting attention to categories, creating
mix of styles in UI elements (i.e. the main toolbar).
This commit fixes icon names (and move some of them to theme) to avoid
this style mixes where possible.
Unfortunately, options dialog page icons for network and speed limits
are remained monochrome because there are no Breeze or Adwaita icons to
match.
An icon which is loaded from SVG file can be rendered in any size and
resolutions natively. We were generating 16x16, 24x24, and 32x32
pixmaps, and not appending but creating new icon. Therefore for SVG
icons we effectively were reducing their quality.
If icon already contains 7 (or more) sizes (16 to 256 px) we do not
resize it anymore.
If removing of added torrents is enabled and dialog for adding torrents
is disabled, file guard was assuming that torrent is added successfully.
And that can be not the case if a user trying to add a broken torrent
file (or not a torrent file at all). Then this file gets deleted always.
Fix this by checking result of addTorrent_impl().
moc from Qt4 ignores Q_ENUMS when it is behind #if QT_VERSION check.
Therefore moc entries for enum in TorrentFileGuard were not generated
and the setting was not saving/loading. This closes#6103, #5451
Count matched function names, and if there are no, point out to the user
that the stacktrace is useless. If not all stactrace elements contain
function names, suggest user that installing debug packages may improve
the stacktrace usefulness.
The QTBUG-52633 results in food of network interface changed events, libtorrent IP
rebind calls and flood in the qBt log. The work around is the check not only for
interface name, but for IP address on that interface before triggering the libtorrent rebind.