Skip to content

Commit 980f7dc

Browse files
committed
Show search trigger button already on medium screen sizes as the search is already hidden on medium as well
1 parent 132bcdf commit 980f7dc

4 files changed

Lines changed: 18 additions & 8 deletions

File tree

.changeset/dull-bars-love.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@openproject/primer-view-components': patch
3+
---
4+
5+
Show collapsed search icon button on medium screen sizes in Primer::OpenProject::SubHeader

app/components/primer/open_project/sub_header.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ class SubHeader < Primer::Component
101101
system_arguments[:data][:action] += " input:sub-header#toggleFilterInputClearButton focus:sub-header#toggleFilterInputClearButton"
102102
end
103103

104-
trigger_display = @collapsed_search ? :inline_flex : [:inline_flex, :none]
104+
trigger_display = @collapsed_search ? :inline_flex : [:inline_flex, :inline_flex, :none]
105105

106106
@collapsed_filter_trigger = Primer::Beta::IconButton.new(icon: system_arguments[:leading_visual][:icon],
107107
display: trigger_display,
@@ -177,6 +177,10 @@ class SubHeader < Primer::Component
177177
deny_tag_argument(**kwargs)
178178
kwargs[:tag] = :div
179179
kwargs[:mr] ||= 2
180+
kwargs[:classes] = class_names(
181+
"SubHeader-hiddenOnExpand",
182+
kwargs[:classes]
183+
)
180184

181185
QuickFilter.new(**kwargs)
182186
}

app/components/primer/open_project/sub_header_element.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,10 @@ class SubHeaderElement extends HTMLElement {
2929

3030
expandFilterInput() {
3131
for (const item of this.shownItemsOnExpandedFilter) {
32-
item.classList.remove('d-none')
32+
item.classList.remove('d-none', 'd-sm-none')
3333
}
3434
for (const item of this.filterExpandButton) {
35+
item.classList.remove('d-inline-flex', 'd-sm-inline-flex')
3536
item.classList.add('d-none')
3637
}
3738
this.classList.add('SubHeader--expandedSearch')
@@ -43,7 +44,7 @@ class SubHeaderElement extends HTMLElement {
4344
item.classList.remove('d-none')
4445
}
4546
for (const item of this.shownItemsOnExpandedFilter) {
46-
item.classList.add('d-none')
47+
item.classList.add('d-none', 'd-sm-none')
4748
}
4849
this.classList.remove('SubHeader--expandedSearch')
4950
}

test/components/primer/open_project/sub_header_test.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,18 +247,18 @@ def test_collapsed_search_trigger_visible_on_all_screen_sizes
247247
component.with_filter_input(name: "filter", label: "Filter")
248248
end
249249

250-
# Without collapsed_search, the trigger has d-sm-none (hidden on desktop).
251-
# With collapsed_search, it must not have d-sm-none.
252-
assert_no_selector("[data-action='click:sub-header#expandFilterInput'].d-sm-none")
250+
# Without collapsed_search, the trigger has d-md-none (hidden on desktop).
251+
# With collapsed_search, it must not have d-md-none.
252+
assert_no_selector("[data-action='click:sub-header#expandFilterInput'].d-md-none")
253253
end
254254

255255
def test_default_search_trigger_hidden_on_desktop
256256
render_inline(Primer::OpenProject::SubHeader.new) do |component|
257257
component.with_filter_input(name: "filter", label: "Filter")
258258
end
259259

260-
# Without collapsed_search the trigger is mobile-only (d-sm-none)
261-
assert_selector("[data-action='click:sub-header#expandFilterInput'].d-sm-none")
260+
# Without collapsed_search the trigger is mobile-only (d-md-none)
261+
assert_selector("[data-action='click:sub-header#expandFilterInput'].d-md-none")
262262
end
263263

264264
def test_renders_quick_filters

0 commit comments

Comments
 (0)