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

Side by Side Diff: pdf/out_of_process_instance.cc

Issue 2479313005: Add font substituted metrics for OS other than Linux (Closed)
Patch Set: Fix Delete! Created 4 years, 1 month 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
« no previous file with comments | « pdf/out_of_process_instance.h ('k') | pdf/pdfium/pdfium_engine.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 cursor_(PP_CURSORTYPE_POINTER), 275 cursor_(PP_CURSORTYPE_POINTER),
276 zoom_(1.0), 276 zoom_(1.0),
277 device_scale_(1.0), 277 device_scale_(1.0),
278 full_(false), 278 full_(false),
279 paint_manager_(this, this, true), 279 paint_manager_(this, this, true),
280 first_paint_(true), 280 first_paint_(true),
281 document_load_state_(LOAD_STATE_LOADING), 281 document_load_state_(LOAD_STATE_LOADING),
282 preview_document_load_state_(LOAD_STATE_COMPLETE), 282 preview_document_load_state_(LOAD_STATE_COMPLETE),
283 uma_(this), 283 uma_(this),
284 told_browser_about_unsupported_feature_(false), 284 told_browser_about_unsupported_feature_(false),
285 #if defined(OS_LINUX)
286 font_substitution_reported_(false), 285 font_substitution_reported_(false),
287 #endif
288 print_preview_page_count_(0), 286 print_preview_page_count_(0),
289 last_progress_sent_(0), 287 last_progress_sent_(0),
290 recently_sent_find_update_(false), 288 recently_sent_find_update_(false),
291 received_viewport_message_(false), 289 received_viewport_message_(false),
292 did_call_start_loading_(false), 290 did_call_start_loading_(false),
293 stop_scrolling_(false), 291 stop_scrolling_(false),
294 background_color_(0), 292 background_color_(0),
295 top_toolbar_height_(0), 293 top_toolbar_height_(0),
296 accessibility_state_(ACCESSIBILITY_STATE_OFF), 294 accessibility_state_(ACCESSIBILITY_STATE_OFF),
297 is_print_preview_(false) { 295 is_print_preview_(false) {
(...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after
1205 1203
1206 void OutOfProcessInstance::DocumentLoadComplete(int page_count) { 1204 void OutOfProcessInstance::DocumentLoadComplete(int page_count) {
1207 // Clear focus state for OSK. 1205 // Clear focus state for OSK.
1208 FormTextFieldFocusChange(false); 1206 FormTextFieldFocusChange(false);
1209 1207
1210 DCHECK(document_load_state_ == LOAD_STATE_LOADING); 1208 DCHECK(document_load_state_ == LOAD_STATE_LOADING);
1211 document_load_state_ = LOAD_STATE_COMPLETE; 1209 document_load_state_ = LOAD_STATE_COMPLETE;
1212 UserMetricsRecordAction("PDF.LoadSuccess"); 1210 UserMetricsRecordAction("PDF.LoadSuccess");
1213 uma_.HistogramEnumeration("PDF.DocumentFeature", LOADED_DOCUMENT, 1211 uma_.HistogramEnumeration("PDF.DocumentFeature", LOADED_DOCUMENT,
1214 FEATURES_COUNT); 1212 FEATURES_COUNT);
1215 #if defined(OS_LINUX)
1216 if (!font_substitution_reported_) 1213 if (!font_substitution_reported_)
1217 uma_.HistogramEnumeration("PDF.IsFontSubstituted", 0, 2); 1214 uma_.HistogramEnumeration("PDF.IsFontSubstituted", 0, 2);
1218 #endif
1219 1215
1220 // Note: If we are in print preview mode the scroll location is retained 1216 // Note: If we are in print preview mode the scroll location is retained
1221 // across document loads so we don't want to scroll again and override it. 1217 // across document loads so we don't want to scroll again and override it.
1222 if (IsPrintPreview()) { 1218 if (IsPrintPreview()) {
1223 AppendBlankPrintPreviewPages(); 1219 AppendBlankPrintPreviewPages();
1224 OnGeometryChanged(0, 0); 1220 OnGeometryChanged(0, 0);
1225 } 1221 }
1226 1222
1227 pp::VarDictionary metadata_message; 1223 pp::VarDictionary metadata_message;
1228 metadata_message.Set(pp::Var(kType), pp::Var(kJSMetadataType)); 1224 metadata_message.Set(pp::Var(kType), pp::Var(kJSMetadataType));
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
1316 paint_manager_.InvalidateRect(pp::Rect(pp::Point(), plugin_size_)); 1312 paint_manager_.InvalidateRect(pp::Rect(pp::Point(), plugin_size_));
1317 1313
1318 // Send a progress value of -1 to indicate a failure. 1314 // Send a progress value of -1 to indicate a failure.
1319 pp::VarDictionary message; 1315 pp::VarDictionary message;
1320 message.Set(pp::Var(kType), pp::Var(kJSLoadProgressType)); 1316 message.Set(pp::Var(kType), pp::Var(kJSLoadProgressType));
1321 message.Set(pp::Var(kJSProgressPercentage), pp::Var(-1)); 1317 message.Set(pp::Var(kJSProgressPercentage), pp::Var(-1));
1322 PostMessage(message); 1318 PostMessage(message);
1323 } 1319 }
1324 1320
1325 void OutOfProcessInstance::FontSubstituted() { 1321 void OutOfProcessInstance::FontSubstituted() {
1326 #if defined(OS_LINUX)
1327 if (font_substitution_reported_) 1322 if (font_substitution_reported_)
1328 return; 1323 return;
1329 font_substitution_reported_ = true; 1324 font_substitution_reported_ = true;
1330 uma_.HistogramEnumeration("PDF.IsFontSubstituted", 1, 2); 1325 uma_.HistogramEnumeration("PDF.IsFontSubstituted", 1, 2);
1331 #endif
1332 } 1326 }
1333 1327
1334 void OutOfProcessInstance::PreviewDocumentLoadFailed() { 1328 void OutOfProcessInstance::PreviewDocumentLoadFailed() {
1335 UserMetricsRecordAction("PDF.PreviewDocumentLoadFailure"); 1329 UserMetricsRecordAction("PDF.PreviewDocumentLoadFailure");
1336 if (preview_document_load_state_ != LOAD_STATE_LOADING || 1330 if (preview_document_load_state_ != LOAD_STATE_LOADING ||
1337 preview_pages_info_.empty()) { 1331 preview_pages_info_.empty()) {
1338 return; 1332 return;
1339 } 1333 }
1340 1334
1341 preview_document_load_state_ = LOAD_STATE_FAILED; 1335 preview_document_load_state_ = LOAD_STATE_FAILED;
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
1558 const pp::FloatPoint& scroll_offset) { 1552 const pp::FloatPoint& scroll_offset) {
1559 float max_x = document_size_.width() * zoom_ - plugin_dip_size_.width(); 1553 float max_x = document_size_.width() * zoom_ - plugin_dip_size_.width();
1560 float x = std::max(std::min(scroll_offset.x(), max_x), 0.0f); 1554 float x = std::max(std::min(scroll_offset.x(), max_x), 0.0f);
1561 float min_y = -top_toolbar_height_; 1555 float min_y = -top_toolbar_height_;
1562 float max_y = document_size_.height() * zoom_ - plugin_dip_size_.height(); 1556 float max_y = document_size_.height() * zoom_ - plugin_dip_size_.height();
1563 float y = std::max(std::min(scroll_offset.y(), max_y), min_y); 1557 float y = std::max(std::min(scroll_offset.y(), max_y), min_y);
1564 return pp::FloatPoint(x, y); 1558 return pp::FloatPoint(x, y);
1565 } 1559 }
1566 1560
1567 } // namespace chrome_pdf 1561 } // namespace chrome_pdf
OLDNEW
« no previous file with comments | « pdf/out_of_process_instance.h ('k') | pdf/pdfium/pdfium_engine.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698