diff --git a/xpfe/global/resources/content/printdialog.js b/xpfe/global/resources/content/printdialog.js index f67da17de5b2..5d08a90818dc 100644 --- a/xpfe/global/resources/content/printdialog.js +++ b/xpfe/global/resources/content/printdialog.js @@ -197,19 +197,20 @@ function setPrinterDefaultsForSelectedPrinter() { /* FixMe: We should save the old printer's values here... */ - gPrintSettings.printerName = dialog.printerList.value; - - // First get any defaults from the printer - printService.initPrintSettingsFromPrinter(gPrintSettings.printerName, gPrintSettings); + if (gPrintSettings.printerName != dialog.printerList.value) { + gPrintSettings.printerName = dialog.printerList.value; - var flags = gPrintSetInterface.kInitSavePaperSizeType | gPrintSetInterface.kInitSavePaperSizeUnit | - gPrintSetInterface.kInitSavePaperWidth | gPrintSetInterface.kInitSavePaperHeight | - gPrintSetInterface.kInitSavePaperName | - gPrintSetInterface.kInitSavePrintCommand; + // First get any defaults from the printer + printService.initPrintSettingsFromPrinter(gPrintSettings.printerName, gPrintSettings); - // now augment them with any values from last time - printService.initPrintSettingsFromPrefs(gPrintSettings, true, flags); + var flags = gPrintSetInterface.kInitSavePaperSizeType | gPrintSetInterface.kInitSavePaperSizeUnit | + gPrintSetInterface.kInitSavePaperWidth | gPrintSetInterface.kInitSavePaperHeight | + gPrintSetInterface.kInitSavePaperName | + gPrintSetInterface.kInitSavePrintCommand; + // now augment them with any values from last time + printService.initPrintSettingsFromPrefs(gPrintSettings, true, flags); + } } //---------------------------------------------------