Commit f656ebb0 authored by Alfredo Sumaran's avatar Alfredo Sumaran Committed by Ruben Davila

Merge branch 'add-issues-tooltip' into 'master'

Added tooltip to add issues button on issue boards

Closes #27985

See merge request !9142
Conflicts:
	app/assets/javascripts/boards/boards_bundle.js.es6
parent 7efd5f8b
...@@ -101,17 +101,53 @@ $(() => { ...@@ -101,17 +101,53 @@ $(() => {
modal: ModalStore.store, modal: ModalStore.store,
store: Store.state, store: Store.state,
}, },
watch: {
disabled() {
this.updateTooltip();
},
},
computed: { computed: {
disabled() { disabled() {
return !this.store.lists.filter(list => list.type !== 'blank' && list.type !== 'done').length; return !this.store.lists.filter(list => list.type !== 'blank' && list.type !== 'done').length;
}, },
tooltipTitle() {
if (this.disabled) {
return 'Please add a list to your board first';
}
return '';
},
},
methods: {
updateTooltip() {
const $tooltip = $(this.$el);
this.$nextTick(() => {
if (this.disabled) {
$tooltip.tooltip();
} else {
$tooltip.tooltip('destroy');
}
});
},
openModal() {
if (!this.disabled) {
this.toggleModal(true);
}
},
},
mounted() {
this.updateTooltip();
}, },
template: ` template: `
<button <button
class="btn btn-create pull-right prepend-left-10 has-tooltip" class="btn btn-create pull-right prepend-left-10"
type="button" type="button"
:disabled="disabled" data-placement="bottom"
@click="toggleModal(true, false)"> :class="{ 'disabled': disabled }"
:title="tooltipTitle"
:aria-disabled="disabled"
@click="openModal">
Add issues Add issues
</button> </button>
`, `,
......
---
title: Disabled tooltip on add issues button in usse boards
merge_request:
author:
...@@ -49,6 +49,12 @@ describe 'Issue Boards add issue modal', :feature, :js do ...@@ -49,6 +49,12 @@ describe 'Issue Boards add issue modal', :feature, :js do
expect(page).not_to have_selector('.add-issues-modal') expect(page).not_to have_selector('.add-issues-modal')
end end
it 'does not show tooltip on add issues button' do
button = page.find('.issue-boards-search button', text: 'Add issues')
expect(button[:title]).not_to eq("Please add a list to your board first")
end
end end
context 'issues list' do context 'issues list' do
......
...@@ -27,10 +27,10 @@ describe 'Issue Boards', feature: true, js: true do ...@@ -27,10 +27,10 @@ describe 'Issue Boards', feature: true, js: true do
expect(page).to have_content('Welcome to your Issue Board!') expect(page).to have_content('Welcome to your Issue Board!')
end end
it 'disables add issues button by default' do it 'shows tooltip on add issues button' do
button = page.find('.issue-boards-search button', text: 'Add issues') button = page.find('.issue-boards-search button', text: 'Add issues')
expect(button[:disabled]).to eq true expect(button[:"data-original-title"]).to eq("Please add a list to your board first")
end end
it 'hides the blank state when clicking nevermind button' do it 'hides the blank state when clicking nevermind button' do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment