From c89319344ae221cf67d74973de8b9c2e3883c190 Mon Sep 17 00:00:00 2001 From: "Emanuel F. Oliveira" Date: Mon, 14 Nov 2016 23:53:36 -0200 Subject: [PATCH] LT-330 Study list context menu style issues --- .../components/bootstrap/dropdown/dropdown.styl | 3 +++ .../client/components/bootstrap/dropdown/form.js | 13 +++++++++++-- Packages/ohif-core/package.js | 3 ++- 3 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 Packages/ohif-core/client/components/bootstrap/dropdown/dropdown.styl diff --git a/Packages/ohif-core/client/components/bootstrap/dropdown/dropdown.styl b/Packages/ohif-core/client/components/bootstrap/dropdown/dropdown.styl new file mode 100644 index 000000000..d1f9ab14f --- /dev/null +++ b/Packages/ohif-core/client/components/bootstrap/dropdown/dropdown.styl @@ -0,0 +1,3 @@ +.dropdown + ul.dropdown-menu li + cursor: pointer diff --git a/Packages/ohif-core/client/components/bootstrap/dropdown/form.js b/Packages/ohif-core/client/components/bootstrap/dropdown/form.js index 18b708f2c..407c081a3 100644 --- a/Packages/ohif-core/client/components/bootstrap/dropdown/form.js +++ b/Packages/ohif-core/client/components/bootstrap/dropdown/form.js @@ -1,12 +1,15 @@ import { Template } from 'meteor/templating'; import { Blaze } from 'meteor/blaze'; +import { $ } from 'meteor/jquery'; import { _ } from 'meteor/underscore'; Template.dropdownForm.onRendered(() => { const instance = Template.instance(); + const dropdown = instance.$('.dropdown'); // Show the dropdown - instance.$('.dropdown').addClass('open'); + dropdown.addClass('open'); + dropdown.find('ul.dropdown-menu li a').addClass('noselect'); // Destroy the Blaze created view (either created with template calls or with renderWithData) instance.destroyView = () => { @@ -20,6 +23,12 @@ Template.dropdownForm.onRendered(() => { Template.dropdownForm.events({ 'click .dropdown'(event, instance) { - instance.destroyView(); + let target = $(event.target); + if (target.hasClass('disabled')) { + event.preventDefault(); + event.stopPropagation(); + } else { + instance.destroyView(); + } } }); diff --git a/Packages/ohif-core/package.js b/Packages/ohif-core/package.js index cb7385098..474af7cd7 100644 --- a/Packages/ohif-core/package.js +++ b/Packages/ohif-core/package.js @@ -24,7 +24,8 @@ Package.onUse(function(api) { // UI Styles api.addFiles([ - 'client/ui/resizable/resizable.styl' + 'client/ui/resizable/resizable.styl', + 'client/components/bootstrap/dropdown/dropdown.styl' ], 'client'); api.mainModule('main.js', ['client', 'server']);