Changes for page Menu Macro
Last modified by Leon Poon on 2024/03/23 04:30
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -3,9 +3,11 @@ 3 3 = Horizontal Menu = 4 4 5 5 {{velocity}} 6 +#set ($menuTemplateDoc = $xwiki.getDocument('MenuTemplate')) 6 6 {{code language="none"}} 7 7 {{menu type="horizontal fixedWidth"}} 8 -$xwiki.getDocument('MenuTemplate').content 9 +## No way to escape content in the code macro, so just remove {, see https://jira.xwiki.org/browse/XRENDERING-13. 10 +$menuTemplateDoc.content.replace('{', '') 9 9 {{/menu}} 10 10 {{/code}} 11 11 {{/velocity}}
- XWiki.StyleSheetExtension[1]
-
- Code
-
... ... @@ -126,7 +126,6 @@ 126 126 font-size: @font-size-base; 127 127 text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) 128 128 background-color: @dropdown-bg; 129 - border: 1px solid @dropdown-fallback-border; // IE8 fallback 130 130 border: 1px solid @dropdown-border; 131 131 border-radius: @border-radius-base; 132 132 .box-shadow(0 6px 12px rgba(0,0,0,.175)); ... ... @@ -307,6 +307,33 @@ 307 307 padding-left: 15px; 308 308 & .icon-bar { 309 309 background-color: @navbar-default-link-color; 309 + transition: .3s ease all; 310 + &:nth-of-type(2) { 311 + opacity: 0; 312 + } 313 + &:nth-of-type(3) { 314 + transform: rotate(45deg); 315 + } 316 + &:nth-of-type(4) { 317 + transform: rotate(-45deg); 318 + margin-top: -2px; 319 + margin-bottom: 6px; 320 + } 310 310 } 322 + &.collapsed { 323 + .icon-bar { 324 + &:nth-of-type(2) { 325 + opacity: 1; 326 + } 327 + &:nth-of-type(3) { 328 + transform: rotate(0); 329 + } 330 + &:nth-of-type(4) { 331 + transform: rotate(0); 332 + margin-top: 4px; 333 + margin-bottom: 0; 334 + } 335 + } 336 + } 311 311 } 312 312 }
- XWiki.WikiMacroClass[0]
-
- Cached
-
... ... @@ -1,0 +1,1 @@ 1 +No - Asynchronous rendering
-
... ... @@ -1,0 +1,1 @@ 1 +No - Macro code
-
... ... @@ -9,10 +9,14 @@ 9 9 #set ($discard = $xwiki.ssx.use("$xcontext.macro.doc.prefixedFullName", {'colorTheme': $colorTheme})) 10 10 #set ($discard = $xwiki.jsx.use("$xcontext.macro.doc.prefixedFullName")) 11 11 #if($type.contains('horizontal')) 12 + ## Make sure the id is non-empty for horizontal menus as otherwise the toggle doesn't work. 13 + #if ($stringtool.isBlank("$!id")) 14 + #set ($id = $wikimacro.context.getXDOM().getIdGenerator().generateUniqueId("M", "GeneratedMenuId")) 15 + #end 12 12 (% role="navigation" class="menu-horizontal-toggle" %)((( 13 13 (% class="navbar-header" %)((( 14 14 {{html}} 15 - <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#$!{id}" aria-expanded="false"> 19 + <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#$!{escapetool.xml($id)}" aria-expanded="false"> 16 16 <span class="sr-only"></span> 17 17 <span class="icon-bar"></span> 18 18 <span class="icon-bar"></span> ... ... @@ -20,13 +20,13 @@ 20 20 </button> 21 21 {{/html}} 22 22 ))) 23 - (% id="${id}" class="menu menu-$!type collapse navbar-collapse" %)((( 24 - $xcontext.macro.content27 + (% id="$!{services.rendering.escape($id, 'xwiki/2.1')}" class="menu menu-${services.rendering.escape($!type, 'xwiki/2.1')} collapse navbar-collapse" %)((( 28 + {{wikimacrocontent/}} 25 25 ))) 26 26 ))) 27 27 #else 28 - (% #if ("$!id" != '') id="$id"#end class="menu menu-$!type" %)((( 29 - $xcontext.macro.content32 + (% #if ("$!id" != '') id="${services.rendering.escape($id, 'xwiki/2.1')}"#end class="menu menu-${services.rendering.escape($!type, 'xwiki/2.1')}" %)((( 33 + {{wikimacrocontent/}} 30 30 ))) 31 31 #end 32 32 {{/velocity}} - Macro content type
-
... ... @@ -1,0 +1,1 @@ 1 +Wiki - Default categories
-
... ... @@ -1,0 +1,1 @@ 1 +Navigation - Default category
-
... ... @@ -1,1 +1,0 @@ 1 -Navigation