Added evil hack for Opera projection css media mode compatibility.
authorTrevor Parscal <tparscal@users.mediawiki.org>
Fri, 31 Jul 2009 17:18:49 +0000 (17:18 +0000)
committerTrevor Parscal <tparscal@users.mediawiki.org>
Fri, 31 Jul 2009 17:18:49 +0000 (17:18 +0000)
includes/OutputPage.php

index e19ac7d..6f18312 100644 (file)
@@ -1894,6 +1894,14 @@ class OutputPage {
         */
        public function addStyle( $style, $media='', $condition='', $dir='' ) {
                $options = array();
+               // In Opera, fullscreen mode is treated as projection mode, and it causes
+               // styles set for screen to not be loaded - thus breaking the page -  so
+               // we can just append projection to the media attribute when it's screen
+               // so the browser is happy and - with no side-effects on other browsers.
+               // Also - even though we expect the media type to be lowercase, but here
+               // we force it to lowercase to be safe.
+               if ( strtolower( $media ) == 'screen' )
+                       $media .= ',projection';
                if( $media )
                        $options['media'] = $media;
                if( $condition )