Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6fd5789 authored by Svetoslav Ganov's avatar Svetoslav Ganov Committed by Android Git Automerger
Browse files

am 64655e81: am 65d7b8d0: Merge "The list of active print jobs in print...

am 64655e81: am 65d7b8d0: Merge "The list of active print jobs in print service retunring wrong result." into klp-dev

* commit '64655e81':
  The list of active print jobs in print service retunring wrong result.
parents 2f6a29ed 64655e81
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ public final class PrintJobInfo implements Parcelable {
    /** The name of the printer - internally used */
    private String mPrinterName;

    /** The status of the print job. */
    /** The state of the print job. */
    private int mState;

    /** The id of the app that created the job. */
@@ -555,7 +555,7 @@ public final class PrintJobInfo implements Parcelable {
        builder.append("PrintJobInfo{");
        builder.append("label: ").append(mLabel);
        builder.append(", id: ").append(mId);
        builder.append(", status: ").append(stateToString(mState));
        builder.append(", state: ").append(stateToString(mState));
        builder.append(", printer: " + mPrinterId);
        builder.append(", tag: ").append(mTag);
        builder.append(", creationTime: " + mCreationTime);
@@ -583,6 +583,9 @@ public final class PrintJobInfo implements Parcelable {
            case STATE_STARTED: {
                return "STATE_STARTED";
            }
            case STATE_BLOCKED: {
                return "STATE_BLOCKED";
            }
            case STATE_FAILED: {
                return "STATE_FAILED";
            }
+17 −6
Original line number Diff line number Diff line
@@ -146,11 +146,14 @@ public final class PrintManager {
                switch (message.what) {
                    case MSG_NOTIFY_PRINT_JOB_STATE_CHANGED: {
                        SomeArgs args = (SomeArgs) message.obj;
                        PrintJobStateChangeListener listener =
                                (PrintJobStateChangeListener) args.arg1;
                        PrintJobStateChangeListenerWrapper wrapper =
                                (PrintJobStateChangeListenerWrapper) args.arg1;
                        PrintJobStateChangeListener listener = wrapper.getListener();
                        if (listener != null) {
                            PrintJobId printJobId = (PrintJobId) args.arg2;
                        args.recycle();
                            listener.onPrintJobStateChanged(printJobId);
                        }
                        args.recycle();
                    } break;
                }
            }
@@ -217,6 +220,7 @@ public final class PrintManager {
        if (mPrintJobStateChangeListeners.isEmpty()) {
            mPrintJobStateChangeListeners = null;
        }
        wrappedListener.destroy();
        try {
            mService.removePrintJobStateChangeListener(wrappedListener, mUserId);
        } catch (RemoteException re) {
@@ -769,12 +773,19 @@ public final class PrintManager {
            PrintJobStateChangeListener listener = mWeakListener.get();
            if (handler != null && listener != null) {
                SomeArgs args = SomeArgs.obtain();
                args.arg1 = listener;
                args.arg1 = this;
                args.arg2 = printJobId;
                handler.obtainMessage(MSG_NOTIFY_PRINT_JOB_STATE_CHANGED,
                        args).sendToTarget();
            }
        }

        public void destroy() {
            mWeakListener.clear();
        }

        public PrintJobStateChangeListener getListener() {
            return mWeakListener.get();
        }
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -189,7 +189,7 @@ public class NotificationController {
            if (i == printJobCount - 1) {
                builder.setLargeIcon(((BitmapDrawable) mContext.getResources().getDrawable(
                        computeNotificationIcon(printJob))).getBitmap());
                builder.setSmallIcon(com.android.internal.R.drawable.ic_print);
                builder.setSmallIcon(computeNotificationIcon(printJob));
                builder.setContentTitle(computeNotificationTitle(printJob));
                builder.setContentText(printJob.getPrinterName());
            }
+1 −1
Original line number Diff line number Diff line
@@ -682,7 +682,7 @@ final class RemotePrintService implements DeathRecipient {
                final long identity = Binder.clearCallingIdentity();
                try {
                    return service.mSpooler.getPrintJobInfos(service.mComponentName,
                            PrintJobInfo.STATE_ANY_VISIBLE_TO_CLIENTS, PrintManager.APP_ID_ANY);
                            PrintJobInfo.STATE_ANY_SCHEDULED, PrintManager.APP_ID_ANY);
                } finally {
                    Binder.restoreCallingIdentity(identity);
                }