Brion VIBBER has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/85888


Change subject: Implement LESS round() function, needed by MobileFrontend
......................................................................

Implement LESS round() function, needed by MobileFrontend

LESS 1.4.0 includes a round() function which is used by the
MobileFrontend styles when setting font sizes, etc.

This doesn't seem to have been implemented in PHP lessc 0.4.0,
so here's a quickie implementation in our defaults.

Needed by I068686854ad79e2f63a08d81b1af02f373110613

Change-Id: I1efc5bef47efd33b3caaebf0f241fbf81a0209f2
---
M includes/DefaultSettings.php
1 file changed, 37 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/88/85888/1

diff --git a/includes/DefaultSettings.php b/includes/DefaultSettings.php
index 7a1eb22..1341acd 100644
--- a/includes/DefaultSettings.php
+++ b/includes/DefaultSettings.php
@@ -3358,6 +3358,43 @@
                $less->embeddedImages[ $file ] = filemtime( $file );
                return 'url(' . $data . ')';
        },
+       
+       /**
+        * Round a number, optionally to a given number of decimal points.
+        *
+        * This is a core function in LESS 1.4.0, but isn't implemented
+        * in PHP lessc 0.4.0 which we use.
+        *
+        * @par Example:
+        * @code
+        *   input,
+        *   textarea {
+        *     font-size: round( 1em / @fontScalingFactor, 2 );
+        *   }
+        * @endcode
+        */
+       'round' => function( $frame, $less ) {
+               if( $frame[0] === 'list' ) {
+                       $number = $frame[2][0];
+                       $decimalPlaces = $frame[2][1];
+               } else {
+                       $number = $frame;
+                       $decimalPlaces = array(
+                               'number',
+                               0,
+                               '' // bare units please!
+                       );
+               }
+               if( $number[0] !== 'number' || $decimalPlaces[0] !== 'number' ) 
{
+                       throw new MWException( 'round() expected number or two 
numbers' );
+               }
+               
+               return array(
+                       'number',
+                       round( $number[1], $decimalPlaces[1] ),
+                       $number[2] // pass through the base number's units
+               );
+       }
 );
 
 /**

-- 
To view, visit https://gerrit.wikimedia.org/r/85888
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1efc5bef47efd33b3caaebf0f241fbf81a0209f2
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Brion VIBBER <br...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to