From 12818fbc46f38d86e3d61087994fd4cc107e4aa1 Mon Sep 17 00:00:00 2001 From: Nikhil Mandlik Date: Fri, 6 Aug 2021 15:53:46 -0700 Subject: [PATCH] [Notebook] Create Snapshot directly from any frame in a layout #3300 --- src/api/overlays/components/OverlayComponent.vue | 2 +- .../notebook/components/NotebookMenuSwitcher.vue | 11 ++++++----- src/ui/components/ObjectFrame.vue | 14 +++++++++++--- src/ui/layout/Layout.vue | 2 +- src/ui/preview/Preview.vue | 2 +- 5 files changed, 20 insertions(+), 11 deletions(-) diff --git a/src/api/overlays/components/OverlayComponent.vue b/src/api/overlays/components/OverlayComponent.vue index f06e1afcfdd..f8a66f75978 100644 --- a/src/api/overlays/components/OverlayComponent.vue +++ b/src/api/overlays/components/OverlayComponent.vue @@ -12,7 +12,7 @@ >
{ - return this.snapshot(NOTEBOOK_DEFAULT); + return this.snapshot(NOTEBOOK_DEFAULT, event.target); } }); } @@ -90,16 +90,17 @@ export default { cssClass: 'icon-camera', name: 'Save to Notebook Snapshots', onItemClicked: () => { - return this.snapshot(NOTEBOOK_SNAPSHOT); + return this.snapshot(NOTEBOOK_SNAPSHOT, event.target); } }); this.openmct.menus.showMenu(x, y, notebookTypes); }, - snapshot(notebookType) { + snapshot(notebookType, target) { this.$nextTick(() => { - const element = document.querySelector('.c-overlay__contents') - || document.getElementsByClassName('l-shell__main-container')[0]; + const wrapper = target && target.closest('.js-notebook-snapshot-item-wrapper') + || document; + const element = wrapper.querySelector('.js-notebook-snapshot-item'); const bounds = this.openmct.time.bounds(); const link = !this.ignoreLink diff --git a/src/ui/components/ObjectFrame.vue b/src/ui/components/ObjectFrame.vue index c7fda1633a2..fc4678d7138 100644 --- a/src/ui/components/ObjectFrame.vue +++ b/src/ui/components/ObjectFrame.vue @@ -21,7 +21,7 @@ *****************************************************************************/