diff options
Diffstat (limited to 'packages/PrintSpooler')
12 files changed, 37 insertions, 79 deletions
diff --git a/packages/PrintSpooler/res/values-es-rUS/strings.xml b/packages/PrintSpooler/res/values-es-rUS/strings.xml index 167f7d8..e194f55 100644 --- a/packages/PrintSpooler/res/values-es-rUS/strings.xml +++ b/packages/PrintSpooler/res/values-es-rUS/strings.xml @@ -38,7 +38,7 @@ <string name="print_dialog" msgid="32628687461331979">"Cuadro de diálogo de impresión"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"Página <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> de <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <string name="summary_template" msgid="8899734908625669193">"Resumen, <xliff:g id="COPIES">%1$s</xliff:g> copias, tamaño de papel <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="summary_template" msgid="8899734908625669193">"Resumen, copias <xliff:g id="COPIES">%1$s</xliff:g>, tamaño de papel <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> <string name="expand_handle" msgid="7282974448109280522">"Controlador para expandir"</string> <string name="collapse_handle" msgid="6886637989442507451">"Controlador para contraer"</string> <string name="print_button" msgid="645164566271246268">"Imprimir"</string> diff --git a/packages/PrintSpooler/res/values-eu-rES/strings.xml b/packages/PrintSpooler/res/values-eu-rES/strings.xml index b2c2b9c..4f0f8fc 100644 --- a/packages/PrintSpooler/res/values-eu-rES/strings.xml +++ b/packages/PrintSpooler/res/values-eu-rES/strings.xml @@ -43,8 +43,8 @@ <string name="collapse_handle" msgid="6886637989442507451">"Tolestu heldulekua"</string> <string name="print_button" msgid="645164566271246268">"Inprimatu"</string> <string name="savetopdf_button" msgid="2976186791686924743">"Gorde PDF gisa"</string> - <string name="print_options_expanded" msgid="6944679157471691859">"Inprimaketa-aukerak zabalduta daude"</string> - <string name="print_options_collapsed" msgid="7455930445670414332">"Inprimaketa-aukerak tolestuta daude"</string> + <string name="print_options_expanded" msgid="6944679157471691859">"Inprimatzeko aukerak zabalduta daude"</string> + <string name="print_options_collapsed" msgid="7455930445670414332">"Inprimatzeko aukerak tolestuta daude"</string> <string name="search" msgid="5421724265322228497">"Bilatu"</string> <string name="all_printers_label" msgid="3178848870161526399">"Inprimagailu guztiak"</string> <string name="add_print_service_label" msgid="5356702546188981940">"Gehitu zerbitzua"</string> diff --git a/packages/PrintSpooler/res/values-lo-rLA/strings.xml b/packages/PrintSpooler/res/values-lo-rLA/strings.xml index 349ac31..3a3f6bb 100644 --- a/packages/PrintSpooler/res/values-lo-rLA/strings.xml +++ b/packages/PrintSpooler/res/values-lo-rLA/strings.xml @@ -37,9 +37,9 @@ <string name="all_printers" msgid="5018829726861876202">"ທຸກເຄື່ອງພິມ..."</string> <string name="print_dialog" msgid="32628687461331979">"ໜ້າຕ່າງການພິມ"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <string name="page_description_template" msgid="6831239682256197161">"ໜ້າທີ <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> ໃນ <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <string name="summary_template" msgid="8899734908625669193">"ສະຫຼຸບ, ສໍາເນົາ <xliff:g id="COPIES">%1$s</xliff:g> , ຂະຫນາດ <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> - <string name="expand_handle" msgid="7282974448109280522">"ຂະຫຍາຍໂຕຈັບ"</string> + <string name="page_description_template" msgid="6831239682256197161">"ໜ້າທີ <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> ຈາກທັງໝົດ <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> + <string name="summary_template" msgid="8899734908625669193">"ສະຫຼຸບ, ສໍາເນົາ <xliff:g id="COPIES">%1$s</xliff:g>, ຂະຫນາດ <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="expand_handle" msgid="7282974448109280522">"ຂະຫຍາຍໂຕຈັດການ"</string> <string name="collapse_handle" msgid="6886637989442507451">"ປິດໂຕຈັດການ"</string> <string name="print_button" msgid="645164566271246268">"ພິມ"</string> <string name="savetopdf_button" msgid="2976186791686924743">"ບັນທຶກເປັນ PDF"</string> diff --git a/packages/PrintSpooler/res/values-pt-rPT/strings.xml b/packages/PrintSpooler/res/values-pt-rPT/strings.xml index d115b29..7b47f4c 100644 --- a/packages/PrintSpooler/res/values-pt-rPT/strings.xml +++ b/packages/PrintSpooler/res/values-pt-rPT/strings.xml @@ -38,7 +38,7 @@ <string name="print_dialog" msgid="32628687461331979">"Caixa de diálogo de impressão"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g>/<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"Página <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> de <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <string name="summary_template" msgid="8899734908625669193">"Resumo, cópias <xliff:g id="COPIES">%1$s</xliff:g>, tamanho do papel <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="summary_template" msgid="8899734908625669193">"Resumo, <xliff:g id="COPIES">%1$s</xliff:g> cópias, tamanho do papel <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> <string name="expand_handle" msgid="7282974448109280522">"Expandir alça"</string> <string name="collapse_handle" msgid="6886637989442507451">"Fechar alça"</string> <string name="print_button" msgid="645164566271246268">"Imprimir"</string> diff --git a/packages/PrintSpooler/res/values-ro/strings.xml b/packages/PrintSpooler/res/values-ro/strings.xml index 3f5cb3c..1446a53 100644 --- a/packages/PrintSpooler/res/values-ro/strings.xml +++ b/packages/PrintSpooler/res/values-ro/strings.xml @@ -37,21 +37,14 @@ <string name="all_printers" msgid="5018829726861876202">"Toate imprimantele..."</string> <string name="print_dialog" msgid="32628687461331979">"Caseta de dialog de printare"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <!-- no translation found for page_description_template (6831239682256197161) --> - <skip /> - <!-- no translation found for summary_template (8899734908625669193) --> - <skip /> - <!-- no translation found for expand_handle (7282974448109280522) --> - <skip /> - <!-- no translation found for collapse_handle (6886637989442507451) --> - <skip /> + <string name="page_description_template" msgid="6831239682256197161">"Pagina <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> din <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> + <string name="summary_template" msgid="8899734908625669193">"Rezumat, copii <xliff:g id="COPIES">%1$s</xliff:g>, dimensiunea paginii <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="expand_handle" msgid="7282974448109280522">"Ghidaj de extindere"</string> + <string name="collapse_handle" msgid="6886637989442507451">"Ghidaj de restrângere"</string> <string name="print_button" msgid="645164566271246268">"Printați"</string> - <!-- no translation found for savetopdf_button (2976186791686924743) --> - <skip /> - <!-- no translation found for print_options_expanded (6944679157471691859) --> - <skip /> - <!-- no translation found for print_options_collapsed (7455930445670414332) --> - <skip /> + <string name="savetopdf_button" msgid="2976186791686924743">"Salvați în format PDF"</string> + <string name="print_options_expanded" msgid="6944679157471691859">"Opțiuni de printare extinse"</string> + <string name="print_options_collapsed" msgid="7455930445670414332">"Opțiuni de printare restrânse"</string> <string name="search" msgid="5421724265322228497">"Căutați"</string> <string name="all_printers_label" msgid="3178848870161526399">"Toate imprimantele"</string> <string name="add_print_service_label" msgid="5356702546188981940">"Adăugați un serviciu"</string> diff --git a/packages/PrintSpooler/res/values-zh-rCN/strings.xml b/packages/PrintSpooler/res/values-zh-rCN/strings.xml index 7a000c5..77ecb21 100644 --- a/packages/PrintSpooler/res/values-zh-rCN/strings.xml +++ b/packages/PrintSpooler/res/values-zh-rCN/strings.xml @@ -37,21 +37,14 @@ <string name="all_printers" msgid="5018829726861876202">"所有打印机…"</string> <string name="print_dialog" msgid="32628687461331979">"打印对话框"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> / <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> - <!-- no translation found for page_description_template (6831239682256197161) --> - <skip /> - <!-- no translation found for summary_template (8899734908625669193) --> - <skip /> - <!-- no translation found for expand_handle (7282974448109280522) --> - <skip /> - <!-- no translation found for collapse_handle (6886637989442507451) --> - <skip /> + <string name="page_description_template" msgid="6831239682256197161">"第<xliff:g id="CURRENT_PAGE">%1$d</xliff:g>页,共<xliff:g id="PAGE_COUNT">%2$d</xliff:g>页"</string> + <string name="summary_template" msgid="8899734908625669193">"摘要,<xliff:g id="COPIES">%1$s</xliff:g>份,纸张尺寸为<xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> + <string name="expand_handle" msgid="7282974448109280522">"展开手柄"</string> + <string name="collapse_handle" msgid="6886637989442507451">"收起手柄"</string> <string name="print_button" msgid="645164566271246268">"打印"</string> - <!-- no translation found for savetopdf_button (2976186791686924743) --> - <skip /> - <!-- no translation found for print_options_expanded (6944679157471691859) --> - <skip /> - <!-- no translation found for print_options_collapsed (7455930445670414332) --> - <skip /> + <string name="savetopdf_button" msgid="2976186791686924743">"保存为PDF格式"</string> + <string name="print_options_expanded" msgid="6944679157471691859">"已展开打印选项"</string> + <string name="print_options_collapsed" msgid="7455930445670414332">"已收起打印选项"</string> <string name="search" msgid="5421724265322228497">"搜索"</string> <string name="all_printers_label" msgid="3178848870161526399">"所有打印机"</string> <string name="add_print_service_label" msgid="5356702546188981940">"添加服务"</string> diff --git a/packages/PrintSpooler/res/values-zh-rTW/strings.xml b/packages/PrintSpooler/res/values-zh-rTW/strings.xml index eb28f8a..3e26a5e 100644 --- a/packages/PrintSpooler/res/values-zh-rTW/strings.xml +++ b/packages/PrintSpooler/res/values-zh-rTW/strings.xml @@ -38,7 +38,7 @@ <string name="print_dialog" msgid="32628687461331979">"印表機對話方塊"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"第 <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> 頁,共 <xliff:g id="PAGE_COUNT">%2$d</xliff:g> 頁"</string> - <string name="summary_template" msgid="8899734908625669193">"摘要,<xliff:g id="COPIES">%1$s</xliff:g> 份,<xliff:g id="PAPER_SIZE">%2$s</xliff:g> 紙張大小"</string> + <string name="summary_template" msgid="8899734908625669193">"摘要,<xliff:g id="COPIES">%1$s</xliff:g> 份,紙張為 <xliff:g id="PAPER_SIZE">%2$s</xliff:g> 大小"</string> <string name="expand_handle" msgid="7282974448109280522">"展開控點"</string> <string name="collapse_handle" msgid="6886637989442507451">"收合控點"</string> <string name="print_button" msgid="645164566271246268">"列印"</string> diff --git a/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java b/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java index 14c41da..a4555f1 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java +++ b/packages/PrintSpooler/src/com/android/printspooler/model/PageContentRepository.java @@ -64,9 +64,6 @@ public final class PageContentRepository { private final CloseGuard mCloseGuard = CloseGuard.get(); - private final ArrayMap<Integer, PageContentProvider> mPageContentProviders = - new ArrayMap<>(); - private final AsyncRenderer mRenderer; private RenderSpec mLastRenderSpec; @@ -141,10 +138,6 @@ public final class PageContentRepository { return mRenderer.getPageCount(); } - public PageContentProvider peekPageContentProvider(int pageIndex) { - return mPageContentProviders.get(pageIndex); - } - public PageContentProvider acquirePageContentProvider(int pageIndex, View owner) { throwIfDestroyed(); @@ -152,15 +145,7 @@ public final class PageContentRepository { Log.i(LOG_TAG, "Acquiring provider for page: " + pageIndex); } - if (mPageContentProviders.get(pageIndex)!= null) { - throw new IllegalStateException("Already acquired for page: " + pageIndex); - } - - PageContentProvider provider = new PageContentProvider(pageIndex, owner); - - mPageContentProviders.put(pageIndex, provider); - - return provider; + return new PageContentProvider(pageIndex, owner); } public void releasePageContentProvider(PageContentProvider provider) { @@ -170,10 +155,6 @@ public final class PageContentRepository { Log.i(LOG_TAG, "Releasing provider for page: " + provider.mPageIndex); } - if (mPageContentProviders.remove(provider.mPageIndex) == null) { - throw new IllegalStateException("Not acquired"); - } - provider.cancelLoad(); } @@ -526,7 +507,7 @@ public final class PageContentRepository { callback.run(); } } - }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR, (Void[]) null); + }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR); } public void close(final Runnable callback) { @@ -552,7 +533,7 @@ public final class PageContentRepository { callback.run(); } } - }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void[]) null); + }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR); } public void destroy() { @@ -571,7 +552,7 @@ public final class PageContentRepository { mPageContentCache.invalidate(); mPageContentCache.clear(); } - }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR, (Void[]) null); + }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR); } public void startPreload(int firstShownPage, int lastShownPage, RenderSpec renderSpec) { @@ -687,7 +668,7 @@ public final class PageContentRepository { // Oh well, we will have work to do... renderTask = new RenderPageTask(pageIndex, renderSpec, callback); mPageToRenderTaskMap.put(pageIndex, renderTask); - renderTask.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR, (Void[]) null); + renderTask.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR); } public void cancelRendering(int pageIndex) { diff --git a/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java b/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java index 369c453..da8160a 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java +++ b/packages/PrintSpooler/src/com/android/printspooler/ui/PageAdapter.java @@ -274,9 +274,7 @@ public final class PageAdapter extends Adapter implements @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View page = mLayoutInflater.inflate(R.layout.preview_page, parent, false); - ViewHolder holder = new MyViewHolder(page); - holder.setIsRecyclable(true); - return holder; + return new MyViewHolder(page); } @Override @@ -314,14 +312,8 @@ public final class PageAdapter extends Adapter implements + ", pageIndexInFile: " + pageIndexInFile); } - // OK, there are bugs in recycler view which tries to bind views - // without recycling them which would give us a chance to clean up. - PageContentProvider boundProvider = mPageContentRepository - .peekPageContentProvider(pageIndexInFile); - if (boundProvider != null) { - PageContentView owner = (PageContentView) boundProvider.getOwner(); - owner.init(null, mEmptyState, mMediaSize, mMinMargins); - mPageContentRepository.releasePageContentProvider(boundProvider); + if (provider != null && provider.getPageIndex() != pageIndexInFile) { + mPageContentRepository.releasePageContentProvider(provider); } provider = mPageContentRepository.acquirePageContentProvider( @@ -732,7 +724,7 @@ public final class PageAdapter extends Adapter implements private void recyclePageView(PageContentView page, int pageIndexInAdapter) { PageContentProvider provider = page.getPageContentProvider(); if (provider != null) { - page.init(null, null, null, null); + page.init(null, mEmptyState, mMediaSize, mMinMargins); mPageContentRepository.releasePageContentProvider(provider); } mBoundPagesInAdapter.remove(pageIndexInAdapter); diff --git a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java index 389988a..d169319 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java +++ b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java @@ -953,7 +953,7 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat // When the update is done we update the print preview. mProgressMessageController.post(); return true; - } else { + } else if (!willUpdate) { // Update preview. updatePrintPreviewController(false); } diff --git a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintPreviewController.java b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintPreviewController.java index b999866..0d45352 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintPreviewController.java +++ b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintPreviewController.java @@ -77,6 +77,7 @@ class PrintPreviewController implements MutexFileProvider.OnReleaseRequestCallba mRecyclerView = (RecyclerView) activity.findViewById(R.id.preview_content); mRecyclerView.setLayoutManager(mLayoutManger); mRecyclerView.setAdapter(mPageAdapter); + mRecyclerView.setItemViewCacheSize(0); mPreloadController = new PreloadController(mRecyclerView); mRecyclerView.setOnScrollListener(mPreloadController); @@ -348,8 +349,7 @@ class PrintPreviewController implements MutexFileProvider.OnReleaseRequestCallba public void startPreloadContent() { PageAdapter pageAdapter = (PageAdapter) mRecyclerView.getAdapter(); - - if (pageAdapter.isOpened()) { + if (pageAdapter != null && pageAdapter.isOpened()) { PageRange shownPages = computeShownPages(); if (shownPages != null) { pageAdapter.startPreloadContent(shownPages); @@ -359,8 +359,7 @@ class PrintPreviewController implements MutexFileProvider.OnReleaseRequestCallba public void stopPreloadContent() { PageAdapter pageAdapter = (PageAdapter) mRecyclerView.getAdapter(); - - if (pageAdapter.isOpened()) { + if (pageAdapter != null && pageAdapter.isOpened()) { pageAdapter.stopPreloadContent(); } } diff --git a/packages/PrintSpooler/src/com/android/printspooler/widget/PageContentView.java b/packages/PrintSpooler/src/com/android/printspooler/widget/PageContentView.java index 1000117..b792789 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/widget/PageContentView.java +++ b/packages/PrintSpooler/src/com/android/printspooler/widget/PageContentView.java @@ -52,12 +52,12 @@ public class PageContentView extends View @Override protected void onSizeChanged(int w, int h, int oldw, int oldh) { + mContentRequested = false; requestPageContentIfNeeded(); } @Override public void onPageContentAvailable(BitmapDrawable content) { - assert (getBackground() != content); setBackground(content); } @@ -70,7 +70,7 @@ public class PageContentView extends View final boolean providerChanged = (mProvider == null) ? provider != null : !mProvider.equals(provider); final boolean loadingDrawableChanged = (mEmptyState == null) - ? mEmptyState != null : !mEmptyState.equals(emptyState); + ? emptyState != null : !mEmptyState.equals(emptyState); final boolean mediaSizeChanged = (mMediaSize == null) ? mediaSize != null : !mMediaSize.equals(mediaSize); final boolean marginsChanged = (mMinMargins == null) |