New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chrome False Positive For 3D Transforms #240

Closed
deleteme opened this Issue Apr 18, 2011 · 15 comments

Comments

Projects
None yet
3 participants
@deleteme

deleteme commented Apr 18, 2011

When Chrome disables GPU acceleration due to thinking it is running on a system with old drivers, it disables 3D CSS transforms (or butchers elements using those styles).

Modernizr's attempt at detecting this feature via '-webkit-perspective' in document.body.style returns true, which is a false positive.

Related Links:

A member of the chromium team responded to my initial request with,

"The CSS 3D Transforms draft specification (http://www.w3.org/TR/css3-3d-transforms) does not specify that this should be the behavior of -webkit-perspective under these circumstances. It's also not clear that document.body.style's -webkit-perspective is the best way to return information about whether 3D CSS Transforms are enabled.

Changed this to feature request."

@paulirish

This comment has been minimized.

Member

paulirish commented Apr 18, 2011

Thanks for filing this.

In the past just checking the perspective prop in Chrome false positived for a while, but the 3dtransforms media query has been successful in the past in beating the FP.

Can't dig into this at the moment but I appreciate the ticket filing against chrome asking for reliable feature detects. :)

@altryne

This comment has been minimized.

altryne commented May 6, 2011

Don't know if this related, maybe it is, i chrome 12 dev channel, the 3d test gives a false negative on windows. Haven't tested on macs.

@paulirish

This comment has been minimized.

Member

paulirish commented Aug 31, 2011

I've sinced confirmed with the chrome GPU team that the MQ is an indicator of if a GPU made it past the blacklist. so that's good.

i feel good about the MQ test for webkit... can either of you repro a false positive still in chrome 13+

@deleteme

This comment has been minimized.

deleteme commented Aug 31, 2011

What is 'MQ'?

@paulirish

This comment has been minimized.

Member

paulirish commented Aug 31, 2011

media query.. i'm talking about the media query -webkit-transform-3d that we use

@deleteme

This comment has been minimized.

deleteme commented Sep 1, 2011

I do not believe it is working as it should.

I am running Chrome 13 in a Windows XP in a VirtualBox virtual machine, and I'm pretty sure that Chrome isn't using 3d transforms, Modernizr says it is.

Screenshot of the snowstack demo, showing that 3d transforms do not work: http://cl.ly/2A201u3N1T1j3i1H2024

Screenshot of the modernizr test page, showing that it thinks that 3d transforms are supported: http://cl.ly/151h152R0L20300e0t2q

Screenshot of the lower portion of the modernizr test page, under the 'when can i use' stuff: http://cl.ly/2v3H2g0o1m2j1g090R0u

@deleteme

This comment has been minimized.

deleteme commented Sep 1, 2011

My previous post assumes that the new media query technique is used here: http://modernizr.github.com/Modernizr/test/

@deleteme

This comment has been minimized.

deleteme commented Oct 25, 2011

http://jsfiddle.net/kf8Yx/3/light/ is a page that has:

<div id="passed">Browser passed -webkit-transform-3d media query.</div>

<div id="failed">Browser failed -webkit-transform-3d media query.</div>
#passed {
    border: 1px solid green;
    display: none;
}
#failed {
    border: 1px solid red;
    display: block;
}

@media screen and (-webkit-transform-3d) {
  #passed {
    display: block;
  }
  #failed {
    display: none;
  }
}

Can anybody manage to get Chrome to display the #failed div? (Meaning that Chrome is not supporting GPU acceleration?) So far, I've only been able to get it to display #passed.

@paulirish

This comment has been minimized.

Member

paulirish commented Dec 10, 2011

Hmm.. Now a way to get Chrome to fix this..

@deleteme can you verify the same thing in chrome canary.. then go to about:gpu and copy that info and file this all at new.crbug.com ?

That would be wonderful :)

@deleteme

This comment has been minimized.

deleteme commented Dec 11, 2011

Filed http://code.google.com/p/chromium/issues/detail?id=107144. I was unable to install Canary.

@paulirish

This comment has been minimized.

Member

paulirish commented Dec 11, 2011

okay. :)

thank you sir

@paulirish

This comment has been minimized.

Member

paulirish commented May 11, 2012

I swear there's another crbug with this issue.

VIrtualBox OS's dont have GPUs so they always have weird bugs like this
i dont think its high on chrome's priority list to fix bugs for machines without real hardware.. so i think this may just always exist.

..

@deleteme

This comment has been minimized.

deleteme commented May 11, 2012

I wonder if I got a more recent copy of Windows, the Chromium team may be more inclined to fix this. Windows XP may not be worth developing for.

@paulirish

This comment has been minimized.

Member

paulirish commented May 11, 2012

chrome still supports winXP, but yes i would imagine less bugs on win7. :)
supporting 3d transforms on XP requires some interesting aerobatics..

@paulirish

This comment has been minimized.

Member

paulirish commented Jul 19, 2012

closing this in honor of the more recent #590 which has the upstream bug.

@paulirish paulirish closed this Jul 19, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment