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

Side by Side Diff: Source/core/layout/LayoutObject.cpp

Issue 1018503004: Invalidate DisplayItemClient when selection state changes (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: +1 missing expectation Created 5 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « LayoutTests/TestExpectations ('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) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
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 1245 matching lines...) Expand 10 before | Expand all | Expand 10 after
1256 // Update selection rect when we are doing full invalidation (in case that t he object is moved, composite status changed, etc.) 1256 // Update selection rect when we are doing full invalidation (in case that t he object is moved, composite status changed, etc.)
1257 // or shouldInvalidationSelection is set (in case that the selection itself changed). 1257 // or shouldInvalidationSelection is set (in case that the selection itself changed).
1258 bool fullInvalidation = view()->doingFullPaintInvalidation() || isFullPaintI nvalidationReason(invalidationReason); 1258 bool fullInvalidation = view()->doingFullPaintInvalidation() || isFullPaintI nvalidationReason(invalidationReason);
1259 if (!fullInvalidation && !shouldInvalidateSelection()) 1259 if (!fullInvalidation && !shouldInvalidateSelection())
1260 return; 1260 return;
1261 1261
1262 LayoutRect oldSelectionRect = previousSelectionRectForPaintInvalidation(); 1262 LayoutRect oldSelectionRect = previousSelectionRectForPaintInvalidation();
1263 LayoutRect newSelectionRect = selectionRectForPaintInvalidation(&paintInvali dationContainer); 1263 LayoutRect newSelectionRect = selectionRectForPaintInvalidation(&paintInvali dationContainer);
1264 setPreviousSelectionRectForPaintInvalidation(newSelectionRect); 1264 setPreviousSelectionRectForPaintInvalidation(newSelectionRect);
1265 1265
1266 if (RuntimeEnabledFeatures::slimmingPaintEnabled() && shouldInvalidateSelect ion())
1267 invalidateDisplayItemClients(paintInvalidationContainer);
1268
1266 if (fullInvalidation) 1269 if (fullInvalidation)
1267 return; 1270 return;
1268 1271
1269 fullyInvalidatePaint(paintInvalidationContainer, PaintInvalidationSelection, oldSelectionRect, newSelectionRect); 1272 fullyInvalidatePaint(paintInvalidationContainer, PaintInvalidationSelection, oldSelectionRect, newSelectionRect);
1270 } 1273 }
1271 1274
1272 PaintInvalidationReason LayoutObject::invalidatePaintIfNeeded(const PaintInvalid ationState& paintInvalidationState, const LayoutBoxModelObject& paintInvalidatio nContainer) 1275 PaintInvalidationReason LayoutObject::invalidatePaintIfNeeded(const PaintInvalid ationState& paintInvalidationState, const LayoutBoxModelObject& paintInvalidatio nContainer)
1273 { 1276 {
1274 LayoutView* v = view(); 1277 LayoutView* v = view();
1275 if (v->document().printing()) 1278 if (v->document().printing())
(...skipping 1945 matching lines...) Expand 10 before | Expand all | Expand 10 after
3221 { 3224 {
3222 if (object1) { 3225 if (object1) {
3223 const blink::LayoutObject* root = object1; 3226 const blink::LayoutObject* root = object1;
3224 while (root->parent()) 3227 while (root->parent())
3225 root = root->parent(); 3228 root = root->parent();
3226 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); 3229 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0);
3227 } 3230 }
3228 } 3231 }
3229 3232
3230 #endif 3233 #endif
OLDNEW
« no previous file with comments | « LayoutTests/TestExpectations ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698