toggle: Add javascript to top of page, not to end. This avoids flicker since closed...
authorJoey Hess <joey@kodama.kitenet.net>
Wed, 2 Jul 2008 20:14:18 +0000 (16:14 -0400)
committerJoey Hess <joey@kodama.kitenet.net>
Wed, 2 Jul 2008 20:14:18 +0000 (16:14 -0400)
IkiWiki/Plugin/toggle.pm
debian/changelog
templates/editpage.tmpl

index f969d7686709da5a06410a260c09fbc598530f4b..284eb8249df031e77f2e1ff1796d19624bbae1cf 100644 (file)
@@ -108,9 +108,9 @@ sub format (@) { #{{{
 
        if ($params{content}=~s!(<div class="toggleable(?:-open)?" id="[^"]+">)</div>!$1!g) {
                $params{content}=~s/<div class="toggleableend">//g;
-               if (! ($params{content}=~s!^<\/body>!$javascript</body>!m)) {
+               if (! ($params{content}=~s!^<body>!<body>$javascript!m)) {
                        # no </body> tag, probably in preview mode
-                       $params{content}.=$javascript;
+                       $params{content}=$javascript.$params{content};
                }
        }
        return $params{content};
index 314415788417943b78f6ac63502b503f268a762c..e6ffa17de51322f7988f748d6c7e4cf4fd34007b 100644 (file)
@@ -6,6 +6,8 @@ ikiwiki (2.52) UNRELEASED; urgency=low
     uploads by default. (An anti-DOS measure.)
   * toggle: Add support for toggles that are open by default.
   * toggle: Fix to work in preview mode.
+  * toggle: Add javascript to top of page, not to end. This avoids flicker
+    since closed toggles will not be displayed as the page is loading.
 
  -- Joey Hess <joeyh@debian.org>  Mon, 30 Jun 2008 19:56:28 -0400
 
index 42d61c188efaa70f6caf9f79334f274220a81a25..f8eda1b47c9a0aadee0d505e0c915815cbf80401 100644 (file)
@@ -1,3 +1,4 @@
+<TMPL_VAR JAVASCRIPT>
 <TMPL_IF NAME="PAGE_CONFLICT">
 <p>
 <b>Your changes conflict with other changes made to the page.</b>
@@ -85,5 +86,3 @@ Optional comment about this change:<br />
 <TMPL_VAR PAGE_PREVIEW>
 </div>
 </TMPL_IF>
-
-<TMPL_VAR JAVASCRIPT>