- 1.1.16:

- Ignore com.apple.print.recoverable state reason.
- Prevent traceback in found_network_printer_callback (bug #547765).
- Use asynchronous connection class for fetching device lists (bug
    #549749).
- Prefer Foomatic/hpijs to hpcups for the time being.
- Clear device screen each time a new dialog is presented.
- Constraints handling fix.
This commit is contained in:
Tim Waugh 2009-12-22 16:15:04 +00:00
parent 499920f427
commit b4e21b9510
13 changed files with 17 additions and 179 deletions

View File

@ -208,3 +208,4 @@ system-config-printer-1.1.13.tar.xz
system-config-printer-1.1.14.tar.xz
system-config-printer-1.1.15.tar.xz
pycups-1.9.47.tar.bz2
system-config-printer-1.1.16.tar.xz

View File

@ -1,3 +1,3 @@
ac8f98a40b0fc4b6ab4470f10489887a pysmbc-1.0.6.tar.bz2
9ae89a1293d78fafe1edf4d37fd0f54b system-config-printer-1.1.15.tar.xz
b2c94db15c916e0776e320addb279ba8 pycups-1.9.47.tar.bz2
8c2643d8a670eaadc3fa6890149b753b system-config-printer-1.1.16.tar.xz

Binary file not shown.

View File

@ -1,12 +0,0 @@
diff -up system-config-printer-1.1.15/system-config-printer.py.browsepoll system-config-printer-1.1.15/system-config-printer.py
--- system-config-printer-1.1.15/system-config-printer.py.browsepoll 2009-11-30 12:43:08.000000000 +0000
+++ system-config-printer-1.1.15/system-config-printer.py 2009-12-03 17:09:32.221925957 +0000
@@ -3379,7 +3379,7 @@ class GUI(GtkGUI, monitor.Watcher):
self.setDataButtonState()
def save_serversettings(self):
- setting_dict = self.server_settings.copy()
+ setting_dict = dict()
for widget, setting in [
(self.chkServerBrowse, cups.CUPS_SERVER_REMOTE_PRINTERS),
(self.chkServerShare, cups.CUPS_SERVER_SHARE_PRINTERS),

View File

@ -1,12 +0,0 @@
diff -up system-config-printer-1.1.15/AdvancedServerSettings.py.cupsd.conf-parser system-config-printer-1.1.15/AdvancedServerSettings.py
--- system-config-printer-1.1.15/AdvancedServerSettings.py.cupsd.conf-parser 2009-09-01 12:08:33.000000000 +0100
+++ system-config-printer-1.1.15/AdvancedServerSettings.py 2009-12-03 17:18:29.015925153 +0000
@@ -154,7 +154,7 @@ class AdvancedServerSettingsDialog:
self.browse_poll = []
f.seek (0)
for line in f.readlines ():
- l = line.lower ()
+ l = line.lower ().strip ()
if l.startswith ("preservejobhistory "):
try:
preserve_job_history = parse_yesno (l)

View File

@ -1,12 +0,0 @@
diff -up system-config-printer-1.1.15/statereason.py.localize-statereason system-config-printer-1.1.15/statereason.py
--- system-config-printer-1.1.15/statereason.py.localize-statereason 2009-11-30 12:43:08.000000000 +0000
+++ system-config-printer-1.1.15/statereason.py 2009-12-03 14:57:17.285051607 +0000
@@ -138,7 +138,7 @@ class StateReason:
reason = localized_reason[:-2]
else:
reason = self.get_reason()
- except cups.IPPError:
+ except (cups.IPPError, RuntimeError):
reason = self.get_reason()
text = _("Printer '%s': '%s'.") % (self.get_printer (), reason)

View File

@ -1,17 +0,0 @@
diff -up system-config-printer-1.1.15/system-config-printer.py.lpd-uri system-config-printer-1.1.15/system-config-printer.py
--- system-config-printer-1.1.15/system-config-printer.py.lpd-uri 2009-12-08 14:00:31.646480878 +0000
+++ system-config-printer-1.1.15/system-config-printer.py 2009-12-08 14:00:35.027606138 +0000
@@ -5767,10 +5767,10 @@ class NewPrinterGUI(GtkGUI):
(scheme, rest) = urllib.splittype (device.uri)
(hostport, rest) = urllib.splithost (rest)
(queue, rest) = urllib.splitquery (rest)
- if queue[0] == '/':
- queue = queue[1:]
-
if queue != '':
+ if queue[0] == '/':
+ queue = queue[1:]
+
device.menuentry = _("LPD/LPR queue '%s'") % queue
else:
device.menuentry = _("LPD/LPR queue")

View File

@ -1,20 +0,0 @@
diff -up system-config-printer-1.1.15/system-config-printer.py.selection-browse system-config-printer-1.1.15/system-config-printer.py
--- system-config-printer-1.1.15/system-config-printer.py.selection-browse 2009-12-16 16:54:39.000000000 +0100
+++ system-config-printer-1.1.15/system-config-printer.py 2009-12-18 11:46:36.000000000 +0100
@@ -646,6 +646,7 @@ class GUI(GtkGUI, monitor.Watcher):
# setup some lists
m = gtk.SELECTION_MULTIPLE
s = gtk.SELECTION_SINGLE
+ b = gtk.SELECTION_BROWSE
for name, treeview, selection_mode in (
(_("Members of this class"), self.tvClassMembers, m),
(_("Others"), self.tvClassNotMembers, m),
@@ -656,7 +657,7 @@ class GUI(GtkGUI, monitor.Watcher):
(_("Makes"), np.tvNPMakes,s),
(_("Models"), np.tvNPModels,s),
(_("Drivers"), np.tvNPDrivers,s),
- (_("Downloadable Drivers"), np.tvNPDownloadableDrivers,s),
+ (_("Downloadable Drivers"), np.tvNPDownloadableDrivers, b),
(_("Users"), self.tvPUsers, m),
):

View File

@ -1,18 +0,0 @@
diff -up system-config-printer-1.1.15/jobviewer.py.short-lived-states system-config-printer-1.1.15/jobviewer.py
--- system-config-printer-1.1.15/jobviewer.py.short-lived-states 2009-11-30 12:43:08.000000000 +0000
+++ system-config-printer-1.1.15/jobviewer.py 2009-12-09 10:53:20.936016882 +0000
@@ -1430,7 +1430,13 @@ class JobViewer (GtkGUI, monitor.Watcher
try:
notification = self.state_reason_notifications[tuple]
if notification.get_data ('closed') != True:
- notification.close ()
+ try:
+ notification.close ()
+ except glib.GError:
+ # Can fail if the notification wasn't even shown
+ # yet (as in bug #545733).
+ pass
+
del self.state_reason_notifications[tuple]
self.set_statusicon_visibility ()
except KeyError:

View File

@ -1,21 +0,0 @@
diff -up system-config-printer-1.1.15/troubleshoot/ErrorLogCheckpoint.py.debugcancel system-config-printer-1.1.15/troubleshoot/ErrorLogCheckpoint.py
--- system-config-printer-1.1.15/troubleshoot/ErrorLogCheckpoint.py.debugcancel 2009-09-01 13:08:33.000000000 +0200
+++ system-config-printer-1.1.15/troubleshoot/ErrorLogCheckpoint.py 2009-12-14 17:16:32.000000000 +0100
@@ -23,7 +23,7 @@ import cups
import os
import tempfile
import time
-from timedops import TimedOperation
+from timedops import TimedOperation, OperationCanceled
from base import *
class ErrorLogCheckpoint(Question):
def __init__ (self, troubleshooter):
@@ -162,7 +162,7 @@ class ErrorLogCheckpoint(Question):
self.op = TimedOperation (self.authconn.adminGetServerSettings,
parent=parent)
settings = self.op.run ()
- except cups.IPPError:
+ except (cups.IPPError, OperationCanceled):
self.troubleshooter.ready ()
self.forward_allowed = True
handler (button)

View File

@ -1,47 +0,0 @@
diff -up system-config-printer-1.1.15/troubleshoot/__init__.py.troubleshooter-traceback system-config-printer-1.1.15/troubleshoot/__init__.py
--- system-config-printer-1.1.15/troubleshoot/__init__.py.troubleshooter-traceback 2009-09-30 09:35:12.000000000 +0100
+++ system-config-printer-1.1.15/troubleshoot/__init__.py 2009-12-07 15:01:03.200971984 +0000
@@ -178,6 +178,7 @@ class Troubleshooter:
return text.rstrip () + '\n'
def busy (self):
+ self._in_module_call = True
self.forward.set_sensitive (False)
self.back.set_sensitive (False)
gdkwin = self.get_window ().window
@@ -187,6 +188,7 @@ class Troubleshooter:
gtk.main_iteration ()
def ready (self):
+ self._in_module_call = False
gdkwin = self.get_window ().window
if gdkwin:
gdkwin.set_cursor (gtk.gdk.Cursor (gtk.gdk.LEFT_PTR))
@@ -291,13 +293,11 @@ class Troubleshooter:
def _display (self, question):
result = False
- self._in_module_call = True
try:
result = question.display ()
except:
self._report_traceback ()
- self._in_module_call = False
question.displayed = result
return result
@@ -310,13 +310,11 @@ class Troubleshooter:
def _collect_answer (self, question):
answer = {}
- self._in_module_call = True
try:
answer = question.collect_answer ()
except:
self._report_traceback ()
- self._in_module_call = False
return answer
QUESTIONS = ["Welcome",

View File

@ -6,8 +6,8 @@
Summary: A printer administration tool
Name: system-config-printer
Version: 1.1.15
Release: 9%{?dist}
Version: 1.1.16
Release: 1%{?dist}
License: GPLv2+
URL: http://cyberelk.net/tim/software/system-config-printer/
Group: System Environment/Base
@ -16,14 +16,6 @@ Source1: http://cyberelk.net/tim/data/pycups/pycups-%{pycups_version}.tar.bz2
Source2: http://cyberelk.net/tim/data/pysmbc/pysmbc-%{pysmbc_version}.tar.bz2
Patch1: system-config-printer-no-epydoc.patch
Patch2: system-config-printer-localize-statereason.patch
Patch3: system-config-printer-browsepoll.patch
Patch4: system-config-printer-cupsd.conf-parser.patch
Patch5: system-config-printer-troubleshooter-traceback.patch
Patch6: system-config-printer-lpd-uri.patch
Patch7: system-config-printer-short-lived-states.patch
Patch8: system-config-printer-troubleshooter-debugcancel.patch
Patch9: system-config-printer-selection-browse.patch
BuildRequires: cups-devel >= 1.2
BuildRequires: python-devel >= 2.4
@ -84,14 +76,6 @@ printers.
%prep
%setup -q -a 1 -a 2
%patch1 -p1 -b .no-epydoc
%patch2 -p1 -b .localize-statereason
%patch3 -p1 -b .browsepoll
%patch4 -p1 -b .cupsd.conf-parser
%patch5 -p1 -b .troubleshooter-traceback
%patch6 -p1 -b .lpd-uri
%patch7 -p1 -b .short-lived-states
%patch8 -p1 -b .troubleshooter-debugcancel
%patch9 -p1 -b .selection-browse
%build
%configure --with-udev-rules --with-polkit-1
@ -157,6 +141,10 @@ rm -rf %buildroot
%{_bindir}/my-default-printer
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/AdvancedServerSettings.py*
%{_datadir}/%{name}/asyncconn.py*
%{_datadir}/%{name}/asyncipp.py*
%{_datadir}/%{name}/asyncpk0.py*
%{_datadir}/%{name}/asyncpk1.py*
%{_datadir}/%{name}/authconn.py*
%{_datadir}/%{name}/config.py*
%{_datadir}/%{name}/cupspk.py*
@ -204,8 +192,16 @@ rm -rf %buildroot
exit 0
%changelog
* Tue Dec 22 2009 Tim Waugh <twaugh@redhat.com>
* Tue Dec 22 2009 Tim Waugh <twaugh@redhat.com> - 1.1.16-1
- Updated pycups to 1.9.47.
- 1.1.16:
- Ignore com.apple.print.recoverable state reason.
- Prevent traceback in found_network_printer_callback (bug #547765).
- Use asynchronous connection class for fetching device lists
(bug #549749).
- Prefer Foomatic/hpijs to hpcups for the time being.
- Clear device screen each time a new dialog is presented.
- Constraints handling fix.
* Fri Dec 18 2009 Jiri Popelka <jpopelka@redhat.com> 1.1.15-9
- Prevent traceback when no downloadable driver selected (#548449).