Features/BetterPrinting

= Better Printing =

Summary
Management and handling of printers has been improved in many places.

Owner

 * Name: Tim Waugh, Marek Kasik

Current status

 * Targeted release: Fedora10
 * Last updated: 2008-08-08
 * Percentage of completion: 100%

Detailed Description
The system-config-printer UI has been overhauled to look friendlier and more in line with modern desktop applications. system-config-printer no longer needs to be run as root.

More details:
 * The configuration tool window has been made a lot simpler. Instead of a list of printer names on the left and properties for the selected printer on the right, now there is just a box containing icons representing printers. Double-clicking on a printer opens a properties dialog.
 * The CUPS authentication dialog selects the appropriate user-name, and allows it to be altered mid-operation.
 * When the configuration tool is running, its list of printers is updated dynamically.
 * All jobs queued for a specific printer can be seen by right-clicking on a printer icon and selecting ‘View Print Queue’. To see jobs queue on several printers, select the desired printers first before right-clicking. To see all jobs, right-click with no printers selected.
 * The job monitoring tool displays a message when a job has failed. If the printer has been stopped as a result, this is shown in the message. A “Diagnose” button starts the trouble-shooter.
 * The job monitoring tool now performs proxy authentication. When a job is submitted but the CUPS backend requires further authentication information from the user, it stops the job. In this situation, the job monitoring tool will now display an authentication dialog so that the job can proceed.

The GTK+ print dialog gives more feedback about the status of printers, e.g. printers which are out of paper show a little warning emblem on their icon. Paused printers also show an emblem, and printers which are rejecting jobs are grayed out.

Benefit to Fedora
Printing has traditionally been one of the more troublesome areas of the free desktop. Small improvements like these make the printing experience better for users.

Scope
Improvements to printer management have been implemented in system-config-printer. Improvements to the printing experience have been implemented in the print dialog in GTK+.

Test Plan

 * Open up system-config-printer as regular user. Notice no root password is asked. Verify that s-c-p asks for the password when necessary i.e. when adjusting server settings or modifying printer properties.


 * Use an application that uses the gtk print dialog, like evince, and open the print dialog. Now change the status of one of the listed printers, e.g. by putting it in paused mode, or by stealing all its paper. Note that the print dialog shows you the status of the printer by using a different icon, and by updating the status message.


 * Test that the SMB browser works in a variety of environments: click New, select Windows Printer via SAMBA, then click the Browse... button. If browsing to a particular host requires a password, an authentication dialog should appear to request this.


 * Print to a password-protected print share (IPP or SMB) that does not contain a username or password in the queue's URI (e.g. smb://server/share), using any method (lp, GTK+ print dialog, other print dialog). There should be an authentication dialog, and the job should proceed when authenticated.

User Experience
Here are some screenshots that show the improvements:
 * Printer status feedback in the print dialog:


 * The system-config-printer main window


 * The 'New Printer' dialog in system-config-printer


 * The trouble-shooting dialog in system-config-printer

Dependencies
None.

Contingency Plan
Not needed. These are incremental improvements that have already landed in rawhide.

Documentation
None right now, besides the screenshots above.

Release Notes
Management and handling of printers in the desktop has been improved. The printer administration interface has been overhauled to look friendlier and more in line with modern desktop applications. system-config-printer no longer needs to be run as root. The print dialog has been enhanced to give more feedback about the status of printers.