Skip to content

Commit 84f3b9c

Browse files
Fix disabled top level NavGroup (#4647)
1 parent f6db2b7 commit 84f3b9c

4 files changed

Lines changed: 30 additions & 25 deletions

File tree

examples/Demo/Shared/Pages/NavMenu/Examples/NavMenuCollapsible.razor

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@
2020
<FluentNavLink Icon="@(new Icons.Regular.Size24.LeafOne())" Tooltip="Item 5.1 tooltip">Item 5.1</FluentNavLink>
2121
</FluentNavGroup>
2222
<FluentNavLink Icon="@(new Icons.Regular.Size24.CalendarAgenda())" Disabled="true" Href="https://microsoft.com" Tooltip="Item 6 tooltip">Item 6</FluentNavLink>
23+
<FluentNavGroup Title="Item 7" Tooltip="Item 7 tooltip" Disabled="true">
24+
<FluentNavLink Icon="@(new Icons.Regular.Size24.LeafOne())" Tooltip="Item 7.1 tooltip">Item 7.1</FluentNavLink>
25+
</FluentNavGroup>
2326
</FluentNavMenu>
2427
</div>
2528
<div style="width: 100%;">

src/Core/Components/NavMenu/FluentNavGroup.razor.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,10 @@ public FluentNavGroup()
104104

105105
private async Task ToggleExpandedAsync()
106106
{
107+
if (Disabled)
108+
{
109+
return;
110+
}
107111

108112
if (!Owner.Expanded && Owner.CollapsedChildNavigation)
109113
{

src/Core/Components/NavMenu/FluentNavGroup.razor.css

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,6 @@
1414
min-width: 20px;
1515
}
1616

17-
::deep .fluent-nav-group.disabled {
18-
color: var(--neutral-fill-secondary-rest) !important;
19-
pointer-events: none;
20-
}
21-
22-
::deep .fluent-nav-group.disabled .fluent-nav-icon {
23-
fill: var(--neutral-stroke-rest) !important;
24-
}
25-
26-
2717
/* Group expand/collapse */
2818
::deep .expand-collapse-button {
2919
position: absolute;

src/Core/Components/NavMenu/FluentNavMenu.razor.css

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
/* NavMenu */
22
.fluent-nav-menu {
33
padding: 0 2px;
4-
54
}
65

76
::deep .fluent-nav-item.expander:focus-within {
@@ -15,24 +14,33 @@
1514
}
1615

1716
/* Hover and active highlighting */
18-
::deep .fluent-nav-item .positioning-region:hover:not(:has(.disabled)) {
17+
::deep .fluent-nav-item:not(.disabled) .positioning-region:hover:not(:has(.disabled)) {
1918
cursor: pointer;
2019
background: var(--neutral-fill-secondary-rest);
2120
}
2221

23-
/* Active item indicator */
24-
::deep .fluent-nav-item .active .positioning-region::before {
25-
content: "";
26-
display: block;
27-
position: absolute;
28-
right: unset;
29-
width: 3px;
30-
height: calc(((var(--base-height-multiplier) + var(--density)) * var(--design-unit) / 2) * 1px);
31-
background: var(--accent-fill-rest);
32-
border-radius: calc(var(--control-corner-radius) * 1px);
33-
margin: calc(var(--design-unit) * 2px) 2px;
34-
z-index: 5;
35-
}
22+
/* Active item indicator */
23+
::deep .fluent-nav-item .active .positioning-region::before {
24+
content: "";
25+
display: block;
26+
position: absolute;
27+
right: unset;
28+
width: 3px;
29+
height: calc(((var(--base-height-multiplier) + var(--density)) * var(--design-unit) / 2) * 1px);
30+
background: var(--accent-fill-rest);
31+
border-radius: calc(var(--control-corner-radius) * 1px);
32+
margin: calc(var(--design-unit) * 2px) 2px;
33+
z-index: 5;
34+
}
35+
36+
::deep .fluent-nav-group.disabled {
37+
color: var(--neutral-fill-secondary-rest) !important;
38+
pointer-events: none;
39+
}
40+
41+
::deep .fluent-nav-group.disabled .fluent-nav-icon {
42+
fill: var(--neutral-stroke-rest) !important;
43+
}
3644

3745
[dir='rtl'] * ::deep .fluent-nav-item a.active .positioning-region::before {
3846
left: unset;

0 commit comments

Comments
 (0)