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

Side by Side Diff: third_party/WebKit/Source/core/dom/Document.h

Issue 2515373003: Post tasks for sensitive input visibility notifications (Closed)
Patch Set: dcheng, haraken comments round 2 Created 4 years 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 | « no previous file | third_party/WebKit/Source/core/dom/Document.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All
7 * rights reserved. 7 * rights reserved.
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved.
9 * (http://www.torchmobile.com/) 9 * (http://www.torchmobile.com/)
10 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 10 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
(...skipping 1294 matching lines...) Expand 10 before | Expand all | Expand 10 after
1305 1305
1306 // Indicates whether the user has interacted with this particular Document. 1306 // Indicates whether the user has interacted with this particular Document.
1307 void setHasReceivedUserGesture() { m_hasReceivedUserGesture = true; } 1307 void setHasReceivedUserGesture() { m_hasReceivedUserGesture = true; }
1308 bool hasReceivedUserGesture() const { return m_hasReceivedUserGesture; } 1308 bool hasReceivedUserGesture() const { return m_hasReceivedUserGesture; }
1309 1309
1310 // Document maintains a counter of visible non-secure password 1310 // Document maintains a counter of visible non-secure password
1311 // fields in the page. Used to notify the embedder when all visible 1311 // fields in the page. Used to notify the embedder when all visible
1312 // non-secure passwords fields are no longer visible. 1312 // non-secure passwords fields are no longer visible.
1313 void incrementPasswordCount(); 1313 void incrementPasswordCount();
1314 void decrementPasswordCount(); 1314 void decrementPasswordCount();
1315 unsigned passwordCount() const;
1316 1315
1317 protected: 1316 protected:
1318 Document(const DocumentInit&, DocumentClassFlags = DefaultDocumentClass); 1317 Document(const DocumentInit&, DocumentClassFlags = DefaultDocumentClass);
1319 1318
1320 void didUpdateSecurityOrigin() final; 1319 void didUpdateSecurityOrigin() final;
1321 1320
1322 void clearXMLVersion() { m_xmlVersion = String(); } 1321 void clearXMLVersion() { m_xmlVersion = String(); }
1323 1322
1324 virtual Document* cloneDocumentWithoutChildren(); 1323 virtual Document* cloneDocumentWithoutChildren();
1325 1324
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
1418 using EventFactorySet = HashSet<std::unique_ptr<EventFactoryBase>>; 1417 using EventFactorySet = HashSet<std::unique_ptr<EventFactoryBase>>;
1419 static EventFactorySet& eventFactories(); 1418 static EventFactorySet& eventFactories();
1420 1419
1421 void setNthIndexCache(NthIndexCache* nthIndexCache) { 1420 void setNthIndexCache(NthIndexCache* nthIndexCache) {
1422 DCHECK(!m_nthIndexCache || !nthIndexCache); 1421 DCHECK(!m_nthIndexCache || !nthIndexCache);
1423 m_nthIndexCache = nthIndexCache; 1422 m_nthIndexCache = nthIndexCache;
1424 } 1423 }
1425 1424
1426 const OriginAccessEntry& accessEntryFromURL(); 1425 const OriginAccessEntry& accessEntryFromURL();
1427 1426
1427 void sendSensitiveInputVisibility();
1428 void sendSensitiveInputVisibilityInternal();
1429
1428 DocumentLifecycle m_lifecycle; 1430 DocumentLifecycle m_lifecycle;
1429 1431
1430 bool m_hasNodesWithPlaceholderStyle; 1432 bool m_hasNodesWithPlaceholderStyle;
1431 bool m_evaluateMediaQueriesOnStyleRecalc; 1433 bool m_evaluateMediaQueriesOnStyleRecalc;
1432 1434
1433 // If we do ignore the pending stylesheet count, then we need to add a boolean 1435 // If we do ignore the pending stylesheet count, then we need to add a boolean
1434 // to track that this happened so that we can do a full repaint when the 1436 // to track that this happened so that we can do a full repaint when the
1435 // stylesheets do eventually load. 1437 // stylesheets do eventually load.
1436 PendingSheetLayout m_pendingSheetLayout; 1438 PendingSheetLayout m_pendingSheetLayout;
1437 1439
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
1658 1660
1659 bool m_mayContainV0Shadow = false; 1661 bool m_mayContainV0Shadow = false;
1660 1662
1661 Member<SnapCoordinator> m_snapCoordinator; 1663 Member<SnapCoordinator> m_snapCoordinator;
1662 1664
1663 WouldLoadReason m_wouldLoadReason; 1665 WouldLoadReason m_wouldLoadReason;
1664 1666
1665 Member<PropertyRegistry> m_propertyRegistry; 1667 Member<PropertyRegistry> m_propertyRegistry;
1666 1668
1667 unsigned m_passwordCount; 1669 unsigned m_passwordCount;
1670
1671 TaskHandle m_sensitiveInputVisibilityTask;
1668 }; 1672 };
1669 1673
1670 extern template class CORE_EXTERN_TEMPLATE_EXPORT Supplement<Document>; 1674 extern template class CORE_EXTERN_TEMPLATE_EXPORT Supplement<Document>;
1671 1675
1672 inline bool Document::shouldOverrideLegacyDescription( 1676 inline bool Document::shouldOverrideLegacyDescription(
1673 ViewportDescription::Type origin) const { 1677 ViewportDescription::Type origin) const {
1674 // The different (legacy) meta tags have different priorities based on the 1678 // The different (legacy) meta tags have different priorities based on the
1675 // type regardless of which order they appear in the DOM. The priority is 1679 // type regardless of which order they appear in the DOM. The priority is
1676 // given by the ViewportDescription::Type enum. 1680 // given by the ViewportDescription::Type enum.
1677 return origin >= m_legacyViewportDescription.type; 1681 return origin >= m_legacyViewportDescription.type;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1712 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true); 1716 DEFINE_TYPE_CASTS(TreeScope, Document, document, true, true);
1713 1717
1714 } // namespace blink 1718 } // namespace blink
1715 1719
1716 #ifndef NDEBUG 1720 #ifndef NDEBUG
1717 // Outside the WebCore namespace for ease of invocation from gdb. 1721 // Outside the WebCore namespace for ease of invocation from gdb.
1718 CORE_EXPORT void showLiveDocumentInstances(); 1722 CORE_EXPORT void showLiveDocumentInstances();
1719 #endif 1723 #endif
1720 1724
1721 #endif // Document_h 1725 #endif // Document_h
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/dom/Document.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698