Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(292)

Side by Side Diff: pdf/out_of_process_instance.cc

Issue 2407683002: PDF: Check the loaded URL in sendScriptingMessage_(). (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "pdf/out_of_process_instance.h" 5 #include "pdf/out_of_process_instance.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> // for min/max() 10 #include <algorithm> // for min/max()
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 const char kJSDocumentWidth[] = "width"; 63 const char kJSDocumentWidth[] = "width";
64 const char kJSDocumentHeight[] = "height"; 64 const char kJSDocumentHeight[] = "height";
65 const char kJSPageDimensions[] = "pageDimensions"; 65 const char kJSPageDimensions[] = "pageDimensions";
66 const char kJSPageX[] = "x"; 66 const char kJSPageX[] = "x";
67 const char kJSPageY[] = "y"; 67 const char kJSPageY[] = "y";
68 const char kJSPageWidth[] = "width"; 68 const char kJSPageWidth[] = "width";
69 const char kJSPageHeight[] = "height"; 69 const char kJSPageHeight[] = "height";
70 // Document load progress arguments (Plugin -> Page) 70 // Document load progress arguments (Plugin -> Page)
71 const char kJSLoadProgressType[] = "loadProgress"; 71 const char kJSLoadProgressType[] = "loadProgress";
72 const char kJSProgressPercentage[] = "progress"; 72 const char kJSProgressPercentage[] = "progress";
73 // Document load URL (Plugin -> Page)
74 const char kJSGotActualURLType[] = "gotActualURL";
75 const char kJSActualURL[] = "actualURL";
73 // Metadata 76 // Metadata
74 const char kJSMetadataType[] = "metadata"; 77 const char kJSMetadataType[] = "metadata";
75 const char kJSBookmarks[] = "bookmarks"; 78 const char kJSBookmarks[] = "bookmarks";
76 const char kJSTitle[] = "title"; 79 const char kJSTitle[] = "title";
77 // Get password arguments (Plugin -> Page) 80 // Get password arguments (Plugin -> Page)
78 const char kJSGetPasswordType[] = "getPassword"; 81 const char kJSGetPasswordType[] = "getPassword";
79 // Get password complete arguments (Page -> Plugin) 82 // Get password complete arguments (Page -> Plugin)
80 const char kJSGetPasswordCompleteType[] = "getPasswordComplete"; 83 const char kJSGetPasswordCompleteType[] = "getPasswordComplete";
81 const char kJSPassword[] = "password"; 84 const char kJSPassword[] = "password";
82 // Print (Page -> Plugin) 85 // Print (Page -> Plugin)
(...skipping 1107 matching lines...) Expand 10 before | Expand all | Expand 10 after
1190 (*results)[i].length = pp_results[i].length; 1193 (*results)[i].length = pp_results[i].length;
1191 } 1194 }
1192 1195
1193 pp::Memory_Dev memory; 1196 pp::Memory_Dev memory;
1194 memory.MemFree(pp_results); 1197 memory.MemFree(pp_results);
1195 } 1198 }
1196 1199
1197 void OutOfProcessInstance::DocumentPaintOccurred() { 1200 void OutOfProcessInstance::DocumentPaintOccurred() {
1198 } 1201 }
1199 1202
1203 void OutOfProcessInstance::OnGotActualURL(const std::string& url) {
1204 pp::VarDictionary message;
1205 message.Set(pp::Var(kType), pp::Var(kJSGotActualURLType));
1206 message.Set(pp::Var(kJSActualURL), pp::Var(url));
1207 PostMessage(message);
1208 }
1209
1200 void OutOfProcessInstance::DocumentLoadComplete(int page_count) { 1210 void OutOfProcessInstance::DocumentLoadComplete(int page_count) {
1201 // Clear focus state for OSK. 1211 // Clear focus state for OSK.
1202 FormTextFieldFocusChange(false); 1212 FormTextFieldFocusChange(false);
1203 1213
1204 DCHECK(document_load_state_ == LOAD_STATE_LOADING); 1214 DCHECK(document_load_state_ == LOAD_STATE_LOADING);
1205 document_load_state_ = LOAD_STATE_COMPLETE; 1215 document_load_state_ = LOAD_STATE_COMPLETE;
1206 UserMetricsRecordAction("PDF.LoadSuccess"); 1216 UserMetricsRecordAction("PDF.LoadSuccess");
1207 uma_.HistogramEnumeration("PDF.DocumentFeature", LOADED_DOCUMENT, 1217 uma_.HistogramEnumeration("PDF.DocumentFeature", LOADED_DOCUMENT,
1208 FEATURES_COUNT); 1218 FEATURES_COUNT);
1209 1219
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
1534 const pp::FloatPoint& scroll_offset) { 1544 const pp::FloatPoint& scroll_offset) {
1535 float max_x = document_size_.width() * zoom_ - plugin_dip_size_.width(); 1545 float max_x = document_size_.width() * zoom_ - plugin_dip_size_.width();
1536 float x = std::max(std::min(scroll_offset.x(), max_x), 0.0f); 1546 float x = std::max(std::min(scroll_offset.x(), max_x), 0.0f);
1537 float min_y = -top_toolbar_height_; 1547 float min_y = -top_toolbar_height_;
1538 float max_y = document_size_.height() * zoom_ - plugin_dip_size_.height(); 1548 float max_y = document_size_.height() * zoom_ - plugin_dip_size_.height();
1539 float y = std::max(std::min(scroll_offset.y(), max_y), min_y); 1549 float y = std::max(std::min(scroll_offset.y(), max_y), min_y);
1540 return pp::FloatPoint(x, y); 1550 return pp::FloatPoint(x, y);
1541 } 1551 }
1542 1552
1543 } // namespace chrome_pdf 1553 } // namespace chrome_pdf
OLDNEW
« pdf/document_loader.cc ('K') | « pdf/out_of_process_instance.h ('k') | pdf/pdf_engine.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698