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

Side by Side Diff: third_party/WebKit/Source/core/editing/SelectionEditor.cpp

Issue 1656743002: Removing more implicit LayoutUnit construction (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix additional test Created 4 years, 10 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) 2004, 2008, 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2004, 2008, 2009, 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 747 matching lines...) Expand 10 before | Expand all | Expand 10 after
758 break; 758 break;
759 } 759 }
760 760
761 m_selection.setIsDirectional(shouldAlwaysUseDirectionalSelection(frame()) || alter == FrameSelection::AlterationExtend); 761 m_selection.setIsDirectional(shouldAlwaysUseDirectionalSelection(frame()) || alter == FrameSelection::AlterationExtend);
762 762
763 return true; 763 return true;
764 } 764 }
765 765
766 // Abs x/y position of the caret ignoring transforms. 766 // Abs x/y position of the caret ignoring transforms.
767 // TODO(yosin) navigation with transforms should be smarter. 767 // TODO(yosin) navigation with transforms should be smarter.
768 static int lineDirectionPointForBlockDirectionNavigationOf(const VisiblePosition & visiblePosition) 768 static LayoutUnit lineDirectionPointForBlockDirectionNavigationOf(const VisibleP osition& visiblePosition)
769 { 769 {
770 if (visiblePosition.isNull()) 770 if (visiblePosition.isNull())
771 return 0; 771 return LayoutUnit();
772 772
773 LayoutObject* layoutObject; 773 LayoutObject* layoutObject;
774 LayoutRect localRect = localCaretRectOfPosition(visiblePosition.toPositionWi thAffinity(), layoutObject); 774 LayoutRect localRect = localCaretRectOfPosition(visiblePosition.toPositionWi thAffinity(), layoutObject);
775 if (localRect.isEmpty() || !layoutObject) 775 if (localRect.isEmpty() || !layoutObject)
776 return 0; 776 return LayoutUnit();
777 777
778 // This ignores transforms on purpose, for now. Vertical navigation is done 778 // This ignores transforms on purpose, for now. Vertical navigation is done
779 // without consulting transforms, so that 'up' in transformed text is 'up' 779 // without consulting transforms, so that 'up' in transformed text is 'up'
780 // relative to the text, not absolute 'up'. 780 // relative to the text, not absolute 'up'.
781 FloatPoint caretPoint = layoutObject->localToAbsolute(FloatPoint(localRect.l ocation())); 781 FloatPoint caretPoint = layoutObject->localToAbsolute(FloatPoint(localRect.l ocation()));
782 LayoutObject* containingBlock = layoutObject->containingBlock(); 782 LayoutObject* containingBlock = layoutObject->containingBlock();
783 if (!containingBlock) 783 if (!containingBlock)
784 containingBlock = layoutObject; // Just use ourselves to determine the w riting mode if we have no containing block. 784 containingBlock = layoutObject; // Just use ourselves to determine the w riting mode if we have no containing block.
785 return containingBlock->isHorizontalWritingMode() ? caretPoint.x() : caretPo int.y(); 785 return LayoutUnit(containingBlock->isHorizontalWritingMode() ? caretPoint.x( ) : caretPoint.y());
786 } 786 }
787 787
788 LayoutUnit SelectionEditor::lineDirectionPointForBlockDirectionNavigation(EPosit ionType type) 788 LayoutUnit SelectionEditor::lineDirectionPointForBlockDirectionNavigation(EPosit ionType type)
789 { 789 {
790 LayoutUnit x; 790 LayoutUnit x;
791 791
792 if (m_selection.isNone()) 792 if (m_selection.isNone())
793 return x; 793 return x;
794 794
795 Position pos; 795 Position pos;
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
901 DEFINE_TRACE(SelectionEditor) 901 DEFINE_TRACE(SelectionEditor)
902 { 902 {
903 visitor->trace(m_frameSelection); 903 visitor->trace(m_frameSelection);
904 visitor->trace(m_selection); 904 visitor->trace(m_selection);
905 visitor->trace(m_selectionInComposedTree); 905 visitor->trace(m_selectionInComposedTree);
906 visitor->trace(m_logicalRange); 906 visitor->trace(m_logicalRange);
907 VisibleSelectionChangeObserver::trace(visitor); 907 VisibleSelectionChangeObserver::trace(visitor);
908 } 908 }
909 909
910 } // namespace blink 910 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698