]> git.decadent.org.uk Git - videolink.git/blobdiff - style_sheets.cpp
Updated documentation.
[videolink.git] / style_sheets.cpp
index 576780055d514d5b2575c607329107628fa50c93..9c599826e921abace5045c2d8cbe0659b1bbfd88 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright 2005 Ben Hutchings <ben@decadentplace.org.uk>.
+// Copyright 2005 Ben Hutchings <ben@decadent.org.uk>.
 // See the file "COPYING" for licence details.
 
 #include "style_sheets.hpp"
@@ -7,7 +7,11 @@
 #include <nsICSSLoader.h>
 #include <nsICSSStyleSheet.h>
 #include <nsIPresShell.h>
-#include <nsIServiceManagerUtils.h>
+#if MOZ_VERSION_MAJOR > 1 || (MOZ_VERSION_MAJOR == 1 && MOZ_VERSION_MINOR >= 8)
+#   include <nsServiceManagerUtils.h>
+#else
+#   include <nsIServiceManagerUtils.h>
+#endif
 #include <nsIURI.h>
 #include <nsNetUtil.h>
 
@@ -38,13 +42,21 @@ void apply_style_sheet(nsIStyleSheet * style_sheet, nsIPresShell * pres_shell)
 {
     nsCOMArray<nsIStyleSheet> style_sheets;
     check(pres_shell->GetAgentStyleSheets(style_sheets));
-    check(style_sheets.InsertObjectAt(style_sheet, 0));
+    check(style_sheets.AppendObject(style_sheet));
     check(pres_shell->SetAgentStyleSheets(style_sheets));
 
-    check(pres_shell->EnablePrefStyleRules(false));
+    // FIXME: We need to find an alternative that works in Mozilla 1.8.
+#   if MOZ_VERSION_MAJOR == 1 && MOZ_VERSION_MINOR < 8
+       check(pres_shell->EnablePrefStyleRules(false));
+#   endif
 
     // Update the display
-    check(pres_shell->ReconstructStyleData());
-    check(pres_shell->FlushPendingNotifications(true));
+#   if MOZ_VERSION_MAJOR > 1                              \
+    || (MOZ_VERSION_MAJOR == 1 && MOZ_VERSION_MINOR >= 8)
+       pres_shell->ReconstructStyleData();
+       check(pres_shell->FlushPendingNotifications(Flush_Display));
+#   else
+       check(pres_shell->ReconstructStyleData());
+       check(pres_shell->FlushPendingNotifications(true));
+#   endif
 }
-