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

Commit a732950a authored by Svetoslav's avatar Svetoslav Committed by Android (Google) Code Review
Browse files

Merge "Page content sometimes disappears when scrolling a long doc in print preview." into lmp-dev

parents 36e793c7 7fd5ada9
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -526,7 +526,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 +552,7 @@ public final class PageContentRepository {
                        callback.run();
                    }
                }
            }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, (Void[]) null);
            }.executeOnExecutor(AsyncTask.SERIAL_EXECUTOR);
        }

        public void destroy() {
@@ -571,7 +571,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 +687,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) {
+0 −1
Original line number Diff line number Diff line
@@ -275,7 +275,6 @@ public final class PageAdapter extends Adapter implements
    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;
    }

+1 −1
Original line number Diff line number Diff line
@@ -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);
        }
+3 −4
Original line number Diff line number Diff line
@@ -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();
            }
        }
+2 −2
Original line number Diff line number Diff line
@@ -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)