fixes context menu issue: 27794

[TFS Changeset #70533]
This commit is contained in:
Shandem
2010-06-21 14:47:21 +00:00
parent 3f73dee7eb
commit 12d16696c8
5 changed files with 19 additions and 14 deletions

View File

@@ -10,7 +10,7 @@ NOTES:
* Compression/Combination/Minification is not enabled unless debug="false" is specified on the 'compiliation' element in the web.config
* A new version will invalidate both client and server cache and create new persisted files
-->
<clientDependency version="31">
<clientDependency version="32">
<fileRegistration defaultProvider="LoaderControlProvider" fileDependencyExtensions=".js,.css">
<providers>

View File

@@ -10,7 +10,7 @@ NOTES:
* Compression/Combination/Minification is not enabled unless debug="false" is specified on the 'compiliation' element in the web.config
* A new version will invalidate both client and server cache and create new persisted files
-->
<clientDependency version="31">
<clientDependency version="32">
<fileRegistration defaultProvider="LoaderControlProvider" fileDependencyExtensions=".js,.css">
<providers>

View File

@@ -1,4 +1,4 @@
(function($) {
(function ($) {
///<summary>Custom plugin to create the Umbraco context menu, this configures the context menu plugin before it's callbacks eecute</summary>
$.extend($.tree.plugins, {
@@ -9,8 +9,9 @@
onBeforeContext: false
},
_getContextMenu: function(strMenu) {
_getContextMenu: function (strMenu) {
/// <summary>Builds a new context menu object (array) based on the string representation passed in</summary>
var newMenu = new Array();
var separatorIndexes = new Array();
for (var i = 0; i < strMenu.length; i++) {
@@ -28,7 +29,8 @@
return newMenu;
},
_getMenuItemByLetter: function(letter) {
_getMenuItemByLetter: function (letter) {
/// <summary>Finds the menu item in our full menu by the letter and returns object</summary>
var fullMenu = $.tree.plugins.UmbracoContext.settings.fullMenu;
//insert selector if it's a comma
@@ -42,12 +44,12 @@
},
callbacks: {
oninit: function(t) {
oninit: function (t) {
$.tree.plugins.UmbracoContext.settings = t.settings.plugins.UmbracoContext;
//need to remove the defaults
$.tree.plugins.contextmenu.defaults.items = {};
},
onrgtclk: function(n, t, e) {
onrgtclk: function (n, t, e) {
///<summary>Need to set the context menu items for the context menu plugin for the current node</summary>
var _this = $.tree.plugins.UmbracoContext;
@@ -55,28 +57,31 @@
if (menu != "") {
t.settings.plugins.contextmenu.items = _this._getContextMenu(menu);
}
else {
t.settings.plugins.contextmenu.items = [];
}
}
}
}
});
$(function() {
$(function () {
//add events to auto hide the menu on a delay
var pause = true;
var timer = null;
$("#jstree-contextmenu").bind("mouseenter", function() {
$("#jstree-contextmenu").bind("mouseenter", function () {
pause = true;
clearTimeout(timer);
});
$("#jstree-contextmenu").bind("mouseleave", function() {
$("#jstree-contextmenu").bind("mouseleave", function () {
pause = false;
timer = setTimeout(function() {
timer = setTimeout(function () {
if (!pause) {
$.tree.plugins.contextmenu.hide();
}
}, 500);
});
//disable right clicking the context menu, this is for IE bug
$("#jstree-contextmenu").bind("contextmenu", function(e) {
$("#jstree-contextmenu").bind("contextmenu", function (e) {
e.preventDefault();
return false;
});

View File

@@ -67,7 +67,7 @@ Umbraco.Sys.registerNamespace("Umbraco.Controls");
_activeTreeType: "content", //tracks which is the active tree type, this is used in searching and syncing.
_tree: null, //reference to the jsTree object
_isEditMode: false, //not really used YET
_isDebug: true, //set to true to enable alert debugging
_isDebug: false, //set to true to enable alert debugging
_loadedApps: [], //stores the application names that have been loaded to track which JavaScript code has been inserted into the DOM
_treeClass: "umbTree", //used for other libraries to detect which elements are an umbraco tree
_currenAJAXRequest: false, //used to determine if there is currently an ajax request being executed.

View File

@@ -111,7 +111,7 @@
<add verb="GET,HEAD,POST" path="GoogleSpellChecker.ashx" type="umbraco.presentation.umbraco_client.tinymce3.plugins.spellchecker.GoogleSpellChecker,umbraco" />
</httpHandlers>
<compilation defaultLanguage="c#" debug="true" batch="false">
<compilation defaultLanguage="c#" debug="false" batch="false">
<assemblies>
<!-- ASPNETAJAX -->
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />