[Webkit-unassigned] [Bug 21554] Hovering the "src" attribute for an image should show the image dimensions
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sun Nov 22 13:10:03 PST 2009
https://bugs.webkit.org/show_bug.cgi?id=21554
--- Comment #9 from Daniel Bates <dbates at webkit.org> 2009-11-22 13:10:02 PST ---
(In reply to comment #5)
> (From update of attachment 43646 [details])
> > - var title = this._nodeTitleInfo(this.representedObject, this.hasChildren, WebInspector.linkifyURL).title;
> > + var self = this;
> > + var callback = function(propertiesPayload) {
> > + var getPropertyValue = function(propertyName) {
> > + for (e in propertiesPayload)
> > + if (propertiesPayload[e].name == propertyName)
> > + return propertiesPayload[e].value.description;
> > + return null;
> > + };
> > + self._updateTitleWithRespectToNodeProperties(getPropertyValue);
> > + };
> > + var prototype = new WebInspector.ObjectProxy(this.representedObject.id, [], 0);
> > + InjectedScriptAccess.getProperties(prototype, true, callback);
>
> This is going to slow down the Elements panel, since it will delay updating the
> title waiting for the async InjectedScriptAccess.getProperties. (Slower in
> Chrome where the async is corss [sic] process. So we need to minimize these calls.)
>
> We are paying a heavy cost of InjectedScriptAccess.getProperties for every DOM
> element just to filter it later for image elements. The
> InjectedScriptAccess.getProperties call was not designed for one-off property
> access, as you found, since it has .name properties. It is really only used for
> property inspection. I am not sure what the best solution is.
>
Spoke to Pavel on IRC today (11/22). Will implement
WebInspector.ObjectProxy.getPropertiesAsync (as Pavel suggested
<https://bugs.webkit.org/show_bug.cgi?id=21554#c7>) and file a bug report so
that we can further optimize property access.
> Also these should use named functions, with the brace o nthe next line like:
>
> > + function callback(propertiesPayload)
> > + {
> > + function getPropertyValue(propertyName)
> > + {
>
> > + if (node.nodeName.toLowerCase() == "img") {
>
> Use === in cases like this.
Will change.
> > + tooltipText = offsetWidth + "px x " + offsetHeight + "px";
>
> This should use \u00d7 for the multiplication sign, not "x". I don't think "px"
> is needed twice. You could do "123x456 pixels" like Safari, but that will need
> to be localized with a WebInspector.UIString. Or just leave off the units.
Will change to conform to Safari (i.e. "123x456 pixels").
> > + if (offsetHeight != naturalHeight || offsetWidth != naturalWidth)
>
> Use !==.
Will change.
> > + tooltipText += " (natural: " + naturalWidth + "px x " + naturalHeight + "px)";
>
> This text will need to be localized, and should not be appened to another
> string that might be localized. Other languages mgiht want to show them in a
> different order.
I thought to append this to the tooltip only if the displayable size differed
from the natural size.
> So: WebInspector.UIString("%d\u00d7%d", naturalWidth, naturalHeight)
So, I take it you only want to show the natural dimensions? Not the displayable
dimensions?
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list