| Index: pdf/out_of_process_instance.cc
|
| diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc
|
| index f26f18b02abf5794142973705d43e0252b1db559..92511185c9715dd610adc6353cae440616666284 100644
|
| --- a/pdf/out_of_process_instance.cc
|
| +++ b/pdf/out_of_process_instance.cc
|
| @@ -626,12 +626,7 @@ void OutOfProcessInstance::LoadAccessibility() {
|
| return;
|
| }
|
|
|
| - PP_PrivateAccessibilityViewportInfo viewport_info;
|
| - viewport_info.scroll.x = 0;
|
| - viewport_info.scroll.y = -top_toolbar_height_ * device_scale_;
|
| - viewport_info.offset = available_area_.point();
|
| - viewport_info.zoom = zoom_ * device_scale_;
|
| - pp::PDF::SetAccessibilityViewportInfo(GetPluginInstance(), &viewport_info);
|
| + SendAccessibilityViewportInfo();
|
|
|
| // Schedule loading the first page.
|
| pp::CompletionCallback callback = timer_factory_.NewCallback(
|
| @@ -701,6 +696,15 @@ void OutOfProcessInstance::SendNextAccessibilityPage(int32_t page_index) {
|
| callback, page_index + 1);
|
| }
|
|
|
| +void OutOfProcessInstance::SendAccessibilityViewportInfo() {
|
| + PP_PrivateAccessibilityViewportInfo viewport_info;
|
| + viewport_info.scroll.x = 0;
|
| + viewport_info.scroll.y = -top_toolbar_height_ * device_scale_;
|
| + viewport_info.offset = available_area_.point();
|
| + viewport_info.zoom = zoom_ * device_scale_;
|
| + pp::PDF::SetAccessibilityViewportInfo(GetPluginInstance(), &viewport_info);
|
| +}
|
| +
|
| pp::Var OutOfProcessInstance::GetLinkAtPosition(
|
| const pp::Point& point) {
|
| pp::Point offset_point(point);
|
| @@ -1418,6 +1422,9 @@ void OutOfProcessInstance::OnGeometryChanged(double old_zoom,
|
| if (document_size_.IsEmpty())
|
| return;
|
| paint_manager_.InvalidateRect(pp::Rect(pp::Point(), plugin_size_));
|
| +
|
| + if (accessibility_state_ == ACCESSIBILITY_STATE_LOADED)
|
| + SendAccessibilityViewportInfo();
|
| }
|
|
|
| void OutOfProcessInstance::LoadUrl(const std::string& url) {
|
|
|