From 5646f69041af08c6131237b27bd8adedd4a717e7 Mon Sep 17 00:00:00 2001
From: Andreas Gohr <gohr@cosmocode.de>
Date: Thu, 3 Nov 2005 12:47:01 +0100
Subject: [PATCH] a small CSS hack to make the buttons work in IE5.2 Mac

darcs-hash:20051103114701-6e07b-cb87eca037066a21f59da7f14e65986873607e29.gz
---
 _test/cases/lib/exe/css_css_compress.test.php | 8 ++++++++
 _test/lib/testmanager.php                     | 4 ++--
 lib/exe/css.php                               | 4 ++--
 lib/tpl/default/design.css                    | 5 +++++
 4 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/_test/cases/lib/exe/css_css_compress.test.php b/_test/cases/lib/exe/css_css_compress.test.php
index 138635999..df5d4cba0 100644
--- a/_test/cases/lib/exe/css_css_compress.test.php
+++ b/_test/cases/lib/exe/css_css_compress.test.php
@@ -21,6 +21,14 @@ class css_css_compress_test extends UnitTestCase {
         $this->assertEqual(css_compress($text), '#comment/* */{color:lime;}');
     }
 
+    function test_hack(){
+        $text = '/* Mac IE will not see this and continue with inline-block */
+                 /* \\*/
+                 display: inline; 
+                 /* */';
+        $this->assertEqual(css_compress($text), '/* \\*/display:inline;/* */');
+    }
+
     function test_nl1(){
         $text = "a{left:20px;\ntop:20px}";
         $this->assertEqual(css_compress($text), 'a{left:20px;top:20px}');
diff --git a/_test/lib/testmanager.php b/_test/lib/testmanager.php
index 70a2cd979..c23d18441 100644
--- a/_test/lib/testmanager.php
+++ b/_test/lib/testmanager.php
@@ -9,9 +9,9 @@ define('TEST_CASES',realpath(dirname(__FILE__).'/../cases'));
 // try to load runkit extension
 if (!extension_loaded('runkit')) {
    if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
-       dl('php_runkit.dll');
+       @dl('php_runkit.dll');
    } else {
-       dl('runkit.so');
+       @dl('runkit.so');
    }
 }
 
diff --git a/lib/exe/css.php b/lib/exe/css.php
index a5b3eec66..2fb30999a 100644
--- a/lib/exe/css.php
+++ b/lib/exe/css.php
@@ -206,11 +206,11 @@ function css_pluginstyles($mode='screen'){
 function css_compress($css){
     // strip whitespaces
     $css = preg_replace('![\r\n\t ]+!',' ',$css);
-    $css = preg_replace('/ ?([:;,{}]) ?/','\\1',$css);
+    $css = preg_replace('/ ?([:;,{}\/]) ?/','\\1',$css);
 
     // strip comments (ungreedy)
     // We keep very small comments to maintain typical browser hacks
-    $css = preg_replace('!(/\*)(.{4,})(\*/)!U','',$css);
+    $css = preg_replace('#(/\*)((?!\*/).){4,}(\*/)#Us','',$css);
 
     // shorten colors
     $css = preg_replace("/#([0-9a-fA-F]{1})\\1([0-9a-fA-F]{1})\\2([0-9a-fA-F]{1})\\3/", "#\\1\\2\\3",$css);
diff --git a/lib/tpl/default/design.css b/lib/tpl/default/design.css
index 9d5f5d001..a64ec83f9 100644
--- a/lib/tpl/default/design.css
+++ b/lib/tpl/default/design.css
@@ -129,7 +129,12 @@ input.button, button.button{
   max-height: 22px !important;
   min-height: 22px !important;
   margin: 1px;
+  display: inline-block;
+
+  /* Mac IE will not see this and continue with inline-block */
+  /* \*/
   display: inline;
+  /* */  
 }
 
 div.secedit input.button {
-- 
GitLab