diff --git a/.cvsignore b/.cvsignore index 77118da..b6b722a 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -alexandria-0.6.4.1.tar.gz +alexandria-0.6.5.tar.gz diff --git a/alexandria-0.6.4.1-right-click-left-pane-morefix.patch b/alexandria-0.6.4.1-right-click-left-pane-morefix.patch deleted file mode 100644 index f4459dd..0000000 --- a/alexandria-0.6.4.1-right-click-left-pane-morefix.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: lib/alexandria/ui/ui_manager.rb -=================================================================== ---- lib/alexandria/ui/ui_manager.rb (revision 1070) -+++ lib/alexandria/ui/ui_manager.rb (working copy) -@@ -335,6 +335,7 @@ - - - if library_already_selected -+ sensitize_library selected_library - Gtk.idle_add do - menu.popup(nil, nil, event.button, event.time) - false diff --git a/alexandria-0.6.4.1-right-click-left-pane.patch b/alexandria-0.6.4.1-right-click-left-pane.patch deleted file mode 100644 index a481d09..0000000 --- a/alexandria-0.6.4.1-right-click-left-pane.patch +++ /dev/null @@ -1,86 +0,0 @@ -Index: lib/alexandria/ui/callbacks.rb -=================================================================== ---- lib/alexandria/ui/callbacks.rb (revision 1067) -+++ lib/alexandria/ui/callbacks.rb (revision 1072) -@@ -19,6 +19,9 @@ - module Alexandria - module UI - module Callbacks -+ -+ include Logging -+ - def on_new widget, event - name = Library.generate_new_name(@libraries.all_libraries) - library = Library.load(name) -@@ -208,6 +211,12 @@ - def on_delete widget, event - library = selected_library - books = @library_listview.focus? ? nil : selected_books -+ is_smart = library.is_a?(SmartLibrary) -+ last_library = (@libraries.all_regular_libraries.length == 1) -+ if (!is_smart && last_library) -+ log.warn { "Attempted to delete last library, fix GUI" } -+ return -+ end - if library.empty? or ReallyDeleteDialog.new(@main_app, - library, - books).ok? -Index: lib/alexandria/ui/ui_manager.rb -=================================================================== ---- lib/alexandria/ui/ui_manager.rb (revision 1067) -+++ lib/alexandria/ui/ui_manager.rb (revision 1072) -@@ -306,6 +306,7 @@ - - if event_is_right_click event - log.debug { "library right click!" } -+ library_already_selected = true - if path = widget.get_path_at_pos(event.x, event.y) - obj, path = widget.is_a?(Gtk::TreeView) \ - ? [widget.selection, path.first] : [widget, path] -@@ -313,6 +314,7 @@ - - unless obj.path_is_selected?(path) - log.debug { "Select #{path}" } -+ library_already_selected = false - widget.unselect_all - obj.select_path(path) - end -@@ -321,10 +323,25 @@ - end - - menu = determine_library_popup widget, event -- Gtk.idle_add do -- menu.popup(nil, nil, event.button, event.time) -- false -+ -+ # Fixes part of bug #25021. -+ # -+ # If the library was not selected when it was right-clicked -+ # we should select the library first (we call on_focus -+ # manually, since the above call to obj.select_path(path) doesn't -+ # seem to suffice). -+ # -+ # Then we wait a while and only *then* pop up the menu. -+ -+ -+ if library_already_selected -+ sensitize_library selected_library -+ Gtk.idle_add do -+ menu.popup(nil, nil, event.button, event.time) -+ false -+ end - end -+ - end - end - -@@ -972,7 +989,8 @@ - @actiongroup["AddBook"].sensitive = !smart - @actiongroup["AddBookManual"].sensitive = !smart - @actiongroup["Properties"].sensitive = true -- @actiongroup["Delete"].sensitive = true #(@libraries.all_regular_libraries.length > 1) -+ can_delete = smart || (@libraries.all_regular_libraries.length > 1) -+ @actiongroup["Delete"].sensitive = can_delete ## true #(@libraries.all_regular_libraries.length > 1) - log.debug { "sensitize_library delete: #{@actiongroup["Delete"].sensitive?}" } - end - diff --git a/alexandria-0.6.5-glib_convert-syntax.patch b/alexandria-0.6.5-glib_convert-syntax.patch new file mode 100644 index 0000000..774669b --- /dev/null +++ b/alexandria-0.6.5-glib_convert-syntax.patch @@ -0,0 +1,17 @@ +Index: lib/alexandria/utils.rb +=================================================================== +--- lib/alexandria/utils.rb (revision 1085) ++++ lib/alexandria/utils.rb (working copy) +@@ -20,7 +20,11 @@ + + class String + def convert(charset_from, charset_to) +- GLib.convert(self, charset_from, charset_to) ++# ++# Ask upstream!! Perhaps from <-> to are reverse ++# http://ruby-gnome2.sourceforge.jp/hiki.cgi?GLib#GLib.convert ++# ++ GLib.convert(self, charset_to, charset_from) + end + end + diff --git a/alexandria-0.6.5-search-result-sanity-check.patch b/alexandria-0.6.5-search-result-sanity-check.patch new file mode 100644 index 0000000..257b144 --- /dev/null +++ b/alexandria-0.6.5-search-result-sanity-check.patch @@ -0,0 +1,14 @@ +Index: lib/alexandria/book_providers.rb +=================================================================== +--- lib/alexandria/book_providers.rb (revision 1085) ++++ lib/alexandria/book_providers.rb (working copy) +@@ -46,6 +46,9 @@ + self.instance.notify_observers(:searching, factory.fullname) # new + results = factory.search(criterion, type) + ++ # sanity check if at least one valid result is actually found ++ results.delete_if { |book, cover| ((!book) || (!cover)) } ++ + if results.length == 0 + self.instance.changed + self.instance.notify_observers(:not_found, factory.fullname) # new diff --git a/alexandria.spec b/alexandria.spec index ecf190c..661c8da 100644 --- a/alexandria.spec +++ b/alexandria.spec @@ -1,11 +1,11 @@ %{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']")} %define rubyabi 1.8 -%define repoid 53230 +%define repoid 62178 -%define majorver 0.6.4.1 +%define majorver 0.6.5 %undefine minorver -%define fedorarel 6 +%define fedorarel 1 %define rel %{?minorver:0.}%{fedorarel}%{?minorver:.%minorver} @@ -19,16 +19,15 @@ Group: Applications/Productivity License: GPLv2+ URL: http://alexandria.rubyforge.org/ Source0: http://rubyforge.org/frs/download.php/%{repoid}/%{name}-%{version}%{?minorver}.tar.gz -# Use 2 arguments format for bindtextdomain() instead of -# deprecated 4 arguments format -# ref: alexandria-Bugs-24882 alexandria-Bugs-24882 -Patch0: alexandria-0.6.4.1-use-2args-bindtextdomain.patch -# Fix for issue with right click on left pane -# ref: alexandria-Bugs-25021 -Patch1: alexandria-0.6.4.1-right-click-left-pane.patch # Trial fix for hang up when importing list containing invalid isdn # ref: alexandria-Bugs-25348 Patch2: alexandria-0.6.4.1-hang-importing-invalid-isdn.patch +# Need ask to upstream +# perhaps there is some confusion about GLib.convert... +Patch3: alexandria-0.6.5-glib_convert-syntax.patch +# Need ask to upstream +# Sometimes search result has empty book or cover entry +Patch4: alexandria-0.6.5-search-result-sanity-check.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch @@ -78,9 +77,9 @@ Alexandria is a GNOME application to help you manage your book collection. %prep %setup -q -n %{name}-%{majorver}%{?minorver} -%patch0 -p0 -b .up24882 -%patch1 -p0 -b .up25021 %patch2 -p0 -b .up25348 +%patch3 -p0 -b .glib +%patch4 -p0 -b .result # Embed Fedora EVR %{__sed} -i.evr \ @@ -207,6 +206,14 @@ exit 0 %{_datadir}/icons/hicolor/*/apps/%{name}.* %changelog +* Thu Aug 20 2009 Mamoru Tasaka - 0.6.5-1 +- Update to 0.6.5 +- Remove 2 upstreamed patches (1 patch still unremoved) +- Add 2 patches, will report upstream + +* Sat Jul 25 2009 Mamoru Tasaka +- F-12: Mass rebuild + * Mon Apr 13 2009 Mamoru Tasaka - 0.6.4.1-6 - Trial fix to fix hang when importing list containing invalid isdn (alexandria-Bugs-25348) diff --git a/sources b/sources index 21c965d..8fc6d4e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -80e4def0f0890460eb0689489a05c745 alexandria-0.6.4.1.tar.gz +9c8655f361e6a0c6f8cdc97f36bd2d0f alexandria-0.6.5.tar.gz