Re: [Openlp-core] [Merge] lp:~oliwee/openlp/HideBibleVerses into lp:openlp
There should be a link to resubmit (top right) -- https://code.launchpad.net/~oliwee/openlp/HideBibleVerses/+merge/179526 Your team OpenLP Core is requested to review the proposed merge of lp:~oliwee/openlp/HideBibleVerses into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: OpenLP Core (openlp-core) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179567 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179567 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-10 10:21:35 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-10 10:21:35 + @@ -0,0 +1,59 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog (#1209515) + +import logging +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): +def __init__(self): +QtGui.QFileDialog.__init__(self) + +def getOpenFileNames(self, parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +if not os.path.exists(file): +file = urllib.unquote(unicode(file)) +if not os.path.exists(file): +QtGui.QMessageBox.information(self, +UiStrings().FNFT, +UiStrings().FNF % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-10 10:21:35 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add
[Openlp-core] [Bug 1209515] Re: getFileNames corrupts file names that use special chars
Reported to Qt: https://bugreports.qt-project.org/browse/QTBUG-32897 ** Branch linked: lp:~phill-ridout/openlp/1209515_2.0 ** Changed in: openlp/2.0 Assignee: (unassigned) = Phill (phill-ridout) ** Changed in: openlp/2.0 Status: Confirmed = In Progress -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1209515 Title: getFileNames corrupts file names that use special chars Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: New Bug description: This is a little bit of a strange one. I have written a little script which demonstrates this (I'll include it when I get home). Here's the issue: Use QFileDialog.getFileNames() to select a single file with a special char in its name (a '#' will do it) and it returns the file name path correctly. Ie selecting a file called #123.xml returns a list with one item #123.xml However, use QFileDialog.getFileNames() to select multiple files with at lease one file with special char in its name (a '#' will do it) and it returns the file name path incorrectly. Ie selecting a file called #123.xml and a file called abc.xml returns a list with two items %23123.xml abc.xml (Note the # has been changed in to a %23. Possible url encoding?) When we come to open the file, Python cannot find the file %23123.xml because it does not exist. This seams to be a Qt bug (I've done a few searches, but found nothing) but we could at least make some effort to see if the file actually exists before trying to open it! Reported here: http://support.openlp.org/issues/2056 and here: http://support.openlp.org/issues/1964 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1209515/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1210774] Re: wrong links on forum page
Hey Oliver, I don't see what the issue is here. Both sets of links point to the same page. Could you be a bit clear about which links too? The ones on the top menu bar, in the navigation on the right? ** Also affects: openlp/website Importance: Undecided Status: New ** Changed in: openlp Status: New = Invalid ** Changed in: openlp/website Status: New = Incomplete -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1210774 Title: wrong links on forum page Status in OpenLP - Worship Presentation Software: Invalid Status in OpenLP website series: Incomplete Bug description: on the forum page, the links Support and Development are not correct. They link to openlp.org/support and openlp.org/development instead of /openlp.org/node/324 and /openlp.org/node/864 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1210774/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Andreas Preikschat (googol) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179585 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179585 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-10 20:42:16 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-10 20:42:16 + @@ -0,0 +1,56 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog (#1209515) + +import logging +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): +def getOpenFileNames(self, parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +if not os.path.exists(file): +file = urllib.unquote(unicode(file)) +if not os.path.exists(file): +QtGui.QMessageBox.information(self, +UiStrings().FNFT, +UiStrings().FNF % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-10 20:42:16 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add a file to the list widget to make it available for showing -files = QtGui.QFileDialog.getOpenFileNames
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Review: Needs Fixing -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179585 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Andreas, How do I make it static? -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179585 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Phill (phill-ridout) Andreas Preikschat (googol) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179606 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179606 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-11 20:21:07 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-11 20:21:07 + @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog (#1209515) + +import logging +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): +@staticmethod +def getOpenFileNames(parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +if not os.path.exists(file): +file = urllib.unquote(unicode(file)) +if not os.path.exists(file): +QtGui.QMessageBox.information(self, +UiStrings().FNFT, +UiStrings().FNF % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-11 20:21:07 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add a file to the list widget to make it available for showing -files
Re: [Openlp-core] [Merge] lp:~oliwee/openlp/HideBibleVerses into lp:openlp
I think I would prefer verse_number_display rather than display_verse. The Object name should be the same as the instance variable name 21 + self.display_verse_check_box.setObjectName(u'verse_display_check_box') 46Could we get a doc string 47 - 50 You might be able to do this:self.display_verse = bool(QtCore.Qt.Checked) 51Some might object to the extra line on 51 Just my thoughts. I would wait and see what the other guys say. I'm no expert! -- https://code.launchpad.net/~oliwee/openlp/HideBibleVerses/+merge/179610 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1096450 into lp:openlp
No it shouldn't because after that the lines are joined with a new line and then passed to addVerse. I've tested it with a load of sample files found on the OpenSong download page and pain painstakingly compared a load of songs of varying types between OpenLP and OpenSong -- https://code.launchpad.net/~phill-ridout/openlp/1096450/+merge/178463 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194730] Re: [support-system] Non existing chapters reseult in traceback when searching webbibles
** Changed in: openlp/2.0 Status: In Progress = Fix Committed -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194730 Title: [support-system] Non existing chapters reseult in traceback when searching webbibles Status in OpenLP - Worship Presentation Software: Invalid Status in OpenLP 2.0 series: Fix Committed Status in OpenLP trunk series: Invalid Bug description: Hello, http://support.openlp.org/issues/2006 PART 1 1) Register the New Living Translation from biblegateway. 2) Search 2 Samuel 25 Result: Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/mediaitem.py, line 656, in onQuickSearchButton self.search_results = self.plugin.manager.get_verses(bible, text) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/manager.py, line 300, in get_verses return self.db_cache[bible].get_verses(reflist, show_error) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 608, in get_verses search_results = self.get_chapter(book, reference[1]) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 636, in get_chapter return handler.get_bible_chapter(self.download_name, book, chapter) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 245, in get_bible_chapter self._clean_soup(div) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 127, in _clean_soup self._remove_elements(tag, 'sup', 'crossreference') File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 86, in _remove_elements all_tags = parent.find_all(tag, class_) AttributeError: 'NoneType' object has no attribute 'find_all' Expected: Nothing should happen, because this chapter does not exist. ===PART2=== 1) Search for 2 Samuel 1:88 Result: Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/mediaitem.py, line 656, in onQuickSearchButton self.search_results = self.plugin.manager.get_verses(bible, text) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/manager.py, line 300, in get_verses return self.db_cache[bible].get_verses(reflist, show_error) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 608, in get_verses search_results = self.get_chapter(book, reference[1]) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 636, in get_chapter return handler.get_bible_chapter(self.download_name, book, chapter) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 252, in get_bible_chapter verse_list = self._extract_verses(span_list) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 149, in _extract_verses c_verse, c_text = self._extract_verse(child) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 101, in _extract_verse elif tag.get('class')[0] == versenum or tag.get('class')[0] == 'versenum mid-line': TypeError: 'NoneType' object has no attribute '__getitem__' Expected: Nothing, the verse does not exist. NOTE: The tracebacks are ONLY shown, when the chapter was not already downloaded! To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194730/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1184869_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1184869_2.0 into lp:openlp/2.0. Requested reviews: Raoul Snyman (raoul-snyman) Tim Bentley (trb143) Related bugs: Bug #1184869 in OpenLP: Webbible import fails https://bugs.launchpad.net/openlp/+bug/1184869 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1184869_2.0/+merge/179766 Fixes #1184869 Ensures that there is text in the anchor tag -- https://code.launchpad.net/~phill-ridout/openlp/1184869_2.0/+merge/179766 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/bibles/lib/http.py' --- openlp/plugins/bibles/lib/http.py 2013-08-03 20:26:46 + +++ openlp/plugins/bibles/lib/http.py 2013-08-12 18:21:22 + @@ -377,6 +377,7 @@ content = content.findAll(u'li') return [ book.contents[0].contents[0] for book in content +if len(book.contents[0].contents) ] ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Any suggestions? We could use the encoding selection dialof as used in the EW importer, but that only has a limited choice. So far the songs I have tried have either been detected as ASCII or Utf-8 IIRC -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/178373 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Phill (phill-ridout) Andreas Preikschat (googol) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179976 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179976 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-13 18:13:33 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-13 18:13:33 + @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog (#1209515) + +import logging +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): +@staticmethod +def getOpenFileNames(parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +file = unicode(file) +if not os.path.exists(file): +file = urllib.unquote(file) +if not os.path.exists(file): +QtGui.QMessageBox.information(self, +UiStrings().FNFT, +UiStrings().FNF % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-13 18:13:33 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add a file to the list widget to make it available for showing
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Review: Approve Its asking me to review, presumably because I set it to need fixing before! -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179976 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1211913] [NEW] Issues importing PowerSong FIles
Public bug reported: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. ** Affects: openlp Importance: Undecided Status: New ** Affects: openlp/2.0 Importance: Medium Status: Confirmed ** Affects: openlp/trunk Importance: Undecided Status: New ** Tags: song-import support-system ** Also affects: openlp/2.0 Importance: Undecided Status: New ** Also affects: openlp/trunk Importance: Undecided Status: New ** Changed in: openlp/2.0 Status: New = Confirmed ** Changed in: openlp/2.0 Importance: Undecided = Medium ** Tags added: support-system ** Tags added: song-import ** Changed in: openlp/2.0 Milestone: None = 2.0.2 ** Changed in: openlp/trunk Milestone: None = 2.1.1 -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing PowerSong FIles Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0. Requested reviews: Tim Bentley (trb143) Raoul Snyman (raoul-snyman) Related bugs: Bug #1194610 in OpenLP: [support-system] SongShowPlus traceback https://bugs.launchpad.net/openlp/+bug/1194610 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/17 Fixes bug 1194610 by detecting the encoding rather than assuming that it set (because its not) add fall back to the windows encoding dialog -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/17 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/songshowplusimport.py' --- openlp/plugins/songs/lib/songshowplusimport.py 2013-02-18 17:15:44 + +++ openlp/plugins/songs/lib/songshowplusimport.py 2013-08-13 20:41:48 + @@ -30,13 +30,14 @@ The :mod:`songshowplusimport` module provides the functionality for importing SongShow Plus songs into the OpenLP database. +import chardet import os import logging import re import struct from openlp.core.ui.wizard import WizardStrings -from openlp.plugins.songs.lib import VerseType +from openlp.plugins.songs.lib import VerseType, retrieve_windows_encoding from openlp.plugins.songs.lib.songimport import SongImport TITLE = 1 @@ -142,44 +143,44 @@ log.debug(length_descriptor_size) data = song_data.read(length_descriptor) if block_key == TITLE: -self.title = unicode(data, u'cp1252') +self.title = self.decode(data) elif block_key == AUTHOR: authors = data.split( / ) for author in authors: if author.find(,) !=-1: authorParts = author.split(, ) author = authorParts[1] + + authorParts[0] -self.parseAuthor(unicode(author, u'cp1252')) +self.parseAuthor(self.decode(author)) elif block_key == COPYRIGHT: -self.addCopyright(unicode(data, u'cp1252')) +self.addCopyright(self.decode(data)) elif block_key == CCLI_NO: self.ccliNumber = int(data) elif block_key == VERSE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Verse], verse_no)) elif block_key == CHORUS: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Chorus], verse_no)) elif block_key == BRIDGE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Bridge], verse_no)) elif block_key == TOPIC: -self.topics.append(unicode(data, u'cp1252')) +self.topics.append(self.decode(data)) elif block_key == COMMENTS: -self.comments = unicode(data, u'cp1252') +self.comments = self.decode(data) elif block_key == VERSE_ORDER: verse_tag = self.toOpenLPVerseTag(data, True) if verse_tag: if not isinstance(verse_tag, unicode): -verse_tag = unicode(verse_tag, u'cp1252') +verse_tag = self.decode(verse_tag) self.sspVerseOrderList.append(verse_tag) elif block_key == SONG_BOOK: -self.songBookName = unicode(data, u'cp1252') +self.songBookName = self.decode(data) elif block_key == SONG_NUMBER: self.songNumber = ord(data) elif block_key == CUSTOM_VERSE: verse_tag = self.toOpenLPVerseTag(verse_name) -self.addVerse(unicode(data, u'cp1252'), verse_tag) +self.addVerse(self.decode(data), verse_tag) else: log.debug(Unrecognised blockKey: %s, data: %s % (block_key, data)) @@ -221,3 +222,13 @@ verse_tag = VerseType.Tags[VerseType.Other] verse_number = self.otherList[verse_name] return verse_tag + verse_number + +def decode(self, data): +try: +return unicode(data, chardet.detect(data)['encoding']) +except: +while True: +try: +return unicode(data, self.encoding) +except: +self.encoding = retrieve_windows_encoding() \ No newline at end of file
[Openlp-core] [Bug 1211913] Re: Issues importing Sunday Plus FIles
** Summary changed: - Issues importing PowerSong FIles + Issues importing Sunday Plus FIles -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing Sunday Plus FIles Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194314] Re: Feature Requests: Webpages Ad-Lib Bible Verses
1. If you saw it on our feature requests page why have you added it here? Our forums would have been a better place to +1 2. You can use the blank mode Show Desktop to allow use of other applications. Such as web browsers. There is no timeline set out for feature requests at the moment. -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194314 Title: Feature Requests: Webpages Ad-Lib Bible Verses Status in OpenLP - Worship Presentation Software: New Bug description: I saw the following feature requests: http://wiki.openlp.org/Feature_Requests 1. Sometimes Preachers unexpectedly read beyond the planned Bible verses. Therefore the ability to click a button to lookup and show the next verse would be useful. 2. Show webpages How popular are these two requests and are they coming in the next version? I would love to move to OpenLP from EasySlides, but these two lack of features are holding me back. I'm currently using an older version of EasySlides with a bug that allows option # 1 above to work. Also, EasySlides does not completely take over the 2nd monitor, so I can display an alert, and then overlay a web browser over the EasySlides live window (option # 2 above)... To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194314/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194314] Re: Feature Requests: Webpages Ad-Lib Bible Verses
I'm sorry for my earlier abruptness! -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194314 Title: Feature Requests: Webpages Ad-Lib Bible Verses Status in OpenLP - Worship Presentation Software: New Bug description: I saw the following feature requests: http://wiki.openlp.org/Feature_Requests 1. Sometimes Preachers unexpectedly read beyond the planned Bible verses. Therefore the ability to click a button to lookup and show the next verse would be useful. 2. Show webpages How popular are these two requests and are they coming in the next version? I would love to move to OpenLP from EasySlides, but these two lack of features are holding me back. I'm currently using an older version of EasySlides with a bug that allows option # 1 above to work. Also, EasySlides does not completely take over the 2nd monitor, so I can display an alert, and then overlay a web browser over the EasySlides live window (option # 2 above)... To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194314/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1211913] Re: Issues importing Sunday Plus FIles
** Changed in: openlp/2.0 Status: Confirmed = In Progress ** Changed in: openlp/2.0 Assignee: (unassigned) = Phill (phill-ridout) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing Sunday Plus FIles Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0/+merge/180234 Fixes #1211913. The case of field names can change, so have taken that in to account by converting them to upper case -- https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0/+merge/180234 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/sundayplusimport.py' --- openlp/plugins/songs/lib/sundayplusimport.py 2013-02-03 21:00:22 + +++ openlp/plugins/songs/lib/sundayplusimport.py 2013-08-14 20:26:01 + @@ -96,7 +96,7 @@ # Now we are looking for the name. if data[i:i + 1] == '#': name_end = data.find(':', i + 1) -name = data[i + 1:name_end] +name = data[i + 1:name_end].upper() i = name_end + 1 while data[i:i + 1] == ' ': i += 1 @@ -122,13 +122,13 @@ value = data[i:end] # If we are in the main group. if cell == False: -if name == 'title': +if name == 'TITLE': self.title = self.decode(self.unescape(value)) -elif name == 'Author': +elif name == 'AUTHOR': author = self.decode(self.unescape(value)) if len(author): self.addAuthor(author) -elif name == 'Copyright': +elif name == 'COPYRIGHT': self.copyright = self.decode(self.unescape(value)) elif name[0:4] == 'CELL': self.parse(value, cell = name[4:]) @@ -142,13 +142,13 @@ if len(value) = 2 and value[-1] in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']: verse_type = %s%s % (verse_type, value[-1]) -elif name == 'Hotkey': +elif name == 'HOTKEY': # Hotkey always appears after MARKER_NAME, so it # effectively overrides MARKER_NAME, if present. if len(value) and \ value in HOTKEY_TO_VERSE_TYPE.keys(): verse_type = HOTKEY_TO_VERSE_TYPE[value] -if name == 'rtf': +if name == 'RTF': value = self.unescape(value) result = strip_rtf(value, self.encoding) if result is None: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1211913] Re: Issues importing Sunday Plus FIles
** Branch linked: lp:~phill-ridout/openlp/1211913_2.0 -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing Sunday Plus FIles Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
63 + file_list = QtCore.QStringList() 73 + file_list.append(QtCore.QString(file)) Why? This is Python, use Python objects. As I was reimplementing and creating a slot in method I wanted to keep the same return type. But if you'd rather I'd use python objects I can. Also should I change the method name from camel case? Note in the trunk version I have used python objects as we use PyQt API v2 (which automatically casts to python objects) 106 + self.FNFT = unicode(translate('OpenLP.Ui', 108 + self.FNF = unicode(translate('OpenLP.Ui', What does FNFT and FNF mean? I would prefer self.FileNotFound and self.FileNotFoundMessage Sure, I was just following convention of the other variables. 109 + 'File %s not found.\nPlease try selecting it individually.')) This is horrible. Is there truly no way we can fix this problem? Agreed, I included this as a belt and braces approach. I have tested this code with around 2000 files and have not seen this dialogue. I just added it because o wasn't 100% sure we might not have other encoding issues. The bug is in Qt, select a single file and its fine, but select multiple files and it seems to URL encode the names. I don't see any other way round this! -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/179976 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~oliwee/openlp/HideBibleVerses into lp:openlp
I would agree with Jonathan, however the bible has an advanced tab. I don't think it would look out of place on there. -- https://code.launchpad.net/~oliwee/openlp/HideBibleVerses/+merge/179610 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Raoul Snyman (raoul-snyman) Phill (phill-ridout) Andreas Preikschat (googol) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/180471 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/180471 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-16 05:24:25 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-16 05:24:25 + @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog https://bugs.launchpad.net/openlp/+bug/1209515 + +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +class FileDialog(QtGui.QFileDialog): +@staticmethod +def getOpenFileNames(parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +file = unicode(file) +if not os.path.exists(file): +file = urllib.unquote(file) +if not os.path.exists(file): +QtGui.QMessageBox.information(parent, +UiStrings().FileNotFound, +UiStrings().FileNotFoundMessage % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-16 05:24:25 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add a file to the list widget to make
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Review: Approve -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/180471 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1213254] [NEW] OpenLP 1 database importer crashes when encountering control chars
Public bug reported: http://support.openlp.org/issues/1941 --- Exception Traceback --- Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.wizard, line 188, in onCurrentIdChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.forms.songimportform, line 391, in performWizard File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.olp1import, line 161, in doImport File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songimport, line 327, in finish File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.xml, line 119, in add_verse_to_lyrics File lxml.etree.pyx, line 2613, in lxml.etree.CDATA.__init__ (src/lxml/lxml.etree.c:51419) File apihelpers.pxi, line 1366, in lxml.etree._utf8 (src/lxml/lxml.etree.c:22211) ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters ** Affects: openlp Importance: Undecided Status: New ** Affects: openlp/2.0 Importance: Undecided Status: Confirmed ** Tags: song-import support-system ** Also affects: openlp/2.0 Importance: Undecided Status: New ** Changed in: openlp/2.0 Status: New = Confirmed ** Changed in: openlp/2.0 Milestone: None = 2.0.2 -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1213254 Title: OpenLP 1 database importer crashes when encountering control chars Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Confirmed Bug description: http://support.openlp.org/issues/1941 --- Exception Traceback --- Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.wizard, line 188, in onCurrentIdChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.forms.songimportform, line 391, in performWizard File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.olp1import, line 161, in doImport File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songimport, line 327, in finish File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.xml, line 119, in add_verse_to_lyrics File lxml.etree.pyx, line 2613, in lxml.etree.CDATA.__init__ (src/lxml/lxml.etree.c:51419) File apihelpers.pxi, line 1366, in lxml.etree._utf8 (src/lxml/lxml.etree.c:22211) ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1213254/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0. Requested reviews: Tim Bentley (trb143) Raoul Snyman (raoul-snyman) Related bugs: Bug #1194610 in OpenLP: [support-system] SongShowPlus traceback https://bugs.launchpad.net/openlp/+bug/1194610 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/180662 Fixes bug 1194610 by detecting the encoding rather than assuming that it set (because its not) add fall back to the windows encoding dialog -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/180662 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/songshowplusimport.py' --- openlp/plugins/songs/lib/songshowplusimport.py 2013-02-18 17:15:44 + +++ openlp/plugins/songs/lib/songshowplusimport.py 2013-08-16 22:09:13 + @@ -30,13 +30,14 @@ The :mod:`songshowplusimport` module provides the functionality for importing SongShow Plus songs into the OpenLP database. +import chardet import os import logging import re import struct from openlp.core.ui.wizard import WizardStrings -from openlp.plugins.songs.lib import VerseType +from openlp.plugins.songs.lib import VerseType, retrieve_windows_encoding from openlp.plugins.songs.lib.songimport import SongImport TITLE = 1 @@ -142,44 +143,44 @@ log.debug(length_descriptor_size) data = song_data.read(length_descriptor) if block_key == TITLE: -self.title = unicode(data, u'cp1252') +self.title = self.decode(data) elif block_key == AUTHOR: authors = data.split( / ) for author in authors: if author.find(,) !=-1: authorParts = author.split(, ) author = authorParts[1] + + authorParts[0] -self.parseAuthor(unicode(author, u'cp1252')) +self.parseAuthor(self.decode(author)) elif block_key == COPYRIGHT: -self.addCopyright(unicode(data, u'cp1252')) +self.addCopyright(self.decode(data)) elif block_key == CCLI_NO: self.ccliNumber = int(data) elif block_key == VERSE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Verse], verse_no)) elif block_key == CHORUS: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Chorus], verse_no)) elif block_key == BRIDGE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Bridge], verse_no)) elif block_key == TOPIC: -self.topics.append(unicode(data, u'cp1252')) +self.topics.append(self.decode(data)) elif block_key == COMMENTS: -self.comments = unicode(data, u'cp1252') +self.comments = self.decode(data) elif block_key == VERSE_ORDER: verse_tag = self.toOpenLPVerseTag(data, True) if verse_tag: if not isinstance(verse_tag, unicode): -verse_tag = unicode(verse_tag, u'cp1252') +verse_tag = self.decode(verse_tag) self.sspVerseOrderList.append(verse_tag) elif block_key == SONG_BOOK: -self.songBookName = unicode(data, u'cp1252') +self.songBookName = self.decode(data) elif block_key == SONG_NUMBER: self.songNumber = ord(data) elif block_key == CUSTOM_VERSE: verse_tag = self.toOpenLPVerseTag(verse_name) -self.addVerse(unicode(data, u'cp1252'), verse_tag) +self.addVerse(self.decode(data), verse_tag) else: log.debug(Unrecognised blockKey: %s, data: %s % (block_key, data)) @@ -221,3 +222,9 @@ verse_tag = VerseType.Tags[VerseType.Other] verse_number = self.otherList[verse_name] return verse_tag + verse_number + +def decode(self, data): +try: +return unicode(data, chardet.detect(data)['encoding']) +except: +return unicode(data, u'cp1252') \ No newline at end of file ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1213254_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1213254_2.0 into lp:openlp/2.0. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1213254_2.0/+merge/180683 Fix the importing of some OpenLP 1 databases by filtering out invalid xml chars. code from http://stackoverflow.com/questions/8733233/filtering-out-certain-bytes-in-python -- https://code.launchpad.net/~phill-ridout/openlp/1213254_2.0/+merge/180683 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/1213254_2.0 into lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/xml.py' --- openlp/plugins/songs/lib/xml.py 2012-12-30 19:41:24 + +++ openlp/plugins/songs/lib/xml.py 2013-08-17 08:12:37 + @@ -92,6 +92,27 @@ self.song_xml = objectify.fromstring(u'song version=1.0 /') self.lyrics = etree.SubElement(self.song_xml, u'lyrics') +@staticmethod +def valid_xml_char_ordinal(char): + +Control Characters we need to filter from the xml. +Source http://stackoverflow.com/questions/8733233/filtering-out-certain-bytes-in-python + +return ( +0x20 = char = 0xD7FF +or char in (0x9, 0xA, 0xD) +or 0xE000 = char = 0xFFFD +or 0x1 = char = 0x10 +) + +@staticmethod +def clean_xml_string(xml): + +Filter out invalid characters in xml +Source http://stackoverflow.com/questions/8733233/filtering-out-certain-bytes-in-python + +return ''.join(char for char in xml if SongXML.valid_xml_char_ordinal(ord(char))) + def add_verse_to_lyrics(self, type, number, content, lang=None): Add a verse to the ``lyrics`` tag. @@ -112,6 +133,7 @@ The verse's language code (ISO-639). This is not required, but should be added if available. +content = self.clean_xml_string(content) verse = etree.Element(u'verse', type=unicode(type), label=unicode(number)) if lang: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1213254] Re: OpenLP 1 database importer crashes when encountering control chars
** Branch linked: lp:~phill-ridout/openlp/1213254_2.0 ** Changed in: openlp/2.0 Importance: Undecided = Medium ** Changed in: openlp/2.0 Assignee: (unassigned) = Phill (phill-ridout) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1213254 Title: OpenLP 1 database importer crashes when encountering control chars Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Confirmed Bug description: http://support.openlp.org/issues/1941 --- Exception Traceback --- Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.wizard, line 188, in onCurrentIdChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.forms.songimportform, line 391, in performWizard File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.olp1import, line 161, in doImport File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songimport, line 327, in finish File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.xml, line 119, in add_verse_to_lyrics File lxml.etree.pyx, line 2613, in lxml.etree.CDATA.__init__ (src/lxml/lxml.etree.c:51419) File apihelpers.pxi, line 1366, in lxml.etree._utf8 (src/lxml/lxml.etree.c:22211) ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1213254/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Phill (phill-ridout) Raoul Snyman (raoul-snyman) Andreas Preikschat (googol) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/180686 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/180686 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-17 08:52:40 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-17 08:52:40 + @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog https://bugs.launchpad.net/openlp/+bug/1209515 + +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +class FileDialog(QtGui.QFileDialog): +@staticmethod +def getOpenFileNames(parent, title, path, filters): +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +file = unicode(file) +if not os.path.exists(file): +file = urllib.unquote(file) +if not os.path.exists(file): +QtGui.QMessageBox.information(parent, +UiStrings().FileNotFound, +UiStrings().FileNotFoundMessage % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-17 08:52:40 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate, Receiver, ListWidgetWithDnD from openlp.core.lib.searchedit import SearchEdit from openlp.core.lib.ui import UiStrings, create_widget_action, \ @@ -337,7 +337,7 @@ Add a file to the list widget to make
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0
Should the strings be u' Tim, I would say no. The data is apparently stored in us-ascii. The importer does unicode(data, self.encoding) where self.encoding is us-ascii. Unless somebody else knows better? -- https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0/+merge/180234 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610 into lp:openlp
Why do you check the charset each time? Line 14 changed to data = unicode( song_data.read(length_descriptor), chardet.detect(data)['encoding'] ) should be enough This would not work, because the length descriptor has no encoding. It is a byte of which the binary value specifies the length in bytes of the following string. So I guess you could say it has no encoding! -- https://code.launchpad.net/~phill-ridout/openlp/1194610/+merge/178456 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Retrieve_windows_encoding is not used? It was, but the Raoul told me to: Fall back to cp1252 (https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/17/comments/406874) -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/180662 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1197659_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1197659_2.0 into lp:openlp/2.0. Requested reviews: OpenLP Core (openlp-core) Related bugs: Bug #1197659 in OpenLP: Delete button in Configure Formatting Tags gets focus https://bugs.launchpad.net/openlp/+bug/1197659 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1197659_2.0/+merge/180727 Fixes #1197659 by setting the default attribute on the save button when the tag is edited -- https://code.launchpad.net/~phill-ridout/openlp/1197659_2.0/+merge/180727 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/1197659_2.0 into lp:openlp/2.0. === modified file 'openlp/core/ui/formattingtagform.py' --- openlp/core/ui/formattingtagform.py 2013-07-08 16:58:06 + +++ openlp/core/ui/formattingtagform.py 2013-08-18 06:53:15 + @@ -109,6 +109,7 @@ has been changed. self.savePushButton.setEnabled(True) +self.savePushButton.setDefault(True) def onNewClicked(self): ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1197659] Re: Delete button in Configure Formatting Tags gets focus
** Changed in: openlp/2.0 Status: Incomplete = In Progress ** Changed in: openlp/2.0 Assignee: (unassigned) = Phill (phill-ridout) ** Branch linked: lp:~phill-ridout/openlp/1197659_2.0 ** Changed in: openlp/trunk Status: Incomplete = In Progress ** Changed in: openlp/trunk Assignee: (unassigned) = Phill (phill-ridout) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1197659 Title: Delete button in Configure Formatting Tags gets focus Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: In Progress Bug description: http://support.openlp.org/issues/2005 When adding a new formatting tag, the delete button gets focus. It seems like the Save button should get focus instead. How to reproduce. Open Configure Formatting Tags dialog. Click new. Click in one of the line edits (Delete button gets focus) Change the text Press enter (I would assume that this would save the new tag) New tag gets deleted To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1197659/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1197659 into lp:openlp
Phill has proposed merging lp:~phill-ridout/openlp/1197659 into lp:openlp. Requested reviews: OpenLP Core (openlp-core) Related bugs: Bug #1197659 in OpenLP: Delete button in Configure Formatting Tags gets focus https://bugs.launchpad.net/openlp/+bug/1197659 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1197659/+merge/180743 Fixes #1197659 by setting the default attribute on the save button when the tag is edited. + Test -- https://code.launchpad.net/~phill-ridout/openlp/1197659/+merge/180743 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/1197659 into lp:openlp. === modified file 'openlp/core/ui/formattingtagform.py' --- openlp/core/ui/formattingtagform.py 2013-07-19 15:51:47 + +++ openlp/core/ui/formattingtagform.py 2013-08-18 19:56:31 + @@ -99,6 +99,7 @@ has been changed. self.save_push_button.setEnabled(True) +self.save_push_button.setDefault(True) def on_new_clicked(self): === added file 'tests/functional/openlp_core_ui/test_formattingtagform.py' --- tests/functional/openlp_core_ui/test_formattingtagform.py 1970-01-01 00:00:00 + +++ tests/functional/openlp_core_ui/test_formattingtagform.py 2013-08-18 19:56:31 + @@ -0,0 +1,62 @@ + +Package to test the openlp.core.ui.formattingtagsform package. + +from unittest import TestCase + +from mock import MagicMock, patch + +from openlp.core.ui.formattingtagform import FormattingTagForm + +# TODO: Tests Still TODO +# __init__ +# exec_ +# on_new_clicked +# on_delete_clicked +# on_saved_clicked +# _reloadTable + +class TestFormattingTagForm(TestCase): +def setUp(self): +self.init_patcher = patch(u'openlp.core.ui.formattingtagform.FormattingTagForm.__init__') +self.qdialog_patcher = patch(u'openlp.core.ui.formattingtagform.QtGui.QDialog') +self.ui_formatting_tag_dialog_patcher = patch(u'openlp.core.ui.formattingtagform.Ui_FormattingTagDialog') +self.mocked_init = self.init_patcher.start() +self.mocked_qdialog = self.qdialog_patcher.start() +self.mocked_ui_formatting_tag_dialog = self.ui_formatting_tag_dialog_patcher.start() +self.mocked_init.return_value = None + +def tearDown(self): +self.init_patcher.stop() +self.qdialog_patcher.stop() +self.ui_formatting_tag_dialog_patcher.stop() + +def on_text_edited_test(self): + +Test that the appropriate actions are preformed when on_text_edited is called + + +# GIVEN: An instance of the Formatting Tag Form and a mocked save_push_button +form = FormattingTagForm() +form.save_push_button = MagicMock() + +# WHEN: on_text_edited is called with an arbitrary value +form.on_text_edited(u'text') + +# THEN: setEnabled and setDefault should have been called on save_push_button +form.save_push_button.setEnabled.assert_called_with(True) +form.save_push_button.setDefault.assert_called_with(True) + +def strip_test(self): + +Test that the _strip strips the correct chars + + +# GIVEN: An instance of the Formatting Tag Form and a string containing a tag +form = FormattingTagForm() +tag = u'{tag}' + +# WHEN: Calling _strip +result = form._strip(tag) + +# THEN: The tag should be returned with the wrappers removed. +self.assertEqual(result, u'tag', u'FormattingTagForm._strip should return u\'tag\' when called with u\'{tag}\'') ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1211913_2.0 into lp:openlp/2.0. Requested reviews: Tim Bentley (trb143) Raoul Snyman (raoul-snyman) Related bugs: Bug #1211913 in OpenLP: Issues importing Sunday Plus FIles https://bugs.launchpad.net/openlp/+bug/1211913 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0/+merge/180746 Fixes #1211913. The case of field names can change, so have taken that in to account by converting them to upper case -- https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0/+merge/180746 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/sundayplusimport.py' --- openlp/plugins/songs/lib/sundayplusimport.py 2013-02-03 21:00:22 + +++ openlp/plugins/songs/lib/sundayplusimport.py 2013-08-18 20:48:29 + @@ -68,7 +68,7 @@ for filename in self.importSource: if self.stopImportFlag: return -song_file = open(filename) +song_file = open(filename, 'rb') self.doImportFile(song_file) song_file.close() @@ -96,7 +96,7 @@ # Now we are looking for the name. if data[i:i + 1] == '#': name_end = data.find(':', i + 1) -name = data[i + 1:name_end] +name = data[i + 1:name_end].upper() i = name_end + 1 while data[i:i + 1] == ' ': i += 1 @@ -122,13 +122,13 @@ value = data[i:end] # If we are in the main group. if cell == False: -if name == 'title': +if name == 'TITLE': self.title = self.decode(self.unescape(value)) -elif name == 'Author': +elif name == 'AUTHOR': author = self.decode(self.unescape(value)) if len(author): self.addAuthor(author) -elif name == 'Copyright': +elif name == 'COPYRIGHT': self.copyright = self.decode(self.unescape(value)) elif name[0:4] == 'CELL': self.parse(value, cell = name[4:]) @@ -142,13 +142,13 @@ if len(value) = 2 and value[-1] in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']: verse_type = %s%s % (verse_type, value[-1]) -elif name == 'Hotkey': +elif name == 'HOTKEY': # Hotkey always appears after MARKER_NAME, so it # effectively overrides MARKER_NAME, if present. if len(value) and \ value in HOTKEY_TO_VERSE_TYPE.keys(): verse_type = HOTKEY_TO_VERSE_TYPE[value] -if name == 'rtf': +if name == 'RTF': value = self.unescape(value) result = strip_rtf(value, self.encoding) if result is None: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1213254_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1213254_2.0 into lp:openlp/2.0. Requested reviews: Raoul Snyman (raoul-snyman) Related bugs: Bug #1213254 in OpenLP: OpenLP 1 database importer crashes when encountering control chars https://bugs.launchpad.net/openlp/+bug/1213254 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1213254_2.0/+merge/180938 Fix the importing of some OpenLP 1 databases by filtering out invalid xml chars. code from http://stackoverflow.com/questions/8733233/filtering-out-certain-bytes-in-python -- https://code.launchpad.net/~phill-ridout/openlp/1213254_2.0/+merge/180938 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/xml.py' --- openlp/plugins/songs/lib/xml.py 2012-12-30 19:41:24 + +++ openlp/plugins/songs/lib/xml.py 2013-08-19 20:19:56 + @@ -78,6 +78,17 @@ NAMESPACE = u'http://openlyrics.info/namespace/2009/song' NSMAP = '{' + NAMESPACE + '}' + '%s' +def clean_xml_string(xml): + +Filter out invalid characters in xml +Source http://stackoverflow.com/questions/8733233/filtering-out-certain-bytes-in-python + +return ''.join(char for char in xml if +0x20 = char = 0xD7FF +or char in (0x9, 0xA, 0xD) +or 0xE000 = char = 0xFFFD +or 0x1 = char = 0x10) + class SongXML(object): @@ -112,6 +123,7 @@ The verse's language code (ISO-639). This is not required, but should be added if available. +content = clean_xml_string(content) verse = etree.Element(u'verse', type=unicode(type), label=unicode(number)) if lang: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1213254] Re: OpenLP 1 database importer crashes when encountering control chars
** Changed in: openlp/trunk Assignee: (unassigned) = Phill (phill-ridout) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1213254 Title: OpenLP 1 database importer crashes when encountering control chars Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/1941 --- Exception Traceback --- Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.wizard, line 188, in onCurrentIdChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.forms.songimportform, line 391, in performWizard File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.olp1import, line 161, in doImport File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songimport, line 327, in finish File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.xml, line 119, in add_verse_to_lyrics File lxml.etree.pyx, line 2613, in lxml.etree.CDATA.__init__ (src/lxml/lxml.etree.c:51419) File apihelpers.pxi, line 1366, in lxml.etree._utf8 (src/lxml/lxml.etree.c:22211) ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1213254/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194622] Re: [support-system] Traceback when importing bible with disabled bible plugin in FTW
** Changed in: openlp/2.0 Assignee: (unassigned) = Raoul Snyman (raoul-snyman) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194622 Title: [support-system] Traceback when importing bible with disabled bible plugin in FTW Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: In Progress Status in OpenLP trunk series: Confirmed Bug description: Hello, http://support.openlp.org/issues/2009 1) Disable the Bible Plugin 2) Restart OpenLP (it could be that this step is not required) 3) Start the FTW 4) Make sure the bible plugin is not checked! 5) On the bible download page select a bible Result: Traceback (most recent call last): File /usr/lib/python2.7/site-packages/openlp/plugins/bibles/lib/mediaitem.py, line 407, in reloadBibles self.plugin.manager.reload_bibles() AttributeError: 'NoneType' object has no attribute 'reload_bibles' Expected: I am not sure, this is a strange case. Either the bible download page should not be shown or we should inform the user that we need to enable the bible plugin. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194622/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1209515_2.0 into lp:openlp/2.0. Requested reviews: Phill (phill-ridout) Andreas Preikschat (googol) Raoul Snyman (raoul-snyman) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/181144 Fixes #1209515 by subclassing QFileDialog and attempting to urldecode any files not found -- https://code.launchpad.net/~phill-ridout/openlp/1209515_2.0/+merge/181144 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-01-20 18:46:41 + +++ openlp/core/lib/__init__.py 2013-08-20 19:40:44 + @@ -384,6 +384,7 @@ from eventreceiver import Receiver +from filedialog import FileDialog from listwidgetwithdnd import ListWidgetWithDnD from formattingtags import FormattingTags from spelltextedit import SpellTextEdit === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-20 19:40:44 + @@ -0,0 +1,63 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog +https://bugs.launchpad.net/openlp/+bug/1209515 + +import os +import urllib + +from PyQt4 import QtCore, QtGui + +from openlp.core.lib.ui import UiStrings + +class FileDialog(QtGui.QFileDialog): + +Subclass QFileDialog to work round a bug + +@staticmethod +def getOpenFileNames(parent, title, path, filters): + +Reimplement getOpenFileNames to fix the way it returns some file +names that url encoded when selecting multiple files/ + +files = QtGui.QFileDialog.getOpenFileNames(parent, title, path, filters) +file_list = QtCore.QStringList() +for file in files: +file = unicode(file) +if not os.path.exists(file): +file = urllib.unquote(file) +if not os.path.exists(file): +QtGui.QMessageBox.information(parent, +UiStrings().FileNotFound, +UiStrings().FileNotFoundMessage % file) +continue +file_list.append(QtCore.QString(file)) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-01-05 11:31:02 + +++ openlp/core/lib/mediamanageritem.py 2013-08-20 19:40:44 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \ +from openlp.core.lib import FileDialog, SettingsManager, OpenLPToolbar, ServiceItem, \ StringContent, build_icon, translate
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0. Requested reviews: Raoul Snyman (raoul-snyman) Tim Bentley (trb143) Related bugs: Bug #1194610 in OpenLP: [support-system] SongShowPlus traceback https://bugs.launchpad.net/openlp/+bug/1194610 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/181159 Fixes bug 1194610 by detecting the encoding rather than assuming that it set (because its not) add fall back to the windows encoding dialog -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/181159 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/songshowplusimport.py' --- openlp/plugins/songs/lib/songshowplusimport.py 2013-02-18 17:15:44 + +++ openlp/plugins/songs/lib/songshowplusimport.py 2013-08-20 21:26:24 + @@ -30,13 +30,14 @@ The :mod:`songshowplusimport` module provides the functionality for importing SongShow Plus songs into the OpenLP database. +import chardet import os import logging import re import struct from openlp.core.ui.wizard import WizardStrings -from openlp.plugins.songs.lib import VerseType +from openlp.plugins.songs.lib import VerseType, retrieve_windows_encoding from openlp.plugins.songs.lib.songimport import SongImport TITLE = 1 @@ -142,44 +143,44 @@ log.debug(length_descriptor_size) data = song_data.read(length_descriptor) if block_key == TITLE: -self.title = unicode(data, u'cp1252') +self.title = self.decode(data) elif block_key == AUTHOR: authors = data.split( / ) for author in authors: if author.find(,) !=-1: authorParts = author.split(, ) author = authorParts[1] + + authorParts[0] -self.parseAuthor(unicode(author, u'cp1252')) +self.parseAuthor(self.decode(author)) elif block_key == COPYRIGHT: -self.addCopyright(unicode(data, u'cp1252')) +self.addCopyright(self.decode(data)) elif block_key == CCLI_NO: self.ccliNumber = int(data) elif block_key == VERSE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Verse], verse_no)) elif block_key == CHORUS: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Chorus], verse_no)) elif block_key == BRIDGE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Bridge], verse_no)) elif block_key == TOPIC: -self.topics.append(unicode(data, u'cp1252')) +self.topics.append(self.decode(data)) elif block_key == COMMENTS: -self.comments = unicode(data, u'cp1252') +self.comments = self.decode(data) elif block_key == VERSE_ORDER: verse_tag = self.toOpenLPVerseTag(data, True) if verse_tag: if not isinstance(verse_tag, unicode): -verse_tag = unicode(verse_tag, u'cp1252') +verse_tag = self.decode(verse_tag) self.sspVerseOrderList.append(verse_tag) elif block_key == SONG_BOOK: -self.songBookName = unicode(data, u'cp1252') +self.songBookName = self.decode(data) elif block_key == SONG_NUMBER: self.songNumber = ord(data) elif block_key == CUSTOM_VERSE: verse_tag = self.toOpenLPVerseTag(verse_name) -self.addVerse(unicode(data, u'cp1252'), verse_tag) +self.addVerse(self.decode(data), verse_tag) else: log.debug(Unrecognised blockKey: %s, data: %s % (block_key, data)) @@ -221,3 +222,14 @@ verse_tag = VerseType.Tags[VerseType.Other] verse_number = self.otherList[verse_name] return verse_tag + verse_number + +def decode(self, data): +try: +return unicode(data, chardet.detect(data)['encoding']) +except: +self.encoding = u'cp1252' +while self.encoding: +try: +return unicode(data, self.encoding) +except: +self.encoding = retrieve_windows_encoding
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0
Phill has proposed merging lp:~phill-ridout/openlp/1194610_2.0 into lp:openlp/2.0. Requested reviews: Tim Bentley (trb143) Raoul Snyman (raoul-snyman) Related bugs: Bug #1194610 in OpenLP: [support-system] SongShowPlus traceback https://bugs.launchpad.net/openlp/+bug/1194610 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/181199 Fixes bug 1194610 by detecting the encoding rather than assuming that it set (because its not) add fall back to the windows encoding dialog -- https://code.launchpad.net/~phill-ridout/openlp/1194610_2.0/+merge/181199 Your team OpenLP Core is subscribed to branch lp:openlp/2.0. === modified file 'openlp/plugins/songs/lib/songshowplusimport.py' --- openlp/plugins/songs/lib/songshowplusimport.py 2013-02-18 17:15:44 + +++ openlp/plugins/songs/lib/songshowplusimport.py 2013-08-21 05:32:12 + @@ -30,13 +30,14 @@ The :mod:`songshowplusimport` module provides the functionality for importing SongShow Plus songs into the OpenLP database. +import chardet import os import logging import re import struct from openlp.core.ui.wizard import WizardStrings -from openlp.plugins.songs.lib import VerseType +from openlp.plugins.songs.lib import VerseType, retrieve_windows_encoding from openlp.plugins.songs.lib.songimport import SongImport TITLE = 1 @@ -142,44 +143,44 @@ log.debug(length_descriptor_size) data = song_data.read(length_descriptor) if block_key == TITLE: -self.title = unicode(data, u'cp1252') +self.title = self.decode(data) elif block_key == AUTHOR: authors = data.split( / ) for author in authors: if author.find(,) !=-1: authorParts = author.split(, ) author = authorParts[1] + + authorParts[0] -self.parseAuthor(unicode(author, u'cp1252')) +self.parseAuthor(self.decode(author)) elif block_key == COPYRIGHT: -self.addCopyright(unicode(data, u'cp1252')) +self.addCopyright(self.decode(data)) elif block_key == CCLI_NO: self.ccliNumber = int(data) elif block_key == VERSE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Verse], verse_no)) elif block_key == CHORUS: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Chorus], verse_no)) elif block_key == BRIDGE: -self.addVerse(unicode(data, u'cp1252'), +self.addVerse(self.decode(data), %s%s % (VerseType.Tags[VerseType.Bridge], verse_no)) elif block_key == TOPIC: -self.topics.append(unicode(data, u'cp1252')) +self.topics.append(self.decode(data)) elif block_key == COMMENTS: -self.comments = unicode(data, u'cp1252') +self.comments = self.decode(data) elif block_key == VERSE_ORDER: verse_tag = self.toOpenLPVerseTag(data, True) if verse_tag: if not isinstance(verse_tag, unicode): -verse_tag = unicode(verse_tag, u'cp1252') +verse_tag = self.decode(verse_tag) self.sspVerseOrderList.append(verse_tag) elif block_key == SONG_BOOK: -self.songBookName = unicode(data, u'cp1252') +self.songBookName = self.decode(data) elif block_key == SONG_NUMBER: self.songNumber = ord(data) elif block_key == CUSTOM_VERSE: verse_tag = self.toOpenLPVerseTag(verse_name) -self.addVerse(unicode(data, u'cp1252'), verse_tag) +self.addVerse(self.decode(data), verse_tag) else: log.debug(Unrecognised blockKey: %s, data: %s % (block_key, data)) @@ -221,3 +222,9 @@ verse_tag = VerseType.Tags[VerseType.Other] verse_number = self.otherList[verse_name] return verse_tag + verse_number + +def decode(self, data): +try: +return unicode(data, chardet.detect(data)['encoding']) +except: +return unicode(data, retrieve_windows_encoding()) ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net
[Openlp-core] [Bug 1173749] Re: Songs with mismatching formatting tags still throw an exception
** Also affects: openlp/2.0 Importance: Undecided Status: New ** Also affects: openlp/trunk Importance: High Status: Confirmed ** Changed in: openlp/2.0 Milestone: None = 2.0.3 ** Changed in: openlp/trunk Milestone: 2.0.2 = 2.1.1 ** Changed in: openlp/2.0 Status: New = Confirmed ** Changed in: openlp/2.0 Importance: Undecided = High -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1173749 Title: Songs with mismatching formatting tags still throw an exception Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: Confirmed Bug description: There is another bug similar to this, bug #885874, but it does not seem to have fixed the issue below. Note that there is a mismatched {/g} tag which causes this error. Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- Hi, I just found one bug. I just changed one Bridge to: Shine Your light and {g}Strahle hell und{/g} Let the whole world see {g}lass die Welt es sehn.{/g} We're singing {g}Wir singen{/g} For the glory Of the risen King{/g} {g}dir zur Ehre, auferstandner Herr.{/g} Jesus And got this error: --- Exception Traceback --- Traceback (most recent call last): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 393, in onEditClick self.onSongListLoad() File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 254, in onSongListLoad item = self.buildServiceItem(self.editItem) File /usr/lib/pymodules/python2.6/openlp/core/lib/mediamanageritem.py, line 591, in buildServiceItem if self.generateSlideData(serviceItem, item, xmlVersion, remote): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 529, in generateSlideData service_item.xml_version = self.openLyrics.song_to_xml(song) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 361, in song_to_xml optional_verse, tags_element) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 503, in _add_text_with_tags_to_lines element = etree.XML File lxml.etree.pyx, line 2512, in lxml.etree.XML (src/lxml/lxml.etree.c:48057) File parser.pxi, line 1545, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:71812) File parser.pxi, line 1417, in lxml.etree._parseDoc (src/lxml/lxml.etree.c:70608) File parser.pxi, line 898, in lxml.etree._BaseParser._parseUnicodeDoc (src/lxml/lxml.etree.c:67148) File parser.pxi, line 539, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:63824) File parser.pxi, line 625, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:64745) File parser.pxi, line 565, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:64088) XMLSyntaxError: Opening and ending tag mismatch: lines line 1 and tag, line 1, column 216 --- System information --- Plattform: Linux-2.6.32-45-generic-i686-with-Ubuntu-10.04-lucid Desktop: GNOME --- Library Versions --- Python: 2.6.5 Qt4: 4.6.2 Phonon: 4.3.1 PyQt4: 4.7.2 QtWebkit: 532.4 SQLAlchemy: 0.5.8 SQLAlchemy Migrate: 0.7 BeautifulSoup: 3.1.0.1 lxml: 2.2.4 Chardet: 2.0.1 PyEnchant: 1.5.3 PySQLite: 1.0.1 Mako: 0.2.5 pyUNO bridge: 3.2 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1173749/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194610] Re: [support-system] SongShowPlus traceback
** Changed in: openlp/2.0 Status: In Progress = Fix Committed -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194610 Title: [support-system] SongShowPlus traceback Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Committed Status in OpenLP trunk series: In Progress Bug description: Hello, http://support.openlp.org/issues/2016 The attached song cannot be imported by the songshowplus importer. Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/core/ui/wizard.py, line 217, in on_current_id_changed self.performWizard() File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/songs/forms/songimportform.py, line 353, in performWizard importer.doImport() File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/songs/lib/songshowplusimport.py, line 150, in doImport self.addVerse(unicode(data, u'cp1252'), %s%s % (VerseType.tags[VerseType.Verse], verse_no)) File /usr/lib/python2.7/encodings/cp1252.py, line 15, in decode return codecs.charmap_decode(input,errors,decoding_table) UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 96: character maps to undefined To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194610/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1214875] Re: Importing an OSIS bible always results in English book names
** Changed in: openlp Milestone: None = 2.1.1 ** Changed in: openlp/2.0 Milestone: None = 2.0.2 ** Changed in: openlp/2.0 Assignee: (unassigned) = Arjan Schrijver (arjan-i) ** Changed in: openlp/2.0 Status: New = In Progress ** Changed in: openlp/2.0 Importance: Undecided = Low -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1214875 Title: Importing an OSIS bible always results in English book names Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: In Progress Bug description: In version 2.0.1, I found that when importing an OSIS format bible, the book names always end up in English. There is currently no translation done and it always defaults to the English name. Ideally a bible-specific name should be used, but we could at least use the name translated to the language of the bible. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1214875/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/bug1209515 into lp:openlp
Phill has proposed merging lp:~phill-ridout/openlp/bug1209515 into lp:openlp. Requested reviews: OpenLP Core (openlp-core) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/bug1209515/+merge/181475 Fixes Bug 1209515 by reimplementing QFileDialof.getFileNames and attempting to urldecode file paths that do not exisit -- https://code.launchpad.net/~phill-ridout/openlp/bug1209515/+merge/181475 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/bug1209515 into lp:openlp. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-06-03 17:19:42 + +++ openlp/core/lib/__init__.py 2013-08-22 06:43:35 + @@ -377,6 +377,7 @@ from registry import Registry from uistrings import UiStrings +from filedialog import FileDialog from screen import ScreenList from settings import Settings from listwidgetwithdnd import ListWidgetWithDnD === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-22 06:43:35 + @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog https://bugs.launchpad.net/openlp/+bug/1209515 + +import logging +import os +import urllib + +from PyQt4 import QtGui + +from openlp.core.lib import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): + +Subclass QFileDialog to work round a bug + +@staticmethod +def getOpenFileNames(parent, *args, **kwargs): + +Reimplement getOpenFileNames to fix the way it returns some file names that url encoded when selecting multiple +files + +files = QtGui.QFileDialog.getOpenFileNames(parent, *args, **kwargs) +file_list = [] +for file in files: +file = unicode(file) +if not os.path.exists(file): +log.info(u'File %s not found. Attempting to unquote.') +file = urllib.unquote(unicode(file)) +if not os.path.exists(file): +log.error(u'File %s not found.' % file) +QtGui.QMessageBox.information(parent, UiStrings().FileNotFound, +UiStrings().FileNotFoundMessage % file) +continue +log.info(u'File %s found.') +file_list.append(file) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-06-24 16:54:23 + +++ openlp/core/lib/mediamanageritem.py 2013-08-22 06:43:35 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import
[Openlp-core] [Bug 1209515] Re: getFileNames corrupts file names that use special chars
** Branch linked: lp:~phill-ridout/openlp/bug1209515 ** Changed in: openlp/trunk Status: New = In Progress ** Changed in: openlp/trunk Importance: Undecided = Medium ** Changed in: openlp/trunk Assignee: (unassigned) = Phill (phill-ridout) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1209515 Title: getFileNames corrupts file names that use special chars Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Committed Status in OpenLP trunk series: In Progress Bug description: This is a little bit of a strange one. I have written a little script which demonstrates this (I'll include it when I get home). Here's the issue: Use QFileDialog.getFileNames() to select a single file with a special char in its name (a '#' will do it) and it returns the file name path correctly. Ie selecting a file called #123.xml returns a list with one item #123.xml However, use QFileDialog.getFileNames() to select multiple files with at lease one file with special char in its name (a '#' will do it) and it returns the file name path incorrectly. Ie selecting a file called #123.xml and a file called abc.xml returns a list with two items %23123.xml abc.xml (Note the # has been changed in to a %23. Possible url encoding?) When we come to open the file, Python cannot find the file %23123.xml because it does not exist. This seams to be a Qt bug (I've done a few searches, but found nothing) but we could at least make some effort to see if the file actually exists before trying to open it! Reported here: http://support.openlp.org/issues/2056 and here: http://support.openlp.org/issues/1964 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1209515/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/bug1209515 into lp:openlp
Phill has proposed merging lp:~phill-ridout/openlp/bug1209515 into lp:openlp. Requested reviews: OpenLP Core (openlp-core) Related bugs: Bug #1209515 in OpenLP: getFileNames corrupts file names that use special chars https://bugs.launchpad.net/openlp/+bug/1209515 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/bug1209515/+merge/181654 Fixes Bug 1209515 by sub classing QFileDialog and reimplementing getOpenFileNames and attempting to urlunquote and file paths which do not exist -- https://code.launchpad.net/~phill-ridout/openlp/bug1209515/+merge/181654 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/bug1209515 into lp:openlp. === modified file 'openlp/core/lib/__init__.py' --- openlp/core/lib/__init__.py 2013-06-03 17:19:42 + +++ openlp/core/lib/__init__.py 2013-08-22 20:27:31 + @@ -377,6 +377,7 @@ from registry import Registry from uistrings import UiStrings +from filedialog import FileDialog from screen import ScreenList from settings import Settings from listwidgetwithdnd import ListWidgetWithDnD === added file 'openlp/core/lib/filedialog.py' --- openlp/core/lib/filedialog.py 1970-01-01 00:00:00 + +++ openlp/core/lib/filedialog.py 2013-08-22 20:27:31 + @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2013 Raoul Snyman# +# Portions copyright (c) 2008-2013 Tim Bentley, Gerald Britton, Jonathan # +# Corwin, Samuel Findlay, Michael Gorven, Scott Guerrieri, Matthias Hub, # +# Meinert Jordan, Armin Köhler, Erik Lundin, Edwin Lunando, Brian T. Meyer. # +# Joshua Miller, Stevan Pettit, Andreas Preikschat, Mattias Põldaru, # +# Christian Richter, Philip Ridout, Simon Scudder, Jeffrey Smith, # +# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Dave Warnock, # +# Frode Woldsund, Martin Zibricky # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### + + +Provide a work around for a bug in QFileDialog https://bugs.launchpad.net/openlp/+bug/1209515 + +import logging +import os +import urllib + +from PyQt4 import QtGui + +from openlp.core.lib import UiStrings + +log = logging.getLogger(__name__) + +class FileDialog(QtGui.QFileDialog): + +Subclass QFileDialog to work round a bug + +@staticmethod +def getOpenFileNames(parent, *args, **kwargs): + +Reimplement getOpenFileNames to fix the way it returns some file names that url encoded when selecting multiple +files + +files = QtGui.QFileDialog.getOpenFileNames(parent, *args, **kwargs) +file_list = [] +for file in files: +file = unicode(file) +if not os.path.exists(file): +log.info(u'File %s not found. Attempting to unquote.') +file = urllib.unquote(unicode(file)) +if not os.path.exists(file): +log.error(u'File %s not found.' % file) +QtGui.QMessageBox.information(parent, UiStrings().FileNotFound, +UiStrings().FileNotFoundMessage % file) +continue +log.info(u'File %s found.') +file_list.append(file) +return file_list \ No newline at end of file === modified file 'openlp/core/lib/mediamanageritem.py' --- openlp/core/lib/mediamanageritem.py 2013-06-24 16:54:23 + +++ openlp/core/lib/mediamanageritem.py 2013-08-22 20:27:31 + @@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui
Re: [Openlp-core] [Merge] lp:~oliwee/openlp/HideBibleVerses into lp:openlp
Line 21 the object name should be the same as the variable name. So it should be like: + self.is_verse_number_visible_check_box.setObjectName(u'is_verse_number_visible_check_box') Line 38 the label for the checkBox doesn't sound right to me. Show Verse Number sounds better. But Raoul is the English Expert, so better ask him! Line 114 - 126 could be switched around to save a level of indentation and imo makes it easier to read: +if not self.settings.is_verse_number_visible: +return u'' +if not self.settings.show_new_chapters or old_chapter != chapter: + ... Tests look good! -- https://code.launchpad.net/~oliwee/openlp/HideBibleVerses/+merge/181635 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1173749] Re: Songs with mismatching formatting tags still throw an exception
I think there is really two parts to this bug. 1. We should validate the formatting tags when a user enters a song manually: a) For 2.0 series think we should display a message box saying that the formatting tags are invalid. b) For trunk series, I was thinking it would be nice if we could highlight the actual issues. Either with a message box for example x opening tag found, but no closing tag or by actually changing the background colour of the tag to red or something. 2. For songs that are being imported or songs that are already in the database we should either remove the tag, or close it just before the next closing tag or split. -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1173749 Title: Songs with mismatching formatting tags still throw an exception Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: Confirmed Bug description: There is another bug similar to this, bug #885874, but it does not seem to have fixed the issue below. Note that there is a mismatched {/g} tag which causes this error. Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- Hi, I just found one bug. I just changed one Bridge to: Shine Your light and {g}Strahle hell und{/g} Let the whole world see {g}lass die Welt es sehn.{/g} We're singing {g}Wir singen{/g} For the glory Of the risen King{/g} {g}dir zur Ehre, auferstandner Herr.{/g} Jesus And got this error: --- Exception Traceback --- Traceback (most recent call last): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 393, in onEditClick self.onSongListLoad() File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 254, in onSongListLoad item = self.buildServiceItem(self.editItem) File /usr/lib/pymodules/python2.6/openlp/core/lib/mediamanageritem.py, line 591, in buildServiceItem if self.generateSlideData(serviceItem, item, xmlVersion, remote): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 529, in generateSlideData service_item.xml_version = self.openLyrics.song_to_xml(song) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 361, in song_to_xml optional_verse, tags_element) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 503, in _add_text_with_tags_to_lines element = etree.XML File lxml.etree.pyx, line 2512, in lxml.etree.XML (src/lxml/lxml.etree.c:48057) File parser.pxi, line 1545, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:71812) File parser.pxi, line 1417, in lxml.etree._parseDoc (src/lxml/lxml.etree.c:70608) File parser.pxi, line 898, in lxml.etree._BaseParser._parseUnicodeDoc (src/lxml/lxml.etree.c:67148) File parser.pxi, line 539, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:63824) File parser.pxi, line 625, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:64745) File parser.pxi, line 565, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:64088) XMLSyntaxError: Opening and ending tag mismatch: lines line 1 and tag, line 1, column 216 --- System information --- Plattform: Linux-2.6.32-45-generic-i686-with-Ubuntu-10.04-lucid Desktop: GNOME --- Library Versions --- Python: 2.6.5 Qt4: 4.6.2 Phonon: 4.3.1 PyQt4: 4.7.2 QtWebkit: 532.4 SQLAlchemy: 0.5.8 SQLAlchemy Migrate: 0.7 BeautifulSoup: 3.1.0.1 lxml: 2.2.4 Chardet: 2.0.1 PyEnchant: 1.5.3 PySQLite: 1.0.1 Mako: 0.2.5 pyUNO bridge: 3.2 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1173749/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Bug 1173749] Re: Songs with mismatching formatting tags still throw an exception
1a) So the users can't leave the editor before fixing the malformed tags? This would be the easiest solution, but not very user friendly. The user should have the possibility to save a song every time, even when it is malformed. Anyway, a message box should point out the user that there is an error an that the song could not be used in this state. That would just be a stop gap soloutuon for 2.0. I think this is the most as we can do seeming as we are not adding any new features to this release. Its more user friendly than the current solution of showing the user a criptic error message! 1b) This would be the advanced version of 1a, showing the wrong tags by coloring them. Nice. This would be for trunk (a.k.a 2.1) which we are adding features to. Andreas' input on this would be valuable as he was having a look at creating a WYSIWYG editor for the songs. 2. I don't think so. In my opinion there mustn't be any changes on any song without the knowledge of the user. You don't know, if there is a tag too much or too less or if this is a wrong written tag or ... In which case we should just ignore it. The last thing I would want is to have to find and show a song during spontaneous worship, and then for OpenLP to force me to edit it before showing it. The user has to decide what to do with this malformed song. Possible actions would be: Cancel import or show song in editor. Maybe ignoring the issue would be a possibility, too. Unfortunately with a lot of the song importers we just have to make assumptions about what we're importing. I don't think there is a single importer which keeps formatting data (with the exception of possibly OpenLyrics). We could log which files we had to drop any formatting from in the import wizard. -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1173749 Title: Songs with mismatching formatting tags still throw an exception Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: Confirmed Bug description: There is another bug similar to this, bug #885874, but it does not seem to have fixed the issue below. Note that there is a mismatched {/g} tag which causes this error. Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- Hi, I just found one bug. I just changed one Bridge to: Shine Your light and {g}Strahle hell und{/g} Let the whole world see {g}lass die Welt es sehn.{/g} We're singing {g}Wir singen{/g} For the glory Of the risen King{/g} {g}dir zur Ehre, auferstandner Herr.{/g} Jesus And got this error: --- Exception Traceback --- Traceback (most recent call last): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 393, in onEditClick self.onSongListLoad() File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 254, in onSongListLoad item = self.buildServiceItem(self.editItem) File /usr/lib/pymodules/python2.6/openlp/core/lib/mediamanageritem.py, line 591, in buildServiceItem if self.generateSlideData(serviceItem, item, xmlVersion, remote): File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/mediaitem.py, line 529, in generateSlideData service_item.xml_version = self.openLyrics.song_to_xml(song) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 361, in song_to_xml optional_verse, tags_element) File /usr/lib/pymodules/python2.6/openlp/plugins/songs/lib/xml.py, line 503, in _add_text_with_tags_to_lines element = etree.XML File lxml.etree.pyx, line 2512, in lxml.etree.XML (src/lxml/lxml.etree.c:48057) File parser.pxi, line 1545, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:71812) File parser.pxi, line 1417, in lxml.etree._parseDoc (src/lxml/lxml.etree.c:70608) File parser.pxi, line 898, in lxml.etree._BaseParser._parseUnicodeDoc (src/lxml/lxml.etree.c:67148) File parser.pxi, line 539, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:63824) File parser.pxi, line 625, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:64745) File parser.pxi, line 565, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:64088) XMLSyntaxError: Opening and ending tag mismatch: lines line 1 and tag, line 1, column 216 --- System information --- Plattform: Linux-2.6.32-45-generic-i686-with-Ubuntu-10.04-lucid Desktop: GNOME --- Library Versions --- Python: 2.6.5 Qt4: 4.6.2 Phonon: 4.3.1 PyQt4: 4.7.2 QtWebkit: 532.4 SQLAlchemy: 0.5.8 SQLAlchemy Migrate: 0.7 BeautifulSoup: 3.1.0.1 lxml: 2.2.4 Chardet: 2.0.1 PyEnchant: 1.5.3 PySQLite: 1.0.1 Mako: 0.2.5 pyUNO bridge: 3.2 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1173749/+subscriptions
[Openlp-core] [Bug 1215830] Re: OSIS import is line/regex based, not XML based
Do you have any sample files? If so could you attach then please. ** Tags added: bible bible-import -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1215830 Title: OSIS import is line/regex based, not XML based Status in OpenLP - Worship Presentation Software: Invalid Bug description: The OSIS import code is based on reading lines using regex, not XML- parsing, which means that when trying to import a bible in OSIS format, it wont work unless the line breaks are just right, which shouldn't be a requirement for a XML format. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1215830/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1216232] [NEW] OpenLyric exporter overwrites existing files
Public bug reported: There is two problems with this: 1. We just blindly overwrite any existing files in the export directory 2. If two songs with the same title (but different lyrics) are exported one song overwrites the other. One solution would be to ask the user if they want to over write, rename or skip with an option to apply to all. (This wouldn't really resolve the issue with same name different lyrics) Or we could time stamp the file name (Again this wouldn't really resolve the issue with same name different lyrics) We could also detect if the file exists and increment a counter in the file name. (Probably best combined with the time stamp) ** Affects: openlp Importance: Undecided Status: New ** Affects: openlp/2.0 Importance: Undecided Status: New ** Affects: openlp/trunk Importance: Undecided Status: New ** Tags: song song-export ** Tags added: song song-export ** Also affects: openlp/2.0 Importance: Undecided Status: New ** Also affects: openlp/trunk Importance: Undecided Status: New ** Changed in: openlp/2.0 Milestone: None = 2.0.3 ** Changed in: openlp/trunk Milestone: None = 2.1.1 -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216232 Title: OpenLyric exporter overwrites existing files Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: New Status in OpenLP trunk series: New Bug description: There is two problems with this: 1. We just blindly overwrite any existing files in the export directory 2. If two songs with the same title (but different lyrics) are exported one song overwrites the other. One solution would be to ask the user if they want to over write, rename or skip with an option to apply to all. (This wouldn't really resolve the issue with same name different lyrics) Or we could time stamp the file name (Again this wouldn't really resolve the issue with same name different lyrics) We could also detect if the file exists and increment a counter in the file name. (Probably best combined with the time stamp) To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216232/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1216234] [NEW] Layout style has not effect when using a second bible
Public bug reported: In the bible manager on the advanced tab. If you select a second bible the layout style combo box has no effect. We could disable it if a second translation is selected, but I think it would be nice if it worked (just given the limited space) ** Affects: openlp Importance: Undecided Status: New ** Affects: openlp/2.0 Importance: Undecided Status: New ** Affects: openlp/trunk Importance: Undecided Status: New ** Tags: bible second-version ** Also affects: openlp/2.0 Importance: Undecided Status: New ** Also affects: openlp/trunk Importance: Undecided Status: New ** Changed in: openlp/2.0 Milestone: None = 2.0.3 ** Changed in: openlp/trunk Milestone: None = 2.1.1 ** Tags added: bible second-version -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216234 Title: Layout style has not effect when using a second bible Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: New Status in OpenLP trunk series: New Bug description: In the bible manager on the advanced tab. If you select a second bible the layout style combo box has no effect. We could disable it if a second translation is selected, but I think it would be nice if it worked (just given the limited space) To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216234/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1216234] Re: Layout style has not effect when using a second bible
This also affects the Quick tab in the bible media manager -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216234 Title: Layout style has not effect when using a second bible Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: New Status in OpenLP trunk series: New Bug description: In the bible manager on the advanced tab. If you select a second bible the layout style combo box has no effect. We could disable it if a second translation is selected, but I think it would be nice if it worked (just given the limited space) To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216234/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~mahfiaz/openlp/support-2060 into lp:openlp
mahfiaz, please add 'rb' to the open statement also can we merge lines 7 8? See my fix for 2.0.2 at https://code.launchpad.net/~phill-ridout/openlp/1211913_2.0 for reference Also superfly is going to ask you for a test! -- https://code.launchpad.net/~mahfiaz/openlp/support-2060/+merge/181958 Your team OpenLP Core is requested to review the proposed merge of lp:~mahfiaz/openlp/support-2060 into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1211913] Re: Issues importing Sunday Plus FIles
** Branch linked: lp:~mahfiaz/openlp/support-2060 ** Changed in: openlp/trunk Importance: Undecided = Medium ** Changed in: openlp/trunk Status: New = In Progress ** Changed in: openlp/trunk Assignee: (unassigned) = Phill (phill-ridout) ** Changed in: openlp/trunk Assignee: Phill (phill-ridout) = mahfiaz (mahfiaz) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing Sunday Plus FIles Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Committed Status in OpenLP trunk series: In Progress Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194730] Re: [support-system] Non existing chapters reseult in traceback when searching webbibles
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194730 Title: [support-system] Non existing chapters reseult in traceback when searching webbibles Status in OpenLP - Worship Presentation Software: Invalid Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Invalid Bug description: Hello, http://support.openlp.org/issues/2006 PART 1 1) Register the New Living Translation from biblegateway. 2) Search 2 Samuel 25 Result: Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/mediaitem.py, line 656, in onQuickSearchButton self.search_results = self.plugin.manager.get_verses(bible, text) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/manager.py, line 300, in get_verses return self.db_cache[bible].get_verses(reflist, show_error) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 608, in get_verses search_results = self.get_chapter(book, reference[1]) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 636, in get_chapter return handler.get_bible_chapter(self.download_name, book, chapter) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 245, in get_bible_chapter self._clean_soup(div) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 127, in _clean_soup self._remove_elements(tag, 'sup', 'crossreference') File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 86, in _remove_elements all_tags = parent.find_all(tag, class_) AttributeError: 'NoneType' object has no attribute 'find_all' Expected: Nothing should happen, because this chapter does not exist. ===PART2=== 1) Search for 2 Samuel 1:88 Result: Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/mediaitem.py, line 656, in onQuickSearchButton self.search_results = self.plugin.manager.get_verses(bible, text) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/manager.py, line 300, in get_verses return self.db_cache[bible].get_verses(reflist, show_error) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 608, in get_verses search_results = self.get_chapter(book, reference[1]) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 636, in get_chapter return handler.get_bible_chapter(self.download_name, book, chapter) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 252, in get_bible_chapter verse_list = self._extract_verses(span_list) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 149, in _extract_verses c_verse, c_text = self._extract_verse(child) File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/bibles/lib/http.py, line 101, in _extract_verse elif tag.get('class')[0] == versenum or tag.get('class')[0] == 'versenum mid-line': TypeError: 'NoneType' object has no attribute '__getitem__' Expected: Nothing, the verse does not exist. NOTE: The tracebacks are ONLY shown, when the chapter was not already downloaded! To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194730/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1216044] Re: Lyrics will be deleteted when saving a song
** Changed in: openlp Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216044 Title: Lyrics will be deleteted when saving a song Status in OpenLP - Worship Presentation Software: Fix Released Bug description: OpenLP 2.0.2, Build 2165 When I edit a song and press the save button and open the song again for editing, all lyrics are gone. The verses are still there, but without lyrics inside. I checked the database and there are no lyrics in this song anymore. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216044/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1197376] Re: Typing a path for a theme background causes a key error
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1197376 Title: Typing a path for a theme background causes a key error Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Reported on the support system. I've also been able to reproduce this on Windows XP. Create a new theme Type a path to an image file in Click next until you get to the last page Give the theme a new name Click Finish. Error Occureed Dialog shows Having had a quick look at the code it appears that although we validate that the line edit is not empty. We don't actually read out the contents anywhere. (When the File Open dialogue is used, the path is saved in to the self.theme.background_filename variable.) It would probably be a good idea to validate that the file actually exists when leaving the background page of the wizard! http://support.openlp.org/issues/1990 OpenLP Bug Report Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- Creating new theme with image background. --- Exception Traceback --- Traceback (most recent call last): File /usr/lib/python2.7/site-packages/openlp/core/ui/themeform.py, line 645, in accept self.thememanager.saveTheme(self.theme, saveFrom, saveTo) File /usr/lib/python2.7/site-packages/openlp/core/ui/thememanager.py, line 676, in saveTheme ImageSource.Theme, QtGui.QColor(theme.background_border_color)) File /usr/lib/python2.7/site-packages/openlp/core/lib/imagemanager.py, line 228, in updateImageBorder image = self._cache[(path, source)] KeyError: (u'', 2) --- System information --- Platform: Linux-3.7.10-1.4-desktop-x86_64-with-SuSE-12.3-x86_64 Desktop: KDE SC --- Library Versions --- Python: 2.7.3 Qt4: 4.8.4 Phonon: 4.6.0 PyQt4: 4.9.6 QtWebkit: 534.34 SQLAlchemy: 0.7.10 SQLAlchemy Migrate: 0.7.2 BeautifulSoup: 3.2.1 lxml: 2.3.4 Chardet: 2.1.1 PyEnchant: 1.6.5 PySQLite: - Mako: 0.7.3 pyUNO bridge: 4.0 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1197376/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1211913] Re: Issues importing Sunday Plus FIles
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1211913 Title: Issues importing Sunday Plus FIles Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: http://support.openlp.org/issues/2059 See the above issue for sample songs. About 400 files would not import having a quick look, these songs do appear to have valid lyrics so this needs looking at closer. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1211913/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194610] Re: [support-system] SongShowPlus traceback
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194610 Title: [support-system] SongShowPlus traceback Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: Hello, http://support.openlp.org/issues/2016 The attached song cannot be imported by the songshowplus importer. Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/core/ui/wizard.py, line 217, in on_current_id_changed self.performWizard() File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/songs/forms/songimportform.py, line 353, in performWizard importer.doImport() File /home/andreas/Projects/OpenLP/trunk/openlp/plugins/songs/lib/songshowplusimport.py, line 150, in doImport self.addVerse(unicode(data, u'cp1252'), %s%s % (VerseType.tags[VerseType.Verse], verse_no)) File /usr/lib/python2.7/encodings/cp1252.py, line 15, in decode return codecs.charmap_decode(input,errors,decoding_table) UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 96: character maps to undefined To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194610/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1209515] Re: getFileNames corrupts file names that use special chars
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1209515 Title: getFileNames corrupts file names that use special chars Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: This is a little bit of a strange one. I have written a little script which demonstrates this (I'll include it when I get home). Here's the issue: Use QFileDialog.getFileNames() to select a single file with a special char in its name (a '#' will do it) and it returns the file name path correctly. Ie selecting a file called #123.xml returns a list with one item #123.xml However, use QFileDialog.getFileNames() to select multiple files with at lease one file with special char in its name (a '#' will do it) and it returns the file name path incorrectly. Ie selecting a file called #123.xml and a file called abc.xml returns a list with two items %23123.xml abc.xml (Note the # has been changed in to a %23. Possible url encoding?) When we come to open the file, Python cannot find the file %23123.xml because it does not exist. This seams to be a Qt bug (I've done a few searches, but found nothing) but we could at least make some effort to see if the file actually exists before trying to open it! Reported here: http://support.openlp.org/issues/2056 and here: http://support.openlp.org/issues/1964 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1209515/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1196926] Re: Zero division error when display size set to zero
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1196926 Title: Zero division error when display size set to zero Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Orriginally reported at: http://support.openlp.org/issues/1980 However, I've been able to trigger this by a different method: Open the Configure OpenLP dialog Set hight or width to 0 for the Override display position option Click ok. This produces this traceback: Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.mainwindow, line 1155, in screenChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.lib.renderer, line 95, in update_display File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.lib.renderer, line 355, in _calculate_default ZeroDivisionError: float division by zero To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1196926/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1174039] Re: Foil Presenter Importer fails if no verses
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1174039 Title: Foil Presenter Importer fails if no verses Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: http://support.openlp.org/issues/1931 The Foil Presenter song import if the song does not contain any verses. OpenLP Bug Report Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- i was importing foilpresenter documents --- Exception Traceback --- Traceback (most recent call last): File /Users/martin/Documents/openlp/2.0/build/pyi.darwin/OpenLP/out00-PYZ.pyz/openlp.core.ui.wizard, line 188, in onCurrentIdChanged File /Users/martin/Documents/openlp/2.0/build/pyi.darwin/OpenLP/out00-PYZ.pyz/openlp.plugins.songs.forms.songimportform, line 391, in performWizard File /Users/martin/Documents/openlp/2.0/build/pyi.darwin/OpenLP/out00-PYZ.pyz/openlp.plugins.songs.lib.foilpresenterimport, line 134, in doImport File /Users/martin/Documents/openlp/2.0/build/pyi.darwin/OpenLP/out00-PYZ.pyz/openlp.plugins.songs.lib.foilpresenterimport, line 234, in xml_to_song File /Users/martin/Documents/openlp/2.0/build/pyi.darwin/OpenLP/out00-PYZ.pyz/openlp.plugins.songs.lib.foilpresenterimport, line 427, in process_lyrics File lxml.objectify.pyx, line 226, in lxml.objectify.ObjectifiedElement._getattr__ (src/lxml/lxml.objectify.c:2894) File lxml.objectify.pyx, line 485, in lxml.objectify._lookupChildOrRaise (src/lxml/lxml.objectify.c:5428) AttributeError: no such child: strophe --- System information --- Platform: Darwin-12.2.0-x86_64-i386-32bit --- Library Versions --- Python: 2.7.3 Qt4: 4.8.3 Phonon: 4.4.0 PyQt4: 4.9.4 QtWebkit: 534.34 SQLAlchemy: 0.7.9 SQLAlchemy Migrate: 0.7.2 BeautifulSoup: 3.2.1 lxml: 2.3.2 Chardet: 2.0.1 PyEnchant: - PySQLite: - Mako: 0.7.2 pyUNO bridge: - To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1174039/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1212801] Re: Theme in Song Editor is Never Reset
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1212801 Title: Theme in Song Editor is Never Reset Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: A UI issue where the selected theme for a previously edited song is not being cleared when the next song is loaded into the edit dialog. See http://forums.openlp.org/discussion/2151/song-level-theme-affects- other-songs To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1212801/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1194622] Re: [support-system] Traceback when importing bible with disabled bible plugin in FTW
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1194622 Title: [support-system] Traceback when importing bible with disabled bible plugin in FTW Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Confirmed Bug description: Hello, http://support.openlp.org/issues/2009 1) Disable the Bible Plugin 2) Restart OpenLP (it could be that this step is not required) 3) Start the FTW 4) Make sure the bible plugin is not checked! 5) On the bible download page select a bible Result: Traceback (most recent call last): File /usr/lib/python2.7/site-packages/openlp/plugins/bibles/lib/mediaitem.py, line 407, in reloadBibles self.plugin.manager.reload_bibles() AttributeError: 'NoneType' object has no attribute 'reload_bibles' Expected: I am not sure, this is a strange case. Either the bible download page should not be shown or we should inform the user that we need to enable the bible plugin. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1194622/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1184869] Re: Webbible import fails
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1184869 Title: Webbible import fails Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: Hello, Try to import the webbible Czech ecumenic translation from bibleserver. This causes this traceback: Traceback (most recent call last): File /usr/lib/python2.7/site-packages/openlp/core/ui/wizard.py, line 188, in onCurrentIdChanged self.performWizard() File /usr/lib/python2.7/site-packages/openlp/plugins/bibles/forms/bibleimportform.py, line 714, in performWizard if importer.do_import(license_version): File /usr/lib/python2.7/site-packages/openlp/plugins/bibles/lib/http.py, line 534, in do_import books = handler.get_books_from_http(self.download_name) File /usr/lib/python2.7/site-packages/openlp/plugins/bibles/lib/http.py, line 377, in get_books_from_http book.contents[0].contents[0] for book in content IndexError: list index out of range See: http://support.openlp.org/issues/1965 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1184869/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1170435] Re: We should not warn when verse order is empty
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1170435 Title: We should not warn when verse order is empty Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Hello, The warning, that a verse order is not complete is also shown when there is no verse order entered at all. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1170435/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1160506] Re: Traceback in czech bible download
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1160506 Title: Traceback in czech bible download Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Confirmed Bug description: Recently were made available for openlp new czech bibles. - they appear in the first-time wizard - downloading any of them causes the following traceback: Traceback (most recent call last): File /home/andreas/Projects/OpenLP/trunk/openlp/core/ui/firsttimeform.py, line 222, in onCurrentIdChanged self._preWizard() File /home/andreas/Projects/OpenLP/trunk/openlp/core/ui/firsttimeform.py, line 354, in _preWizard size = self._getFileSize(u'%s%s' % (self.web, filename)) File /home/andreas/Projects/OpenLP/trunk/openlp/core/ui/firsttimeform.py, line 306, in _getFileSize return int(meta.getheaders(Content-Length)[0]) IndexError: list index out of range - this happens in 2.0.1 and in trunk - the OS and if it is source or build do not matter Possible cause could be: - wrong syntax of download.cfg - download.cfg is not properly parsed. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1160506/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1086987] Re: Log system does not log all exceptions
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1086987 Title: Log system does not log all exceptions Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Bug description: Hello, bzr checkout lp:~googol/openlp/bug-779201-2 -r 2006 You cannot start OpenLP. BUT: there is no traceback in the console, there is no traceback in the log file. I also noticed that this is not executed any longer: print 'Logging to:', filename We are calling set_up_logging before setting the log level. Doing this change reveals the traceback === modified file 'openlp/core/__init__.py' --- openlp/core/__init__.py 2012-12-04 21:50:14 + +++ openlp/core/__init__.py 2012-12-05 20:40:08 + @@ -181,8 +181,8 @@ return False def hookException(self, exctype, value, traceback): +log.exception(''.join(format_exception(exctype, value, traceback))) if not hasattr(self, u'mainWindow'): -log.exception(''.join(format_exception(exctype, value, traceback))) return if not hasattr(self, u'exceptionForm'): self.exceptionForm = ExceptionForm(self.mainWindow) Expected: We should present the output in any case to the user. Request: - first fix the printing of the log file path - make sure that the user sees the traceback in any case Regards To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1086987/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1154059] Re: OpenLP does not start due to mimetypes bug
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1154059 Title: OpenLP does not start due to mimetypes bug Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: OpenLP 2.0.1 on Windows using an alphabet other than Latin This is caused by a bug in mimetypes in the Python library: http://bugs.python.org/issue9291 and stops OpenLP from starting. It happens when another program (appears to be mainly iTunes) creates registry keys in another encoding other than Latin-1. 2013-03-11 19:19:09,450 root ERRORTraceback (most recent call last): File string, line 44, in module File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core, line 344, in main File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core, line 150, in run File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.mainwindow, line 588, in __init__ File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.media.mediacontroller, line 60, in __init__ File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.media.mediacontroller, line 125, in check_available_media_players File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.media.phononplayer, line 72, in __init__ File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\mimetypes, line 355, in init File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\mimetypes, line 259, in read_windows_registry File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\mimetypes, line 249, in enum_types UnicodeDecodeError: 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in range(128) None See: http://support.openlp.org/issues/1911 To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1154059/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1114457] Re: Easy Worship importer progress bar is out
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1114457 Title: Easy Worship importer progress bar is out Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: When importing the sample songs that come with the easy worship trial, the progress bar reaches 100% when only half way through. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1114457/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 645452] Re: Adjust Line Spacing does not work
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/645452 Title: Adjust Line Spacing does not work Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Just edited a theme, and tried adjusting line spacing, but there was no apparent difference than before! Windows 7, Installer rev 1035. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/645452/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1047995] Re: Inconvenient focus in Song Editor when adding authors
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1047995 Title: Inconvenient focus in Song Editor when adding authors Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: When adding an author to a song in Song Editor the button in focus is 'Save'. This is inconvenient when adding an author because when hitting Enter to add the author to the song the error message You need to have an author for this song appears. This is true on both OS X and Ubuntu when using latest build bzr2050. Expected behaviour: When the Add author field has text in it the 'Add to Song' button should be in focus so that when hitting Enter the author is added. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1047995/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1098075] Re: Cancelling character table dialogue in importer causes OpenLP to crash
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1098075 Title: Cancelling character table dialogue in importer causes OpenLP to crash Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: See: http://support.openlp.org/issues/1833 I was importing songs from EasyWorship into LP. The import wizard starts to ask which character table should be used.But after a few minutes, openLP asked me it again and again and againWhen I cancel this question, this report function for errors appears. After a bit of investigation, it appears that in the strip_rtf function we are not handling if the user cancels the QInputDialog in get_encoding. For the problem reported, it looks likely that the user selected the wrong encoding. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1098075/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1112587] Re: Display verses on live tool bar ignored
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1112587 Title: Display verses on live tool bar ignored Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Hello, Affects trunk r2165 and 2.0. 1) Enable Settings - Songs - Display verses on live tool bar 2) Display a song without background audio. Result: The verses are not displayed. BUT: Display a song with background audio and it is visible. Expected: Verses should be displayed in the toolbar. NOTE: The option is completely ignored. When you disable it the behaviour is the same. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1112587/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1135392] Re: Catch all error trap in editsongform.py, _processLyrics
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1135392 Title: Catch all error trap in editsongform.py, _processLyrics Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Hi, I have been investigating a bug that has been reported on the support tracker (http://support.openlp.org/issues/1906) and I have traced it back to http://bazaar.launchpad.net/~openlp- core/openlp/release-2.0/view/head:/openlp/plugins/songs/forms/editsongform.py#L941 I have seen reports like this before on the support tracker, but have only just been able to narrow it down thanks to this comment: https://bugs.launchpad.net/openlp/+bug/1051890/comments/4 by Jonathan It appears that this catch all maybe responsible for us being unable to fix several different bugs. So as Jonathan says: We shouldn't ignore/hide these errors, and ideally want to fix the original cause. Either that or re-throw the error I've created this separate report as Jonathan's comments were kind of hidden, but to me seem quite important. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1135392/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1096450] Re: Opensong Import - some lines missing
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1096450 Title: Opensong Import - some lines missing Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: When the following verse is imported from following Opensong format lyrics[V1] 1. Gud vår Gud, vi lovar dig, vi bekänner dig, o Herre, dig som är till evig tid tillber ändligheternas släkten. Hela jorden, hav och land, ärar, fader vår, ditt namn. [V2] It create the following OpenLP format: ---[Vers:1]--- . Gud vår Gud, vi lovar dig, vi bekänner dig, o Herre, dig som är till evig tid tillber ändligheternas släkten. Hela jorden, hav och land, ärar, fader vår, ditt namn. [---] . Gud vår Gud, vi lovar dig, vi bekänner dig, o Herre, dig som är till evig tid tillber ändligheternas släkten. Hela jorden, hav och land, ärar, fader vår, ditt namn. ---[Vers:2]--- This happen on Version 1.9.12 and 2.0 of OpenLP and both for Windows and Mac. There other cases when some lines are missing or not imported properly: - line starting with '[' - this line is missing in the lyrics - line starting with '.' - these lines indicate chords and it should be ignored when importing into openlp. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1096450/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1095699] Re: check_dependencies.py fails on version numbers with letters
** Changed in: openlp/trunk Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1095699 Title: check_dependencies.py fails on version numbers with letters Status in OpenLP - Worship Presentation Software: Fix Released Status in OpenLP 2.0 series: Fix Committed Status in OpenLP trunk series: Fix Released Bug description: The check_dependencies.py script fails when a software package is checked that has other characters than only numbers in the version. My example: sqlalchemy was installed with easy_install on Windows XP. The version number of sqlalchemy is 0.8.0b2 check_dependencies.py fails with the following stacktrace: Traceback (most recent call last): File C:\footer_onlytitle\scripts\check_dependencies.py, line 190, in module main() File C:\footer_onlytitle\scripts\check_dependencies.py, line 185, in main verify_versions() File C:\footer_onlytitle\scripts\check_dependencies.py, line 124, in verify_versions check_vers(sqlalchemy.__version__, VERS['sqlalchemy'], 'sqlalchemy') File C:\footer_onlytitle\scripts\check_dependencies.py, line 94, in check_vers version = map(int, version) ValueError: invalid literal for int() with base 10: '0b2' To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1095699/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1147307] Re: Transtion + fast slide changes + ESC causes screen to open again
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1147307 Title: Transtion + fast slide changes + ESC causes screen to open again Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Hello, 2.0 1) Enable transition 2) Send a song live 3) Change a slide 4) Press ESC before the transition is completed Result: The display opens again To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1147307/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1197659] Re: Delete button in Configure Formatting Tags gets focus
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1197659 Title: Delete button in Configure Formatting Tags gets focus Status in OpenLP - Worship Presentation Software: In Progress Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: In Progress Bug description: http://support.openlp.org/issues/2005 When adding a new formatting tag, the delete button gets focus. It seems like the Save button should get focus instead. How to reproduce. Open Configure Formatting Tags dialog. Click new. Click in one of the line edits (Delete button gets focus) Change the text Press enter (I would assume that this would save the new tag) New tag gets deleted To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1197659/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1128376] Re: Configure shortcuts has two items called settings
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1128376 Title: Configure shortcuts has two items called settings Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: Configure shortcuts dialog has two items called Settings under the settings section. see: https://docs.google.com/file/d/0Bx0czEbkLvYFY3h1bm1XVkhia2c/edit?usp=sharing To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1128376/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1146964] Re: Attach button on exception form does not work
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1146964 Title: Attach button on exception form does not work Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Confirmed Bug description: Hello, 1) Trigger a traceback 2) Click the Attach File(s) button 3) Try to select a file Result: You cannot select any file. Only directories are shown. Expected: You should be able to select one or more files. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1146964/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1214875] Re: Importing an OSIS bible always results in English book names
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1214875 Title: Importing an OSIS bible always results in English book names Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: New Bug description: In version 2.0.1, I found that when importing an OSIS format bible, the book names always end up in English. There is currently no translation done and it always defaults to the English name. Ideally a bible-specific name should be used, but we could at least use the name translated to the language of the bible. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1214875/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1215302] Re: Add .divx to list of video extensions
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1215302 Title: Add .divx to list of video extensions Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Confirmed Bug description: See http://forums.openlp.org/discussion/2169/divx-support To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1215302/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1125956] Re: SongShowPlus importer does not handle verse labels such as 1A
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1125956 Title: SongShowPlus importer does not handle verse labels such as 1A Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: See http://support.openlp.org/issues/1897 for attached song file *OpenLP Bug Report* Version: {u'full': u'2.0.1', u'version': u'2.0.1', u'build': None} --- Details of the Exception. --- Importing song show plus songs (.sbsong) from jump drive. --- Exception Traceback --- Traceback (most recent call last): File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.core.ui.wizard, line 188, in onCurrentIdChanged File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.forms.songimportform, line 391, in performWizard File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songshowplusimport, line 181, in doImport File D:\OpenLP_Code\release-2.0.1\build\pyi.win32\OpenLP\out00-PYZ.pyz\openlp.plugins.songs.lib.songimport, line 268, in addVerse ValueError: invalid literal for int() with base 10: '1A' --- System information --- Platform: Windows-XP-5.1.2600-SP3 --- Library Versions --- Python: 2.7.3 Qt4: 4.7.3 Phonon: 4.4.0 PyQt4: 4.8.5 QtWebkit: 533.3 SQLAlchemy: 0.7.7 SQLAlchemy Migrate: 0.7.2 BeautifulSoup: 3.2.1 lxml: 2.3.0 Chardet: 1.0.1 PyEnchant: 1.6.5 PySQLite: 1.0.1 Mako: 0.7.0 pyUNO bridge: - To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1125956/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1204629] Re: Typing a path for a theme background does not set background
** Changed in: openlp/2.0 Status: Fix Committed = Fix Released -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1204629 Title: Typing a path for a theme background does not set background Status in OpenLP - Worship Presentation Software: Fix Committed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Fix Committed Bug description: If you type an image path in to the line edit on the theme editor the background is not set/changed. This is after the recent fix (https://bugs.launchpad.net/openlp/+bug/1197376) that validates that it is a valid image file. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1204629/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1216785] [NEW] Adding notes to service causes error on save
Public bug reported: http://support.openlp.org/issues/2066 With 2.0.2 add a note to an item in the service manager. Click File-Save: Follow traceback pops up: --- Exception Traceback --- Traceback (most recent call last): File /usr/share/openlp/openlp/core/ui/servicemanager.py, line 546, in saveFile service_content = json.dumps(service) File /usr/lib/python2.7/json/__init__.py, line 233, in dumps return _default_encoder.encode(obj) File /usr/lib/python2.7/json/encoder.py, line 203, in encode chunks = self.iterencode(o, _one_shot=True) File /usr/lib/python2.7/json/encoder.py, line 266, in iterencode return _iterencode(o, 0) File /usr/lib/python2.7/json/encoder.py, line 180, in default raise TypeError(repr(o)is not JSON serializable) TypeError: PyQt4.QtCore.QString(u'After the sermon.') is not JSON serializable ** Affects: openlp Importance: Undecided Status: New ** Affects: openlp/2.0 Importance: High Status: Confirmed ** Affects: openlp/trunk Importance: Undecided Status: New ** Tags: notes service support-system ** Also affects: openlp/2.0 Importance: Undecided Status: New ** Also affects: openlp/trunk Importance: Undecided Status: New ** Changed in: openlp/2.0 Status: New = Confirmed ** Changed in: openlp/2.0 Importance: Undecided = High ** Changed in: openlp/2.0 Milestone: None = 2.0.3 ** Changed in: openlp/trunk Milestone: None = 2.1.1 ** Tags added: notes service support-system -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216785 Title: Adding notes to service causes error on save Status in OpenLP - Worship Presentation Software: New Status in OpenLP 2.0 series: Confirmed Status in OpenLP trunk series: New Bug description: http://support.openlp.org/issues/2066 With 2.0.2 add a note to an item in the service manager. Click File-Save: Follow traceback pops up: --- Exception Traceback --- Traceback (most recent call last): File /usr/share/openlp/openlp/core/ui/servicemanager.py, line 546, in saveFile service_content = json.dumps(service) File /usr/lib/python2.7/json/__init__.py, line 233, in dumps return _default_encoder.encode(obj) File /usr/lib/python2.7/json/encoder.py, line 203, in encode chunks = self.iterencode(o, _one_shot=True) File /usr/lib/python2.7/json/encoder.py, line 266, in iterencode return _iterencode(o, 0) File /usr/lib/python2.7/json/encoder.py, line 180, in default raise TypeError(repr(o)is not JSON serializable) TypeError: PyQt4.QtCore.QString(u'After the sermon.') is not JSON serializable To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216785/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610 into lp:openlp
Phill has proposed merging lp:~phill-ridout/openlp/1194610 into lp:openlp. Requested reviews: Tim Bentley (trb143) Raoul Snyman (raoul-snyman) Related bugs: Bug #1194610 in OpenLP: [support-system] SongShowPlus traceback https://bugs.launchpad.net/openlp/+bug/1194610 For more details, see: https://code.launchpad.net/~phill-ridout/openlp/1194610/+merge/182491 Fixes #1194610 by detecting the encoding rather than assuming it Adds a helper module to help test songs being imported. -- https://code.launchpad.net/~phill-ridout/openlp/1194610/+merge/182491 Your team OpenLP Core is subscribed to branch lp:openlp. === modified file 'openlp/plugins/songs/lib/songshowplusimport.py' --- openlp/plugins/songs/lib/songshowplusimport.py 2013-03-31 10:13:56 + +++ openlp/plugins/songs/lib/songshowplusimport.py 2013-08-27 20:31:09 + @@ -30,6 +30,7 @@ The :mod:`songshowplusimport` module provides the functionality for importing SongShow Plus songs into the OpenLP database. +import chardet import os import logging import re @@ -134,41 +135,41 @@ log.debug(length_descriptor_size) data = song_data.read(length_descriptor) if block_key == TITLE: -self.title = unicode(data, u'cp1252') +self.title = self.decode(data) elif block_key == AUTHOR: authors = data.split( / ) for author in authors: if author.find(,) !=-1: authorParts = author.split(, ) author = authorParts[1] + + authorParts[0] -self.parse_author(unicode(author, u'cp1252')) +self.parse_author(self.decode(author)) elif block_key == COPYRIGHT: -self.addCopyright(unicode(data, u'cp1252')) +self.addCopyright(self.decode(data)) elif block_key == CCLI_NO: self.ccliNumber = int(data) elif block_key == VERSE: -self.addVerse(unicode(data, u'cp1252'), %s%s % (VerseType.tags[VerseType.Verse], verse_no)) +self.addVerse(self.decode(data), %s%s % (VerseType.tags[VerseType.Verse], verse_no)) elif block_key == CHORUS: -self.addVerse(unicode(data, u'cp1252'), %s%s % (VerseType.tags[VerseType.Chorus], verse_no)) +self.addVerse(self.decode(data), %s%s % (VerseType.tags[VerseType.Chorus], verse_no)) elif block_key == BRIDGE: -self.addVerse(unicode(data, u'cp1252'), %s%s % (VerseType.tags[VerseType.Bridge], verse_no)) +self.addVerse(self.decode(data), %s%s % (VerseType.tags[VerseType.Bridge], verse_no)) elif block_key == TOPIC: -self.topics.append(unicode(data, u'cp1252')) +self.topics.append(self.decode(data)) elif block_key == COMMENTS: -self.comments = unicode(data, u'cp1252') +self.comments = self.decode(data) elif block_key == VERSE_ORDER: verse_tag = self.to_openlp_verse_tag(data, True) if verse_tag: if not isinstance(verse_tag, unicode): -verse_tag = unicode(verse_tag, u'cp1252') +verse_tag = self.decode(verse_tag) self.ssp_verse_order_list.append(verse_tag) elif block_key == SONG_BOOK: -self.songBookName = unicode(data, u'cp1252') +self.songBookName = self.decode(data) elif block_key == SONG_NUMBER: self.songNumber = ord(data) elif block_key == CUSTOM_VERSE: verse_tag = self.to_openlp_verse_tag(verse_name) -self.addVerse(unicode(data, u'cp1252'), verse_tag) +self.addVerse(self.decode(data), verse_tag) else: log.debug(Unrecognised blockKey: %s, data: %s % (block_key, data)) song_data.seek(next_block_starts) @@ -206,3 +207,9 @@ verse_tag = VerseType.tags[VerseType.Other] verse_number = self.other_list[verse_name] return verse_tag + verse_number + +def decode(self, data): +try: +return unicode(data, chardet.detect(data)['encoding']) +except: +return unicode(data, u'cp1252') \ No newline at end of file === added file 'tests/functional/openlp_plugins/songs/songfileimporthelper.py' --- tests/functional/openlp_plugins/songs/songfileimporthelper.py 1970-01-01 00:00:00 + +++ tests/functional/openlp_plugins/songs/songfileimporthelper.py 2013-08-27 20:31:09 + @@ -0,0 +1,113 @@ + +The :mod:`songfileimporthelper` modules provides a helper class
[Openlp-core] [Bug 1216785] Re: Adding notes to service causes error on save
Reported again at: http://support.openlp.org/issues/2071 -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1216785 Title: Adding notes to service causes error on save Status in OpenLP - Worship Presentation Software: Won't Fix Status in OpenLP 2.0 series: Fix Committed Bug description: http://support.openlp.org/issues/2066 With 2.0.2 add a note to an item in the service manager. Click File-Save: Follow traceback pops up: --- Exception Traceback --- Traceback (most recent call last): File /usr/share/openlp/openlp/core/ui/servicemanager.py, line 546, in saveFile service_content = json.dumps(service) File /usr/lib/python2.7/json/__init__.py, line 233, in dumps return _default_encoder.encode(obj) File /usr/lib/python2.7/json/encoder.py, line 203, in encode chunks = self.iterencode(o, _one_shot=True) File /usr/lib/python2.7/json/encoder.py, line 266, in iterencode return _iterencode(o, 0) File /usr/lib/python2.7/json/encoder.py, line 180, in default raise TypeError(repr(o)is not JSON serializable) TypeError: PyQt4.QtCore.QString(u'After the sermon.') is not JSON serializable To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1216785/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1194610 into lp:openlp
Review: Needs Fixing -- https://code.launchpad.net/~phill-ridout/openlp/1194610/+merge/182491 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~phill-ridout/openlp/song_helper into lp:openlp
Phill has proposed merging lp:~phill-ridout/openlp/song_helper into lp:openlp. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~phill-ridout/openlp/song_helper/+merge/183034 Adds a helper class to reduce the work in testing the actual import of song files. Changed SongShowPlus importer so that it uses this new class -- https://code.launchpad.net/~phill-ridout/openlp/song_helper/+merge/183034 Your team OpenLP Core is requested to review the proposed merge of lp:~phill-ridout/openlp/song_helper into lp:openlp. === added file 'tests/functional/openlp_plugins/songs/songfileimporthelper.py' --- tests/functional/openlp_plugins/songs/songfileimporthelper.py 1970-01-01 00:00:00 + +++ tests/functional/openlp_plugins/songs/songfileimporthelper.py 2013-08-29 21:23:16 + @@ -0,0 +1,113 @@ + +The :mod:`songfileimporthelper` modules provides a helper class and methods to easily enable testing the import of +song files from third party applications. + +import json +from unittest import TestCase +from mock import patch, MagicMock + +class SongImportTestHelper(TestCase): + +This class is designed to be a helper class to reduce repition when testing the import of song files. + +def __init__(self, *args, **kwargs): +self.importer_module = __import__( +u'openlp.plugins.songs.lib.%s' % self.importer_module_name, fromlist=[self.importer_class_name]) +self.importer_class = getattr(self.importer_module, self.importer_class_name) +TestCase.__init__(self, *args, **kwargs) + +def setUp(self): + +Patch and set up the mocks required. + +self.add_copyright_patcher = patch( +u'openlp.plugins.songs.lib.%s.%s.addCopyright' % (self.importer_module_name, self.importer_class_name)) +self.add_verse_patcher = patch( +u'openlp.plugins.songs.lib.%s.%s.addVerse' % (self.importer_module_name, self.importer_class_name)) +self.finish_patcher = patch( +u'openlp.plugins.songs.lib.%s.%s.finish' % (self.importer_module_name, self.importer_class_name)) +self.parse_author_patcher = patch( +u'openlp.plugins.songs.lib.%s.%s.parse_author' % (self.importer_module_name, self.importer_class_name)) +self.song_import_patcher = patch(u'openlp.plugins.songs.lib.%s.SongImport' % self.importer_module_name) +self.mocked_add_copyright = self.add_copyright_patcher.start() +self.mocked_add_verse = self.add_verse_patcher.start() +self.mocked_finish = self.finish_patcher.start() +self.mocked_parse_author = self.parse_author_patcher.start() +self.mocked_song_importer = self.song_import_patcher.start() +self.mocked_manager = MagicMock() +self.mocked_import_wizard = MagicMock() +self.mocked_finish.return_value = True + +def tearDown(self): + +Clean up + +self.add_copyright_patcher.stop() +self.add_verse_patcher.stop() +self.finish_patcher.stop() +self.parse_author_patcher.stop() +self.song_import_patcher.stop() + +def load_external_result_data(self, file_name): + +A method to load and return an object containing the song data from an external file. + +result_file = open(file_name, 'rb') +return json.loads(result_file.read()) + +def file_import(self, source_file_name, result_data): + +Import the given file and check that it has imported correctly + +importer = self.importer_class(self.mocked_manager) +importer.import_wizard = self.mocked_import_wizard +importer.stop_import_flag = False +importer.topics = [] + +# WHEN: Importing the source file +importer.import_source = [source_file_name] +add_verse_calls = self.get_data(result_data, u'verses') +author_calls = self.get_data(result_data, u'authors') +ccli_number = self.get_data(result_data, u'ccli_number') +comments = self.get_data(result_data, u'comments') +song_book_name = self.get_data(result_data, u'song_book_name') +song_copyright = self.get_data(result_data, u'copyright') +song_number = self.get_data(result_data, u'song_number') +title = self.get_data(result_data, u'title') +topics = self.get_data(result_data, u'topics') +verse_order_list = self.get_data(result_data, u'verse_order_list') + +# THEN: doImport should return none, the song data should be as expected, and finish should have been +# called. +self.assertIsNone(importer.doImport(), u'doImport should return None when it has completed') +self.assertEquals(importer.title, title, u'title for %s should be %s' % (source_file_name, title)) +for author in author_calls: +self.mocked_parse_author.assert_any_call(author) +if song_copyright
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/song_helper into lp:openlp
Please resubmit due to the age of this request and additionally it will need converting to Python 3 as on 1/9/2013 truck will be converted. Tim and co., would you mind commenting on the way I'm doing things? Not particularly the actual code but the concept? -- https://code.launchpad.net/~phill-ridout/openlp/song_helper/+merge/183034 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1197659 into lp:openlp
OK, I'll assign the bug to you! On 31 Aug 2013 16:03, Tim Bentley tim.bent...@gmail.com wrote: Review: Needs Fixing Please leave this as I am re-writing the dialog. -- https://code.launchpad.net/~phill-ridout/openlp/1197659/+merge/180743 You are the owner of lp:~phill-ridout/openlp/1197659. -- https://code.launchpad.net/~phill-ridout/openlp/1197659/+merge/180743 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~phill-ridout/openlp/1197659 into lp:openlp
I'll assign the bug to you then? -- https://code.launchpad.net/~phill-ridout/openlp/1197659/+merge/180743 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Bug 1197659] Re: Delete button in Configure Formatting Tags gets focus
** Changed in: openlp/trunk Status: In Progress = Confirmed ** Changed in: openlp/trunk Assignee: Phill (phill-ridout) = Tim Bentley (trb143) -- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1197659 Title: Delete button in Configure Formatting Tags gets focus Status in OpenLP - Worship Presentation Software: Confirmed Status in OpenLP 2.0 series: Fix Released Status in OpenLP trunk series: Confirmed Bug description: http://support.openlp.org/issues/2005 When adding a new formatting tag, the delete button gets focus. It seems like the Save button should get focus instead. How to reproduce. Open Configure Formatting Tags dialog. Click new. Click in one of the line edits (Delete button gets focus) Change the text Press enter (I would assume that this would save the new tag) New tag gets deleted To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1197659/+subscriptions ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp