I have tweaked the layout of application a little bit. Some tweaks come from my head and others mainly from my GSoC mentor.
Fixing issues
My mentor Josef Skladanka added issue that bugs should not be opening in browser after single click. It’s a little disturbing and user may not know what’s happening. I’ve changed this behavior to double-click opening. I think this solution should be enhanced because double click is still not good enough. You can see the change in this commit.
Next Josef’s issue was about sorting of comments. QTreeWidget supports sorting but if I want to sort numbers (as order of comment) it sorts it as text – not as number. This is really a problem and I had to overwrite method __lt__() of QtGui.QTreeWidgetItem.
def __lt__(self, otherItem):
column = self.treeWidget().sortColumn()
try:
return float( self.text(column) ) > float( otherItem.text(column) )
except ValueError:
return self.text(column) > otherItem.text(column)
Another issue pointed out vertical alignment of first three columns in comments. It’s fixed too and it really looks better now.
The next is addition is in adding comments. I’ve moved text inputs to another tab. Now it looks like this:
Fedora Gooey Karma now supports adding comments to Bodhi so you can use this app for adding karma. 🙂
List of packages can be filtered for packages which does not have submitted karma from provided user. This feature was in layout but not working. This bug is fixed now and you can use it for easier navigation in packages.
Available packages
A big step in Fedora Gooey Karma development are available packages. This feature should be able to filter out packages which the user has installed but there is newer build in Bodhi. Thanks to this user can browse what’s new in newer build easily.
There will be button to update to this version in near future.
Layout remake
I think left side of layout was a little messy. I’ve decided to split it to 3 main parts. Top part is called Filter and contains search box, karma username filter and buttons to switch between installed and available packages. The middle part is just list of (already filtered) packages. Finally the bottom part is control panel for loading packages where user can specify release number and number of “package-oldness” days.