Bulk edit scroll fix

This commit is contained in:
Bryce Johnson 2017-06-21 07:33:39 +00:00 committed by Phil Hughes
parent b2e1d32e7a
commit fbab37f15a
4 changed files with 29 additions and 5 deletions

View file

@ -22,6 +22,7 @@ export default class IssuableBulkUpdateSidebar {
initDomElements() { initDomElements() {
this.$page = $('.page-with-sidebar'); this.$page = $('.page-with-sidebar');
this.$sidebar = $('.right-sidebar'); this.$sidebar = $('.right-sidebar');
this.$sidebarInnerContainer = this.$sidebar.find('.issuable-sidebar');
this.$bulkEditCancelBtn = $('.js-bulk-update-menu-hide'); this.$bulkEditCancelBtn = $('.js-bulk-update-menu-hide');
this.$bulkEditSubmitBtn = $('.update-selected-issues'); this.$bulkEditSubmitBtn = $('.update-selected-issues');
this.$bulkUpdateEnableBtn = $('.js-bulk-update-toggle'); this.$bulkUpdateEnableBtn = $('.js-bulk-update-toggle');
@ -113,6 +114,7 @@ export default class IssuableBulkUpdateSidebar {
toggleSidebarDisplay(show) { toggleSidebarDisplay(show) {
this.$page.toggleClass(SIDEBAR_EXPANDED_CLASS, show); this.$page.toggleClass(SIDEBAR_EXPANDED_CLASS, show);
this.$page.toggleClass(SIDEBAR_COLLAPSED_CLASS, !show); this.$page.toggleClass(SIDEBAR_COLLAPSED_CLASS, !show);
this.$sidebarInnerContainer.toggleClass(HIDDEN_CLASS, !show);
this.$sidebar.toggleClass(SIDEBAR_EXPANDED_CLASS, show); this.$sidebar.toggleClass(SIDEBAR_EXPANDED_CLASS, show);
this.$sidebar.toggleClass(SIDEBAR_COLLAPSED_CLASS, !show); this.$sidebar.toggleClass(SIDEBAR_COLLAPSED_CLASS, !show);
} }

View file

@ -97,17 +97,19 @@
.issues-bulk-update.right-sidebar { .issues-bulk-update.right-sidebar {
@include maintain-sidebar-dimensions; @include maintain-sidebar-dimensions;
transition: right $sidebar-transition-duration; width: 0;
right: -$gutter-width; padding: 0;
transition: width $sidebar-transition-duration;
&.right-sidebar-expanded { &.right-sidebar-expanded {
@include maintain-sidebar-dimensions; @include maintain-sidebar-dimensions;
right: 0; width: $gutter-width;
} }
&.right-sidebar-collapsed { &.right-sidebar-collapsed {
@include maintain-sidebar-dimensions; @include maintain-sidebar-dimensions;
right: -$gutter-width; width: 0;
padding: 0;
.block { .block {
padding: 16px 0; padding: 16px 0;
@ -118,5 +120,6 @@
.issuable-sidebar { .issuable-sidebar {
padding: 0 3px; padding: 0 3px;
width: calc(100% + 35px);
} }
} }

View file

@ -1,7 +1,7 @@
- type = local_assigns.fetch(:type) - type = local_assigns.fetch(:type)
%aside.issues-bulk-update.js-right-sidebar.right-sidebar.affix-top{ data: { "offset-top" => "50", "spy" => "affix" }, "aria-live" => "polite" } %aside.issues-bulk-update.js-right-sidebar.right-sidebar.affix-top{ data: { "offset-top" => "50", "spy" => "affix" }, "aria-live" => "polite" }
.issuable-sidebar .issuable-sidebar.hidden
= form_tag [:bulk_update, @project.namespace.becomes(Namespace), @project, type], method: :post, class: "bulk-update" do = form_tag [:bulk_update, @project.namespace.becomes(Namespace), @project, type], method: :post, class: "bulk-update" do
.block .block
.filter-item.inline.update-issues-btn.pull-left .filter-item.inline.update-issues-btn.pull-left

View file

@ -16,6 +16,21 @@ feature 'Issues > Labels bulk assignment', feature: true do
gitlab_sign_in user gitlab_sign_in user
end end
context 'sidebar' do
before do
enable_bulk_update
end
it 'is present when bulk edit is enabled' do
expect(page).to have_css('.issuable-sidebar')
end
it 'is not present when bulk edit is disabled' do
disable_bulk_update
expect(page).not_to have_css('.issuable-sidebar')
end
end
context 'can bulk assign' do context 'can bulk assign' do
before do before do
enable_bulk_update enable_bulk_update
@ -398,4 +413,8 @@ feature 'Issues > Labels bulk assignment', feature: true do
visit namespace_project_issues_path(project.namespace, project) visit namespace_project_issues_path(project.namespace, project)
click_button 'Edit Issues' click_button 'Edit Issues'
end end
def disable_bulk_update
click_button 'Cancel'
end
end end