From 52dd8a3e321bb965f8f02494026d545fddf54c01 Mon Sep 17 00:00:00 2001 From: Michael Vrhel Date: Wed, 23 Oct 2013 21:31:51 -0700 Subject: Fix so that multi-threaded rendering of display list works. Proper use of mutex lock in areas where we multiple threads can not be accessing the document or page level objects at the same time. With this fix, multiple threads can be rendering different display lists at the same time. Also fix for use of page selection scroll bar so that it does not render the page until the user lifts off the bar. This is the same as the Android app and avoids smaller devices getting overloaded if you do rapid scrolling in a document. --- platform/winrt/mupdf_cpp/MainPage.xaml | 2 +- platform/winrt/mupdf_cpp/MainPage.xaml.cpp | 75 +++++------ platform/winrt/mupdf_cpp/MainPage.xaml.h | 5 +- platform/winrt/mupdfwinrt/Cache.cpp | 10 +- platform/winrt/mupdfwinrt/Cache.h | 8 +- platform/winrt/mupdfwinrt/muctx.cpp | 202 +++++++++++++++-------------- platform/winrt/mupdfwinrt/muctx.h | 10 +- platform/winrt/mupdfwinrt/mudocument.cpp | 82 ++++++++---- platform/winrt/mupdfwinrt/mudocument.h | 3 +- 9 files changed, 224 insertions(+), 173 deletions(-) diff --git a/platform/winrt/mupdf_cpp/MainPage.xaml b/platform/winrt/mupdf_cpp/MainPage.xaml index 22fbe5da..eaf096e3 100644 --- a/platform/winrt/mupdf_cpp/MainPage.xaml +++ b/platform/winrt/mupdf_cpp/MainPage.xaml @@ -14,7 +14,7 @@ - +