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

Side by Side Diff: Source/core/html/HTMLImageElement.cpp

Issue 22145005: Refactor code for <img> size calculation during attach (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 4 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 | « no previous file | 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 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserv ed. 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2010 Apple Inc. All rights reserv ed.
5 * Copyright (C) 2010 Google Inc. All rights reserved. 5 * Copyright (C) 2010 Google Inc. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 158
159 void HTMLImageElement::attach(const AttachContext& context) 159 void HTMLImageElement::attach(const AttachContext& context)
160 { 160 {
161 HTMLElement::attach(context); 161 HTMLElement::attach(context);
162 162
163 if (renderer() && renderer()->isImage() && !m_imageLoader.hasPendingBeforeLo adEvent()) { 163 if (renderer() && renderer()->isImage() && !m_imageLoader.hasPendingBeforeLo adEvent()) {
164 RenderImage* renderImage = toRenderImage(renderer()); 164 RenderImage* renderImage = toRenderImage(renderer());
165 RenderImageResource* renderImageResource = renderImage->imageResource(); 165 RenderImageResource* renderImageResource = renderImage->imageResource();
166 if (renderImageResource->hasImage()) 166 if (renderImageResource->hasImage())
167 return; 167 return;
168 renderImageResource->setCachedImage(m_imageLoader.image());
169 168
170 // If we have no image at all because we have no src attribute, set 169 // If we have no image at all because we have no src attribute, set
171 // image height and width for the alt text instead. 170 // image height and width for the alt text instead.
172 if (!m_imageLoader.image() && !renderImageResource->cachedImage()) 171 if (!m_imageLoader.image() && !renderImageResource->cachedImage())
173 renderImage->setImageSizeForAltText(); 172 renderImage->setImageSizeForAltText();
173 else
174 renderImageResource->setCachedImage(m_imageLoader.image());
175
174 } 176 }
175 } 177 }
176 178
177 Node::InsertionNotificationRequest HTMLImageElement::insertedInto(ContainerNode* insertionPoint) 179 Node::InsertionNotificationRequest HTMLImageElement::insertedInto(ContainerNode* insertionPoint)
178 { 180 {
179 // m_form can be non-null if it was set in constructor. 181 // m_form can be non-null if it was set in constructor.
180 if (!m_form) { 182 if (!m_form) {
181 m_form = findFormAncestor(); 183 m_form = findFormAncestor();
182 if (m_form) 184 if (m_form)
183 m_form->registerImgElement(this); 185 m_form->registerImgElement(this);
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 361
360 Image* HTMLImageElement::imageContents() 362 Image* HTMLImageElement::imageContents()
361 { 363 {
362 if (!m_imageLoader.imageComplete()) 364 if (!m_imageLoader.imageComplete())
363 return 0; 365 return 0;
364 366
365 return m_imageLoader.image()->image(); 367 return m_imageLoader.image()->image();
366 } 368 }
367 369
368 } 370 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698