| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2010 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 // User gestures timeout in 1 second. | 37 // User gestures timeout in 1 second. |
| 38 const double userGestureTimeout = 1.0; | 38 const double userGestureTimeout = 1.0; |
| 39 | 39 |
| 40 // For out of process tokens we allow a 10 second delay. | 40 // For out of process tokens we allow a 10 second delay. |
| 41 const double userGestureOutOfProcessTimeout = 10.0; | 41 const double userGestureOutOfProcessTimeout = 10.0; |
| 42 | 42 |
| 43 class GestureToken : public UserGestureToken { | 43 class GestureToken : public UserGestureToken { |
| 44 public: | 44 public: |
| 45 static PassRefPtr<UserGestureToken> create() { return adoptRef(new GestureTo
ken); } | 45 static PassRefPtr<UserGestureToken> create() { return adoptRef(new GestureTo
ken); } |
| 46 | 46 |
| 47 virtual ~GestureToken() { } | 47 ~GestureToken() override {} |
| 48 virtual bool hasGestures() const override | 48 bool hasGestures() const override |
| 49 { | 49 { |
| 50 // Do not enforce timeouts for gestures which spawned javascript prompts
. | 50 // Do not enforce timeouts for gestures which spawned javascript prompts
. |
| 51 if (m_consumableGestures < 1 || (WTF::currentTime() - m_timestamp > (m_o
utOfProcess ? userGestureOutOfProcessTimeout : userGestureTimeout) && !m_javascr
iptPrompt)) | 51 if (m_consumableGestures < 1 || (WTF::currentTime() - m_timestamp > (m_o
utOfProcess ? userGestureOutOfProcessTimeout : userGestureTimeout) && !m_javascr
iptPrompt)) |
| 52 return false; | 52 return false; |
| 53 return true; | 53 return true; |
| 54 } | 54 } |
| 55 | 55 |
| 56 void addGesture() | 56 void addGesture() |
| 57 { | 57 { |
| 58 m_consumableGestures++; | 58 m_consumableGestures++; |
| 59 m_timestamp = WTF::currentTime(); | 59 m_timestamp = WTF::currentTime(); |
| 60 } | 60 } |
| 61 | 61 |
| 62 void resetTimestamp() | 62 void resetTimestamp() |
| 63 { | 63 { |
| 64 m_timestamp = WTF::currentTime(); | 64 m_timestamp = WTF::currentTime(); |
| 65 } | 65 } |
| 66 | 66 |
| 67 bool consumeGesture() | 67 bool consumeGesture() |
| 68 { | 68 { |
| 69 if (!m_consumableGestures) | 69 if (!m_consumableGestures) |
| 70 return false; | 70 return false; |
| 71 m_consumableGestures--; | 71 m_consumableGestures--; |
| 72 return true; | 72 return true; |
| 73 } | 73 } |
| 74 | 74 |
| 75 virtual void setOutOfProcess() override | 75 void setOutOfProcess() override |
| 76 { | 76 { |
| 77 if (WTF::currentTime() - m_timestamp > userGestureTimeout) | 77 if (WTF::currentTime() - m_timestamp > userGestureTimeout) |
| 78 return; | 78 return; |
| 79 if (hasGestures()) | 79 if (hasGestures()) |
| 80 m_outOfProcess = true; | 80 m_outOfProcess = true; |
| 81 } | 81 } |
| 82 | 82 |
| 83 virtual void setJavascriptPrompt() override | 83 void setJavascriptPrompt() override |
| 84 { | 84 { |
| 85 if (WTF::currentTime() - m_timestamp > userGestureTimeout) | 85 if (WTF::currentTime() - m_timestamp > userGestureTimeout) |
| 86 return; | 86 return; |
| 87 if (hasGestures()) | 87 if (hasGestures()) |
| 88 m_javascriptPrompt = true; | 88 m_javascriptPrompt = true; |
| 89 } | 89 } |
| 90 | 90 |
| 91 private: | 91 private: |
| 92 GestureToken() | 92 GestureToken() |
| 93 : m_consumableGestures(0) | 93 : m_consumableGestures(0) |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 209 } | 209 } |
| 210 | 210 |
| 211 bool UserGestureIndicator::processedUserGestureSinceLoad() | 211 bool UserGestureIndicator::processedUserGestureSinceLoad() |
| 212 { | 212 { |
| 213 if (!isMainThread()) | 213 if (!isMainThread()) |
| 214 return false; | 214 return false; |
| 215 return s_processedUserGestureSinceLoad; | 215 return s_processedUserGestureSinceLoad; |
| 216 } | 216 } |
| 217 | 217 |
| 218 } | 218 } |
| OLD | NEW |