Package: picard
Version: 0.9.0-3
Severity: normal
Tags: patch

There is a known bug[1] in Picard that causes the file browser tree on
the left hand side to collapse on some window events. A working patch is
available[2].

I applied this patched successfully to the 0.9.0-2 version without any
modification of the package source. In version 0.9.0-3 I had to change

#include <avcodec.h>
#include <avformat.h>

to

#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>

in picard/musicdns/avcodec.c to build the package. This is probably due
to some changes of libavcodec and libavformat in unstable, I'm not sure.

It would be really nice if the patch could be included in the official
Debian package.

[1] http://bugs.musicbrainz.org/ticket/3467
[2] 
http://bugs.musicbrainz.org/attachment/ticket/3467/picard-filebrowser-collapse.patch

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.25-2-686 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages picard depends on:
ii  libavcodec51              3:20080610-0.0 library to encode decode multimedi
ii  libavformat52             3:20080610-0.0 ffmpeg file format library
ii  libc6                     2.7-12         GNU C Library: Shared libraries
ii  libdiscid0                0.1.0-1        Library for creating MusicBrainz D
ii  libfftw3-3                3.1.2-3.1      library for computing Fast Fourier
ii  libgcc1                   1:4.3.1-2      GCC support library
ii  libofa0                   0.9.3-3        Library for acoustic fingerprintin
ii  libstdc++6                4.3.1-2        The GNU Standard C++ Library v3
ii  python                    2.5.2-1        An interactive high-level object-o
ii  python-ctypes             1.0.2-5        Python package to create and manip
ii  python-mutagen            1.14-1         audio metadata editing library
ii  python-qt4                4.4.2-1        Python bindings for Qt4
ii  python-support            0.8.1          automated rebuilding support for P

picard recommends no packages.

-- no debconf information


Greetings,
Frank
=== modified file 'picard/ui/filebrowser.py'
--- picard/ui/filebrowser.py    2008-03-28 09:38:10 +0000
+++ picard/ui/filebrowser.py    2008-04-20 10:44:01 +0000
@@ -39,9 +39,11 @@
         self.addAction(self.refresh_action)
         self.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu)
 
-    def showEvent(self, event):
         self._set_model()
         self._restore_state()
+
+    def showEvent(self, event):
+        self.refresh()
         QtGui.QTreeView.showEvent(self, event)
 
     def _set_model(self):
@@ -77,6 +79,8 @@
     def refresh(self):
         for index in self.selectedIndexes():
             self.dirmodel.refresh(index)
+            self.scrollTo(index)
+            self.expand(index)
 
     def save_state(self):
         indexes = self.selectedIndexes()
@@ -93,6 +97,5 @@
             path = find_existing_path(unicode(path))
             index = self.dirmodel.index(path)
             self.selectionModel().select(index, 
QtGui.QItemSelectionModel.SelectCurrent)
-            while index.isValid():
-                self.expand(index)
-                index = index.parent()
+            self.scrollTo(index)
+            self.expand(index)

Reply via email to