summaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorSvet Ganov <svetoslavganov@google.com>2014-10-24 16:27:38 -0700
committerSvet Ganov <svetoslavganov@google.com>2014-10-24 17:02:32 -0700
commit99a82437ed8e0537d9a355a124d2bb30aea46ad8 (patch)
tree2d7e778263ba31f4bbc4528072180d8124d90b98 /packages
parentbd6fabe2ae535cf5d31fc7a1952e43ad6e653e2e (diff)
downloadframeworks_base-99a82437ed8e0537d9a355a124d2bb30aea46ad8.zip
frameworks_base-99a82437ed8e0537d9a355a124d2bb30aea46ad8.tar.gz
frameworks_base-99a82437ed8e0537d9a355a124d2bb30aea46ad8.tar.bz2
Printing from two apps at the same time not working.
When printing from two apps at the same time the second print UI is getting stuck. There were a couple of issues here: AdapterView was not notifying for item selection if the data changes after scheduling a dalayed selection notification and the notification execution. The code assumed that a layout pass will occur and posponed the notification after the layout pass but it is not guaranteed that such a layout pass will occur. Now we delay only if a layout pass is being scheduled. Also when binding to the PDF rendering service the print spooler was using the same intent and as a result two print activites were getting the same renderer instance while they should get separate ones. Now we use different data in the intent to ensure we get separate renderer instances. Change-Id: I6aa7c7b041957804b4273549dd837a6d70064efc
Diffstat (limited to 'packages')
-rw-r--r--packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java b/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java
index 85b2490..c73da53 100644
--- a/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java
+++ b/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java
@@ -24,6 +24,7 @@ import android.content.ServiceConnection;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
+import android.net.Uri;
import android.os.AsyncTask;
import android.os.IBinder;
import android.os.ParcelFileDescriptor;
@@ -467,6 +468,7 @@ public final class PageContentRepository {
protected void onPreExecute() {
Intent intent = new Intent(PdfManipulationService.ACTION_GET_RENDERER);
intent.setClass(mContext, PdfManipulationService.class);
+ intent.setData(Uri.fromParts("fake-scheme", String.valueOf(hashCode()), null));
mContext.bindService(intent, AsyncRenderer.this, Context.BIND_AUTO_CREATE);
}