diff --git a/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java b/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java index e560d6e5ce076..e3d8d05e7a802 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java +++ b/packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java @@ -2206,12 +2206,16 @@ public class PrintJobConfigActivity extends Activity { // Select the old color mode - nothing really changed. setColorModeSpinnerSelectionNoCallback(oldColorModeNewIndex); } else { - final int selectedColorModeIndex = Integer.numberOfTrailingZeros( - (colorModes & defaultAttributes.getColorMode())); - setColorModeSpinnerSelectionNoCallback(selectedColorModeIndex); - mCurrPrintAttributes.setColorMode(mColorModeSpinnerAdapter - .getItem(selectedColorModeIndex).value); - someAttributeSelectionChanged = true; + final int selectedColorMode = colorModes & defaultAttributes.getColorMode(); + final int itemCount = mColorModeSpinnerAdapter.getCount(); + for (int i = 0; i < itemCount; i++) { + SpinnerItem item = mColorModeSpinnerAdapter.getItem(i); + if (selectedColorMode == item.value) { + setColorModeSpinnerSelectionNoCallback(i); + mCurrPrintAttributes.setColorMode(selectedColorMode); + someAttributeSelectionChanged = true; + } + } } } mColorModeSpinner.setEnabled(true);