diff options
| -rw-r--r-- | packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java b/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java index 22a9950d0313..3a23b3ec5516 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java +++ b/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java @@ -1248,13 +1248,20 @@ public class PrintJobConfigActivity extends Activity { continue; } + // If nothing changed - done. + if (mCurrentPrinter.equals(printer)) { + return; + } + // If the current printer became available and has no // capabilities, we refresh it. if (mCurrentPrinter.getStatus() == PrinterInfo.STATUS_UNAVAILABLE && printer.getStatus() != PrinterInfo.STATUS_UNAVAILABLE - && printer.getCapabilities() == null - && !mCapabilitiesTimeout.isPosted()) { - mCapabilitiesTimeout.post(); + && printer.getCapabilities() == null) { + if (!mCapabilitiesTimeout.isPosted()) { + mCapabilitiesTimeout.post(); + } + mCurrentPrinter.copyFrom(printer); refreshCurrentPrinter(); return; } @@ -1268,10 +1275,10 @@ public class PrintJobConfigActivity extends Activity { && printer.getCapabilities() == null)) { if (!mCapabilitiesTimeout.isPosted()) { mCapabilitiesTimeout.post(); - mCurrentPrinter.copyFrom(printer); - updateUi(); - return; } + mCurrentPrinter.copyFrom(printer); + updateUi(); + return; } // We just refreshed the current printer. |