summaryrefslogtreecommitdiff
path: root/winrt/mupdf_cpp/MainPage.xaml.cpp
diff options
context:
space:
mode:
authorMichael Vrhel <michael.vrhel@artifex.com>2013-05-06 13:41:42 -0700
committerRobin Watts <robin.watts@artifex.com>2013-05-16 19:25:46 +0100
commit7a9a18d03019ee21bd9c3362523d5599e03dd919 (patch)
treefbbf7ceb887cff58e9303f1bd5d9b43c348cc959 /winrt/mupdf_cpp/MainPage.xaml.cpp
parent7b861bf1835bc247bcc2016e72899f5672d0fa61 (diff)
downloadmupdf-7a9a18d03019ee21bd9c3362523d5599e03dd919.tar.xz
Addition of html viewing with winRT library call
Diffstat (limited to 'winrt/mupdf_cpp/MainPage.xaml.cpp')
-rw-r--r--winrt/mupdf_cpp/MainPage.xaml.cpp42
1 files changed, 9 insertions, 33 deletions
diff --git a/winrt/mupdf_cpp/MainPage.xaml.cpp b/winrt/mupdf_cpp/MainPage.xaml.cpp
index af38b6d3..a75f1500 100644
--- a/winrt/mupdf_cpp/MainPage.xaml.cpp
+++ b/winrt/mupdf_cpp/MainPage.xaml.cpp
@@ -1094,12 +1094,12 @@ void mupdf_cpp::MainPage::GridSizeChanged()
xaml_vert_flipView->Opacity = 0;
}
- if (xaml_RichText->Visibility == Windows::UI::Xaml::Visibility::Visible)
+ if (xaml_WebView->Visibility == Windows::UI::Xaml::Visibility::Visible)
{
int height = xaml_OutsideGrid->ActualHeight;
int height_app = TopAppBar1->ActualHeight;
- xaml_RichText->Height = height - height_app;
+ xaml_WebView->Height = height - height_app;
}
UpDatePageSizes();
@@ -1416,17 +1416,16 @@ void mupdf_cpp::MainPage::ContentSelected(Platform::Object^ sender, Windows::UI:
void mupdf_cpp::MainPage::Reflower(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
-#if 0
if (this->m_num_pages < 0) return;
- if (xaml_RichText->Visibility == Windows::UI::Xaml::Visibility::Visible)
+ if (xaml_WebView->Visibility == Windows::UI::Xaml::Visibility::Visible)
{
/* Go back to flip view */
- xaml_RichText->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
+ xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
this->xaml_MainGrid->Opacity = 1.0;
this->m_curr_flipView->IsEnabled = true;
- xaml_RichGrid->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- xaml_RichGrid->Opacity = 0.0;
+ xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
+ xaml_WebView->Opacity = 0.0;
}
else if (this->m_curr_flipView->IsEnabled)
@@ -1443,39 +1442,16 @@ void mupdf_cpp::MainPage::Reflower(Platform::Object^ sender, Windows::UI::Xaml::
}
}).then([this]()
{
- fz_rect bounds;
- fz_output *out;
- fz_page *page = fz_load_page(m_doc, this->m_currpage);
- fz_text_sheet *sheet = fz_new_text_sheet(ctx);
- fz_text_page *text = fz_new_text_page(ctx, &fz_empty_rect);
- fz_device *dev = fz_new_text_device(ctx, sheet, text);
-
- fz_run_page(m_doc, page, dev, &fz_identity, NULL);
- fz_free_device(dev);
- dev = NULL;
- fz_text_analysis(ctx, sheet, text);
- fz_buffer *buf = fz_new_buffer(ctx, 256);
- out = fz_new_output_buffer(ctx, buf);
- fz_print_text_page(ctx, out, text);
- xaml_RichText->Visibility = Windows::UI::Xaml::Visibility::Visible;
+ String^ html_string = mu_doc->ComputeHTML(this->m_currpage);
+ xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Visible;
this->xaml_MainGrid->Opacity = 0.0;
this->m_curr_flipView->IsEnabled = false;
- String^ html_string = char_to_String((char*) buf->data);
-
- xaml_RichGrid->Visibility = Windows::UI::Xaml::Visibility::Visible;
- xaml_RichGrid->Opacity = 1.0;
- int height = xaml_OutsideGrid->ActualHeight;
- int height_app = TopAppBar1->ActualHeight;
-
- xaml_RichText->Height = height - height_app;
- this->xaml_RichText->Document->SetText(Windows::UI::Text::TextSetOptions::FormatRtf, html_string);
-
+ this->xaml_WebView->NavigateToString(html_string);
/* Check if thumb rendering is done. If not then restart */
if (this->m_num_pages != this->m_thumb_page_start)
this->RenderThumbs();
}, task_continuation_context::use_current());
}
-#endif
}
/* Need to handle resizing of app bar to make sure everything fits */