mirror of
https://github.com/nasa/openmct.git
synced 2025-06-23 17:53:28 +00:00
Refactored changes to ContextMenuGesture.js
This commit is contained in:
@ -39,6 +39,7 @@
|
||||
class="mobile-hide"
|
||||
key="'label'"
|
||||
mct-object="domainObject"
|
||||
parameters="{suppressMenuOnEdit: true}"
|
||||
ng-click="treeNode.select()"
|
||||
>
|
||||
</mct-representation>
|
||||
|
@ -27,7 +27,8 @@
|
||||
{
|
||||
"key": "menu",
|
||||
"implementation": "gestures/ContextMenuGesture.js",
|
||||
"depends": ["$timeout", "agentService"]
|
||||
"depends": ["$timeout", "$parse", "agentService",
|
||||
"navigationService"]
|
||||
}
|
||||
],
|
||||
"components": [
|
||||
|
@ -82,11 +82,7 @@ define(
|
||||
initiatingEvent = this.agentService.isMobile() ?
|
||||
'touchstart' : 'mousedown',
|
||||
menu,
|
||||
popup;
|
||||
|
||||
if (this.navigationService.getNavigation() && this.navigationService.getNavigation().hasCapability('editor')){
|
||||
return;
|
||||
}
|
||||
popup
|
||||
|
||||
// Remove the context menu
|
||||
function dismiss() {
|
||||
|
@ -41,16 +41,33 @@ define(
|
||||
* in the context menu will be performed
|
||||
* @implements {Gesture}
|
||||
*/
|
||||
function ContextMenuGesture($timeout, agentService, element, domainObject) {
|
||||
function ContextMenuGesture($timeout, $parse, agentService, navigationService, element, domainObject) {
|
||||
var isPressing,
|
||||
longTouchTime = 500;
|
||||
longTouchTime = 500,
|
||||
parameters = element && element.attr('parameters') && $parse(element.attr('parameters'))()
|
||||
|
||||
function suppressMenu(){
|
||||
return parameters
|
||||
&& parameters.suppressMenuOnEdit
|
||||
&& navigationService.getNavigation()
|
||||
&& navigationService.getNavigation().hasCapability('editor');
|
||||
}
|
||||
|
||||
function showMenu(event) {
|
||||
domainObject.getCapability('action').perform({
|
||||
key: 'menu',
|
||||
domainObject: domainObject,
|
||||
event: event
|
||||
});
|
||||
/**
|
||||
* Some menu items should have the context menu action
|
||||
* suppressed (eg. the navigation menu on the left)
|
||||
*/
|
||||
if (suppressMenu()){
|
||||
return;
|
||||
} else {
|
||||
domainObject.getCapability('action').perform({
|
||||
key: 'menu',
|
||||
domainObject: domainObject,
|
||||
event: event,
|
||||
element: element
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// When context menu event occurs, show object actions instead
|
||||
|
Reference in New Issue
Block a user