Merge "Do not allow printing until preview is updated" into oc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
fb1e49a5c4
@@ -113,12 +113,14 @@ public final class RemotePrintDocument {
|
|||||||
}
|
}
|
||||||
// Notify we are done.
|
// Notify we are done.
|
||||||
mState = STATE_UPDATED;
|
mState = STATE_UPDATED;
|
||||||
|
mDocumentInfo.updated = true;
|
||||||
notifyUpdateCompleted();
|
notifyUpdateCompleted();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// We always notify after a write.
|
// We always notify after a write.
|
||||||
mState = STATE_UPDATED;
|
mState = STATE_UPDATED;
|
||||||
|
mDocumentInfo.updated = true;
|
||||||
notifyUpdateCompleted();
|
notifyUpdateCompleted();
|
||||||
}
|
}
|
||||||
runPendingCommand();
|
runPendingCommand();
|
||||||
@@ -229,6 +231,7 @@ public final class RemotePrintDocument {
|
|||||||
mDocumentInfo, oldAttributes, attributes, preview, mCommandResultCallback);
|
mDocumentInfo, oldAttributes, attributes, preview, mCommandResultCallback);
|
||||||
scheduleCommand(command);
|
scheduleCommand(command);
|
||||||
|
|
||||||
|
mDocumentInfo.updated = false;
|
||||||
mState = STATE_UPDATING;
|
mState = STATE_UPDATING;
|
||||||
// If no layout in progress and we don't have all pages - schedule a write.
|
// If no layout in progress and we don't have all pages - schedule a write.
|
||||||
} else if ((!(mCurrentCommand instanceof LayoutCommand)
|
} else if ((!(mCurrentCommand instanceof LayoutCommand)
|
||||||
@@ -249,6 +252,7 @@ public final class RemotePrintDocument {
|
|||||||
mDocumentInfo.fileProvider, mCommandResultCallback);
|
mDocumentInfo.fileProvider, mCommandResultCallback);
|
||||||
scheduleCommand(command);
|
scheduleCommand(command);
|
||||||
|
|
||||||
|
mDocumentInfo.updated = false;
|
||||||
mState = STATE_UPDATING;
|
mState = STATE_UPDATING;
|
||||||
} else {
|
} else {
|
||||||
willUpdate = false;
|
willUpdate = false;
|
||||||
@@ -396,7 +400,7 @@ public final class RemotePrintDocument {
|
|||||||
|
|
||||||
private void notifyUpdateFailed(CharSequence error) {
|
private void notifyUpdateFailed(CharSequence error) {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
Log.i(LOG_TAG, "[CALLING] onUpdateCompleted()");
|
Log.i(LOG_TAG, "[CALLING] notifyUpdateFailed()");
|
||||||
}
|
}
|
||||||
mUpdateCallbacks.onUpdateFailed(error);
|
mUpdateCallbacks.onUpdateFailed(error);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -491,8 +491,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
|
|
||||||
setState(STATE_UPDATE_FAILED);
|
setState(STATE_UPDATE_FAILED);
|
||||||
|
|
||||||
updateOptionsUi();
|
|
||||||
|
|
||||||
mPrintedDocument.kill(message);
|
mPrintedDocument.kill(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -502,7 +500,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
&& canUpdateDocument() && updateDocument(true)) {
|
&& canUpdateDocument() && updateDocument(true)) {
|
||||||
ensurePreviewUiShown();
|
ensurePreviewUiShown();
|
||||||
setState(STATE_CONFIGURING);
|
setState(STATE_CONFIGURING);
|
||||||
updateOptionsUi();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -579,7 +576,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
updatePrintPreviewController(document.changed);
|
updatePrintPreviewController(document.changed);
|
||||||
|
|
||||||
setState(STATE_CONFIGURING);
|
setState(STATE_CONFIGURING);
|
||||||
updateOptionsUi();
|
|
||||||
} break;
|
} break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -600,8 +596,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
}
|
}
|
||||||
|
|
||||||
setState(STATE_UPDATE_FAILED);
|
setState(STATE_UPDATE_FAILED);
|
||||||
|
|
||||||
updateOptionsUi();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -734,7 +728,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
updateOptionsUi();
|
updateOptionsUi();
|
||||||
} else {
|
} else {
|
||||||
setState(STATE_CREATE_FILE_FAILED);
|
setState(STATE_CREATE_FILE_FAILED);
|
||||||
updateOptionsUi();
|
|
||||||
// Calling finish here does not invoke lifecycle callbacks but we
|
// Calling finish here does not invoke lifecycle callbacks but we
|
||||||
// update the print job in onPause if finishing, hence post a message.
|
// update the print job in onPause if finishing, hence post a message.
|
||||||
mDestinationSpinner.post(new Runnable() {
|
mDestinationSpinner.post(new Runnable() {
|
||||||
@@ -958,12 +951,14 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
Log.i(LOG_TAG, "[state]" + state);
|
Log.i(LOG_TAG, "[state]" + state);
|
||||||
}
|
}
|
||||||
mState = state;
|
mState = state;
|
||||||
|
updateOptionsUi();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
Log.i(LOG_TAG, "[state]" + state);
|
Log.i(LOG_TAG, "[state]" + state);
|
||||||
}
|
}
|
||||||
mState = state;
|
mState = state;
|
||||||
|
updateOptionsUi();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1230,6 +1225,7 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
|
|
||||||
final boolean willUpdate = mPrintedDocument.update(mPrintJob.getAttributes(),
|
final boolean willUpdate = mPrintedDocument.update(mPrintJob.getAttributes(),
|
||||||
pages, preview);
|
pages, preview);
|
||||||
|
updateOptionsUi();
|
||||||
|
|
||||||
if (willUpdate && !mPrintedDocument.hasLaidOutPages()) {
|
if (willUpdate && !mPrintedDocument.hasLaidOutPages()) {
|
||||||
// When the update is done we update the print preview.
|
// When the update is done we update the print preview.
|
||||||
@@ -1254,7 +1250,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
|
|
||||||
private void cancelPrint() {
|
private void cancelPrint() {
|
||||||
setState(STATE_PRINT_CANCELED);
|
setState(STATE_PRINT_CANCELED);
|
||||||
updateOptionsUi();
|
|
||||||
mPrintedDocument.cancel(true);
|
mPrintedDocument.cancel(true);
|
||||||
doFinish();
|
doFinish();
|
||||||
}
|
}
|
||||||
@@ -1274,7 +1269,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
private void confirmPrint() {
|
private void confirmPrint() {
|
||||||
setState(STATE_PRINT_CONFIRMED);
|
setState(STATE_PRINT_CONFIRMED);
|
||||||
|
|
||||||
updateOptionsUi();
|
|
||||||
addCurrentPrinterToHistory();
|
addCurrentPrinterToHistory();
|
||||||
setUserPrinted();
|
setUserPrinted();
|
||||||
|
|
||||||
@@ -1629,6 +1623,8 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
// Always update the summary.
|
// Always update the summary.
|
||||||
updateSummary();
|
updateSummary();
|
||||||
|
|
||||||
|
mDestinationSpinner.setEnabled(!isFinalState(mState));
|
||||||
|
|
||||||
if (mState == STATE_PRINT_CONFIRMED
|
if (mState == STATE_PRINT_CONFIRMED
|
||||||
|| mState == STATE_PRINT_COMPLETED
|
|| mState == STATE_PRINT_COMPLETED
|
||||||
|| mState == STATE_PRINT_CANCELED
|
|| mState == STATE_PRINT_CANCELED
|
||||||
@@ -1636,9 +1632,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
|| mState == STATE_CREATE_FILE_FAILED
|
|| mState == STATE_CREATE_FILE_FAILED
|
||||||
|| mState == STATE_PRINTER_UNAVAILABLE
|
|| mState == STATE_PRINTER_UNAVAILABLE
|
||||||
|| mState == STATE_UPDATE_SLOW) {
|
|| mState == STATE_UPDATE_SLOW) {
|
||||||
if (mState != STATE_PRINTER_UNAVAILABLE) {
|
|
||||||
mDestinationSpinner.setEnabled(false);
|
|
||||||
}
|
|
||||||
disableOptionsUi(isFinalState(mState));
|
disableOptionsUi(isFinalState(mState));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -1927,7 +1920,7 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
mPrintButton.setImageResource(R.drawable.ic_menu_savetopdf);
|
mPrintButton.setImageResource(R.drawable.ic_menu_savetopdf);
|
||||||
mPrintButton.setContentDescription(getString(R.string.savetopdf_button));
|
mPrintButton.setContentDescription(getString(R.string.savetopdf_button));
|
||||||
}
|
}
|
||||||
if (!mPrintedDocument.getDocumentInfo().laidout
|
if (!mPrintedDocument.getDocumentInfo().updated
|
||||||
||(mRangeOptionsSpinner.getSelectedItemPosition() == 1
|
||(mRangeOptionsSpinner.getSelectedItemPosition() == 1
|
||||||
&& (TextUtils.isEmpty(mPageRangeEditText.getText()) || hasErrors()))
|
&& (TextUtils.isEmpty(mPageRangeEditText.getText()) || hasErrors()))
|
||||||
|| (mRangeOptionsSpinner.getSelectedItemPosition() == 0
|
|| (mRangeOptionsSpinner.getSelectedItemPosition() == 0
|
||||||
@@ -2048,7 +2041,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
updateDocument(false);
|
updateDocument(false);
|
||||||
}
|
}
|
||||||
ensurePreviewUiShown();
|
ensurePreviewUiShown();
|
||||||
updateOptionsUi();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2058,7 +2050,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
mPrintedDocument.cancel(false);
|
mPrintedDocument.cancel(false);
|
||||||
ensureErrorUiShown(getString(R.string.print_error_printer_unavailable),
|
ensureErrorUiShown(getString(R.string.print_error_printer_unavailable),
|
||||||
PrintErrorFragment.ACTION_NONE);
|
PrintErrorFragment.ACTION_NONE);
|
||||||
updateOptionsUi();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3038,7 +3029,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
if (mState == STATE_UPDATE_SLOW) {
|
if (mState == STATE_UPDATE_SLOW) {
|
||||||
setState(STATE_UPDATE_SLOW);
|
setState(STATE_UPDATE_SLOW);
|
||||||
ensureProgressUiShown();
|
ensureProgressUiShown();
|
||||||
updateOptionsUi();
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
} else if (mPosted) {
|
} else if (mPosted) {
|
||||||
@@ -3080,7 +3070,6 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat
|
|||||||
mPreviousState = mState;
|
mPreviousState = mState;
|
||||||
setState(STATE_UPDATE_SLOW);
|
setState(STATE_UPDATE_SLOW);
|
||||||
ensureProgressUiShown();
|
ensureProgressUiShown();
|
||||||
updateOptionsUi();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user