The current one is printing error messages with all recent ffmpeg
installations. Printing error messages only when the old location has to
be used is less confusing for many people.
On OS X, the native file dialog is used by default when a new QFileDialog
is created. It can't be configured to select multiple directories, which
breaks the toolbar_multiselect option. If this is enabled, disable the
native file dialog on OS X.
This option is actually rather misleading, because on Windows 7 the
native file dialog is also used by default, and it can select multiple
directories just fine. However, windows only seems to use the native
dialog when the static helper functions are called, not when a
custom QFileDialog instance is created.
This reduces some of the complexity by removing the "item_to_object" and
"object_to_item" dicts, plus associated code to keep them up-to-date.
Instead items and objects are cross-referenced via instance attributes.
Most of the icons and some other variables moved to class attributes
where it made sense, so that the tree items didn't have to make ugly
and slow lookups like self.treeWidget().panel.foo.
Previously, there was some work done on Picard to make tagger script
run only after plugins finish (including requests). See:
http://bugs.musicbrainz.org/ticket/5850
However, this change caused some issues; namely, it broke all album
metadata processor plugins, because any album metadata that was
modified did not get copied back to the track metadata.
The "fix" for this was to re-copy the album metadata to every track
after album metadata processors ran, and then to run track metadata
processors. But this didn't account for network requests, so the
metadata could be re-copied before album processors that made requests
even completed.
This diff borrows changes from the bitmap-gsoc branch to reorganize the
code. Now, metadata is parsed in stages. First, album metadata is
parsed and its plugin processors are run. Next, after all requests
complete, medium and track metadata is parsed in _finalize_loading. The
track metadata plugins are run last. This should eliminate any plugin
timing issues present in the current code.
Ensure that "switch_release_version" can't load (duplicate) an album
that already exists. Currently it can, which is confusing because
Picard doesn't otherwise allow this.
'xdg-open' is a cross-desktop-environment tool that automatically
detects the appropriate web browser; use it if it is available,
preferred over the desktop environment specific tools.
This fixes the browser detection on XFCE and Gnome 3 (which no longer
includes the gnome-open tool).
This change only fixes the code for python >=2.5, I have no way of
testing older versions.