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

Side by Side Diff: third_party/WebKit/Source/core/loader/NavigationScheduler.cpp

Issue 1799253002: Stricter user gestures for touch - measure and warn (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Tweaks Created 4 years, 8 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 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
5 * Copyright (C) 2009 Adam Barth. All rights reserved. 5 * Copyright (C) 2009 Adam Barth. All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 10 *
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 316
317 // We want a new back/forward list item if the refresh timeout is > 1 second . 317 // We want a new back/forward list item if the refresh timeout is > 1 second .
318 if (!m_redirect || delay <= m_redirect->delay()) 318 if (!m_redirect || delay <= m_redirect->delay())
319 schedule(ScheduledRedirect::create(delay, m_frame->document(), url, dela y <= 1)); 319 schedule(ScheduledRedirect::create(delay, m_frame->document(), url, dela y <= 1));
320 } 320 }
321 321
322 bool NavigationScheduler::mustReplaceCurrentItem(LocalFrame* targetFrame) 322 bool NavigationScheduler::mustReplaceCurrentItem(LocalFrame* targetFrame)
323 { 323 {
324 // Non-user navigation before the page has finished firing onload should not create a new back/forward item. 324 // Non-user navigation before the page has finished firing onload should not create a new back/forward item.
325 // See https://webkit.org/b/42861 for the original motivation for this. 325 // See https://webkit.org/b/42861 for the original motivation for this.
326 if (!UserGestureIndicator::processingUserGesture() && !targetFrame->document ()->loadEventFinished()) 326 if (!targetFrame->document()->loadEventFinished() && !UserGestureIndicator:: utilizeUserGesture())
327 return true; 327 return true;
328 328
329 // Navigation of a subframe during loading of an ancestor frame does not cre ate a new back/forward item. 329 // Navigation of a subframe during loading of an ancestor frame does not cre ate a new back/forward item.
330 // The definition of "during load" is any time before all handlers for the l oad event have been run. 330 // The definition of "during load" is any time before all handlers for the l oad event have been run.
331 // See https://bugs.webkit.org/show_bug.cgi?id=14957 for the original motiva tion for this. 331 // See https://bugs.webkit.org/show_bug.cgi?id=14957 for the original motiva tion for this.
332 Frame* parentFrame = targetFrame->tree().parent(); 332 Frame* parentFrame = targetFrame->tree().parent();
333 return parentFrame && parentFrame->isLocalFrame() && !toLocalFrame(parentFra me)->loader().allAncestorsAreComplete(); 333 return parentFrame && parentFrame->isLocalFrame() && !toLocalFrame(parentFra me)->loader().allAncestorsAreComplete();
334 } 334 }
335 335
336 void NavigationScheduler::scheduleLocationChange(Document* originDocument, const String& url, bool replacesCurrentItem) 336 void NavigationScheduler::scheduleLocationChange(Document* originDocument, const String& url, bool replacesCurrentItem)
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 m_redirect.clear(); 445 m_redirect.clear();
446 } 446 }
447 447
448 DEFINE_TRACE(NavigationScheduler) 448 DEFINE_TRACE(NavigationScheduler)
449 { 449 {
450 visitor->trace(m_frame); 450 visitor->trace(m_frame);
451 visitor->trace(m_redirect); 451 visitor->trace(m_redirect);
452 } 452 }
453 453
454 } // namespace blink 454 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698