From 31f948bb0bd30f620c727140fc192fb2d7a58f92 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Tue, 28 Jan 2020 10:49:16 -0400 Subject: [PATCH 1/4] feat(b-nav-item-dropdown): add boundary prop (used when not in b-navbar) --- src/mixins/dropdown.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mixins/dropdown.js b/src/mixins/dropdown.js index 54bc83fe774..80a8b5bf605 100644 --- a/src/mixins/dropdown.js +++ b/src/mixins/dropdown.js @@ -108,6 +108,12 @@ export default { popperOpts: { // type: Object, default: () => {} + }, + boundary: { + // String: `scrollParent`, `window` or `viewport` + // HTMLElement: HTML Element reference + type: [String, HTMLElement], + default: 'scrollParent' } }, data() { From 4692457a5514e4bca272ebdd2271ad6721ff97cd Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Tue, 28 Jan 2020 10:53:10 -0400 Subject: [PATCH 2/4] Update dropdown.js --- src/mixins/dropdown.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mixins/dropdown.js b/src/mixins/dropdown.js index 80a8b5bf605..77ef05f2bf4 100644 --- a/src/mixins/dropdown.js +++ b/src/mixins/dropdown.js @@ -4,6 +4,7 @@ import { BvEvent } from '../utils/bv-event.class' import { closest, contains, isVisible, requestAF, selectAll } from '../utils/dom' import { hasTouchSupport } from '../utils/env' import { isNull } from '../utils/inspect' +import { HTMLElement } from '../utils/safe-types' import { warn } from '../utils/warn' import clickOutMixin from './click-out' import focusInMixin from './focus-in' From bda7d4d75d2978b8992fc4d3076be9db7a91d786 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Tue, 28 Jan 2020 10:54:35 -0400 Subject: [PATCH 3/4] Update dropdown.js --- src/components/dropdown/dropdown.js | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/components/dropdown/dropdown.js b/src/components/dropdown/dropdown.js index 1c119d5c1dc..35046a2039b 100644 --- a/src/components/dropdown/dropdown.js +++ b/src/components/dropdown/dropdown.js @@ -2,7 +2,6 @@ import Vue from '../../utils/vue' import { arrayIncludes } from '../../utils/array' import { stripTags } from '../../utils/html' import { getComponentConfig } from '../../utils/config' -import { HTMLElement } from '../../utils/safe-types' import idMixin from '../../mixins/id' import dropdownMixin from '../../mixins/dropdown' import normalizeSlotMixin from '../../mixins/normalize-slot' @@ -72,12 +71,6 @@ export const props = { role: { type: String, default: 'menu' - }, - boundary: { - // String: `scrollParent`, `window` or `viewport` - // HTMLElement: HTML Element reference - type: [String, HTMLElement], - default: 'scrollParent' } } From 7c192e221be6c13c1520f4272ba11d2cd0a63541 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Tue, 28 Jan 2020 10:56:25 -0400 Subject: [PATCH 4/4] Update package.json --- src/components/nav/package.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/components/nav/package.json b/src/components/nav/package.json index 23b5c2a39c8..192dcfbed5c 100644 --- a/src/components/nav/package.json +++ b/src/components/nav/package.json @@ -143,6 +143,11 @@ { "prop": "noCaret", "description": "Hide the caret indicator on the toggle button" + }, + { + "prop": "boundary", + "version": "2.4.0", + "description": "The boundary constraint of the menu: 'scrollParent', 'window', 'viewport', or a reference to an HTMLElement. Has no effect when dropdown is inside a b-navbar" } ], "slots": [