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

Side by Side Diff: Source/core/rendering/RenderBoxModelObject.cpp

Issue 264103002: [New Multicolumn] fast/multicol/multicol-with-child-renderLayer-for-input.html puts the textfield i… (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: See if this 'fixes' the minor rendering difference on Mac. Created 6 years, 7 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
« no previous file with comments | « Source/core/frame/FrameView.cpp ('k') | no next file » | 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) 2005 Allan Sandfeld Jensen (kde@carewolf.com) 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com)
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com)
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
7 * Copyright (C) 2010 Google Inc. All rights reserved. 7 * Copyright (C) 2010 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 2727 matching lines...) Expand 10 before | Expand all | Expand 10 after
2738 2738
2739 void RenderBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, Tra nsformState& transformState) const 2739 void RenderBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, Tra nsformState& transformState) const
2740 { 2740 {
2741 // We don't expect to be called during layout. 2741 // We don't expect to be called during layout.
2742 ASSERT(!view() || !view()->layoutStateEnabled()); 2742 ASSERT(!view() || !view()->layoutStateEnabled());
2743 2743
2744 RenderObject* o = container(); 2744 RenderObject* o = container();
2745 if (!o) 2745 if (!o)
2746 return; 2746 return;
2747 2747
2748 // The point inside a box that's inside a region has its coordinates relativ e to the region, 2748 if (o->isRenderFlowThread())
2749 // not the FlowThread that is its container in the RenderObject tree. 2749 transformState.move(o->columnOffset(LayoutPoint(transformState.mappedPoi nt())));
2750 if (o->isRenderFlowThread() && isRenderBlock()) {
2751 // FIXME: switch to Box instead of Block when we'll have range informati on for boxes as well, not just for blocks.
2752 RenderRegion* startRegion;
2753 RenderRegion* ignoredEndRegion;
2754 toRenderFlowThread(o)->getRegionRangeForBox(toRenderBlock(this), startRe gion, ignoredEndRegion);
2755 // If there is no region to use the FlowThread, then there's no region r ange for the content in that FlowThread.
2756 // An API like elementFromPoint might crash without this check.
2757 if (startRegion)
2758 o = startRegion;
2759 }
2760 2750
2761 o->mapAbsoluteToLocalPoint(mode, transformState); 2751 o->mapAbsoluteToLocalPoint(mode, transformState);
2762 2752
2763 LayoutSize containerOffset = offsetFromContainer(o, LayoutPoint()); 2753 LayoutSize containerOffset = offsetFromContainer(o, LayoutPoint());
2764 2754
2765 if (!style()->hasOutOfFlowPosition() && o->hasColumns()) { 2755 if (!style()->hasOutOfFlowPosition() && o->hasColumns()) {
2766 RenderBlock* block = toRenderBlock(o); 2756 RenderBlock* block = toRenderBlock(o);
2767 LayoutPoint point(roundedLayoutPoint(transformState.mappedPoint())); 2757 LayoutPoint point(roundedLayoutPoint(transformState.mappedPoint()));
2768 point -= containerOffset; 2758 point -= containerOffset;
2769 block->adjustForColumnRect(containerOffset, point); 2759 block->adjustForColumnRect(containerOffset, point);
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
2846 ASSERT(!beforeChild || toBoxModelObject == beforeChild->parent()); 2836 ASSERT(!beforeChild || toBoxModelObject == beforeChild->parent());
2847 for (RenderObject* child = startChild; child && child != endChild; ) { 2837 for (RenderObject* child = startChild; child && child != endChild; ) {
2848 // Save our next sibling as moveChildTo will clear it. 2838 // Save our next sibling as moveChildTo will clear it.
2849 RenderObject* nextSibling = child->nextSibling(); 2839 RenderObject* nextSibling = child->nextSibling();
2850 moveChildTo(toBoxModelObject, child, beforeChild, fullRemoveInsert); 2840 moveChildTo(toBoxModelObject, child, beforeChild, fullRemoveInsert);
2851 child = nextSibling; 2841 child = nextSibling;
2852 } 2842 }
2853 } 2843 }
2854 2844
2855 } // namespace WebCore 2845 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/frame/FrameView.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698