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

Side by Side Diff: Source/core/dom/Element.cpp

Issue 610423004: Preserve fractional scroll offset for JS scrolling API (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: address comments Created 6 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 /* 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 Peter Kelly (pmk@post.com) 4 * (C) 2001 Peter Kelly (pmk@post.com)
5 * (C) 2001 Dirk Mueller (mueller@kde.org) 5 * (C) 2001 Dirk Mueller (mueller@kde.org)
6 * (C) 2007 David Smith (catfish.man@gmail.com) 6 * (C) 2007 David Smith (catfish.man@gmail.com)
7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved. 7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved.
8 * (C) 2007 Eric Seidel (eric@webkit.org) 8 * (C) 2007 Eric Seidel (eric@webkit.org)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 661 matching lines...) Expand 10 before | Expand all | Expand 10 after
672 if (document().inQuirksMode()) 672 if (document().inQuirksMode())
673 return; 673 return;
674 674
675 LocalFrame* frame = document().frame(); 675 LocalFrame* frame = document().frame();
676 if (!frame) 676 if (!frame)
677 return; 677 return;
678 FrameView* view = frame->view(); 678 FrameView* view = frame->view();
679 if (!view) 679 if (!view)
680 return; 680 return;
681 681
682 view->setScrollPosition(IntPoint(roundf(newLeft * frame->pageZoomFactor( )), view->scrollY())); 682 view->setScrollPosition(DoublePoint(newLeft * frame->pageZoomFactor(), v iew->scrollY()));
683 } 683 }
684 } 684 }
685 685
686 void Element::setScrollLeft(const Dictionary& scrollOptionsHorizontal, Exception State& exceptionState) 686 void Element::setScrollLeft(const Dictionary& scrollOptionsHorizontal, Exception State& exceptionState)
687 { 687 {
688 String scrollBehaviorString; 688 String scrollBehaviorString;
689 ScrollBehavior scrollBehavior = ScrollBehaviorAuto; 689 ScrollBehavior scrollBehavior = ScrollBehaviorAuto;
690 if (DictionaryHelper::get(scrollOptionsHorizontal, "behavior", scrollBehavio rString)) { 690 if (DictionaryHelper::get(scrollOptionsHorizontal, "behavior", scrollBehavio rString)) {
691 if (!ScrollableArea::scrollBehaviorFromString(scrollBehaviorString, scro llBehavior)) { 691 if (!ScrollableArea::scrollBehaviorFromString(scrollBehaviorString, scro llBehavior)) {
692 exceptionState.throwTypeError("The ScrollBehavior provided is invali d."); 692 exceptionState.throwTypeError("The ScrollBehavior provided is invali d.");
(...skipping 25 matching lines...) Expand all
718 if (document().inQuirksMode()) 718 if (document().inQuirksMode())
719 return; 719 return;
720 720
721 LocalFrame* frame = document().frame(); 721 LocalFrame* frame = document().frame();
722 if (!frame) 722 if (!frame)
723 return; 723 return;
724 FrameView* view = frame->view(); 724 FrameView* view = frame->view();
725 if (!view) 725 if (!view)
726 return; 726 return;
727 727
728 view->setScrollPosition(IntPoint(view->scrollX(), roundf(newTop * frame- >pageZoomFactor()))); 728 view->setScrollPosition(DoublePoint(view->scrollX(), newTop * frame->pag eZoomFactor()));
729 } 729 }
730 } 730 }
731 731
732 void Element::setScrollTop(const Dictionary& scrollOptionsVertical, ExceptionSta te& exceptionState) 732 void Element::setScrollTop(const Dictionary& scrollOptionsVertical, ExceptionSta te& exceptionState)
733 { 733 {
734 String scrollBehaviorString; 734 String scrollBehaviorString;
735 ScrollBehavior scrollBehavior = ScrollBehaviorAuto; 735 ScrollBehavior scrollBehavior = ScrollBehaviorAuto;
736 if (DictionaryHelper::get(scrollOptionsVertical, "behavior", scrollBehaviorS tring)) { 736 if (DictionaryHelper::get(scrollOptionsVertical, "behavior", scrollBehaviorS tring)) {
737 if (!ScrollableArea::scrollBehaviorFromString(scrollBehaviorString, scro llBehavior)) { 737 if (!ScrollableArea::scrollBehaviorFromString(scrollBehaviorString, scro llBehavior)) {
738 exceptionState.throwTypeError("The ScrollBehavior provided is invali d."); 738 exceptionState.throwTypeError("The ScrollBehavior provided is invali d.");
(...skipping 2523 matching lines...) Expand 10 before | Expand all | Expand 10 after
3262 return wrapper; 3262 return wrapper;
3263 3263
3264 CustomElementBinding* binding = perContextData->customElementBinding(customE lementDefinition()); 3264 CustomElementBinding* binding = perContextData->customElementBinding(customE lementDefinition());
3265 3265
3266 wrapper->SetPrototype(binding->prototype()); 3266 wrapper->SetPrototype(binding->prototype());
3267 3267
3268 return V8DOMWrapper::associateObjectWithWrapperNonTemplate(this, wrapperType , wrapper, isolate); 3268 return V8DOMWrapper::associateObjectWithWrapperNonTemplate(this, wrapperType , wrapper, isolate);
3269 } 3269 }
3270 3270
3271 } // namespace blink 3271 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698