diff options
| author | 2016-05-18 15:24:20 +0000 | |
|---|---|---|
| committer | 2016-05-18 15:24:21 +0000 | |
| commit | 746de4e9c87d3068643a97a3b0b5709ffdbb4ad6 (patch) | |
| tree | c06dff9fda5204dd08d714f8d8c2db9fce017726 | |
| parent | 3e9304127e7b59d66aff50f406a270e23c8cb208 (diff) | |
| parent | f1413249db087509070a7a4ad67db781ef4845cf (diff) | |
Merge "Handle printers selected by SelectPrinter activity" into nyc-dev
| -rw-r--r-- | packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java index 241581d91d4f..be3df54e12ae 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java +++ b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java @@ -718,6 +718,9 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat SelectPrinterActivity.INTENT_EXTRA_PRINTER); if (printerInfo != null) { mCurrentPrinter = printerInfo; + mPrintJob.setPrinterId(printerInfo.getId()); + mPrintJob.setPrinterName(printerInfo.getName()); + mDestinationSpinnerAdapter.ensurePrinterInVisibleAdapterPosition(printerInfo); } } @@ -1964,7 +1967,7 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat } public void onPrinterAvailable(PrinterInfo printer) { - if (mCurrentPrinter.equals(printer)) { + if (mCurrentPrinter != null && mCurrentPrinter.equals(printer)) { setState(STATE_CONFIGURING); if (canUpdateDocument()) { updateDocument(false); @@ -2459,12 +2462,15 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat PrinterHolder printerHolder = mPrinterHolders.get(i); PrinterId oldPrinterId = printerHolder.printer.getId(); PrinterInfo updatedPrinter = newPrintersMap.remove(oldPrinterId); + if (updatedPrinter != null) { printerHolder.printer = updatedPrinter; printerHolder.removed = false; + onPrinterAvailable(printerHolder.printer); newPrinterHolders.add(printerHolder); } else if (mCurrentPrinter != null && mCurrentPrinter.getId().equals(oldPrinterId)){ printerHolder.removed = true; + onPrinterUnavailable(printerHolder.printer); newPrinterHolders.add(printerHolder); } } |