Skip to content

Commit 760aba9

Browse files
committed
Update: Improve TouchScreen Support
1 parent cb30257 commit 760aba9

19 files changed

Lines changed: 167 additions & 127 deletions

File tree

Disco.BI/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2249")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2249")]

Disco.Client/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2102")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2102")]

Disco.ClientBootstrapper/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2102")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2102")]

Disco.Data/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2249")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2249")]

Disco.Models/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2249")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2249")]

Disco.Services/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2249")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2249")]

Disco.Web.Extensions/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@
3232
// You can specify all the values or you can default the Build and Revision Numbers
3333
// by using the '*' as shown below:
3434
// [assembly: AssemblyVersion("1.0.*")]
35-
[assembly: AssemblyVersion("1.2.0725.1725")]
36-
[assembly: AssemblyFileVersion("1.2.0725.1725")]
35+
[assembly: AssemblyVersion("1.2.0725.2249")]
36+
[assembly: AssemblyFileVersion("1.2.0725.2249")]

Disco.Web/ClientSource/Scripts/Core.js

Lines changed: 59 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -39599,54 +39599,70 @@ jQuery.fn.DataTable.defaults.aLengthMenu = [[10, 20, 50, -1], [10, 20, 50, "All"
3959939599

3960039600
// Menu Functionality
3960139601
var $menu = $('#menu');
39602-
var $menuSubVisible = [];
39603-
$menu.find('li').each(function () {
39604-
var $menuItem = $(this);
39605-
var $subMenu = $menuItem.children('ul').first();
39606-
if ($subMenu.length > 0) {
39607-
$menuItem.mouseover(function () {
39608-
menuShow($menuItem, $subMenu);
39609-
}).mouseout(function () {
39610-
menuHide($menuItem, $subMenu);
39611-
}).addClass('hasSubmenu');
39612-
39613-
// Touch-enabled browser
39614-
if (Modernizr.touch) {
39615-
$menuItem.on('touchstart', function (e) {
39616-
// Already Open - allow 'click'
39617-
for (var i = 0; i < $menuSubVisible.length; i++)
39618-
if ($menuSubVisible[0] === $subMenu)
39619-
return;
39620-
39621-
// Show
39622-
menuShow($menuItem, $subMenu);
39623-
$menuSubVisible.push($subMenu);
39624-
$(document).on('click', menuTouchHide)
39625-
e.preventDefault();
39626-
});
39627-
}
39628-
};
39629-
});
39630-
function menuTouchHide() {
39631-
while ($menuSubVisible.length > 0) {
39632-
var $subMenu = $menuSubVisible.pop();
39633-
$subMenu.hide();
39634-
}
39635-
}
39636-
function menuShow($menuItem, $subMenu) {
39637-
var timeoutToken = $menuItem.data('menuTimeoutToken');
39638-
if (timeoutToken)
39639-
window.clearTimeout(timeoutToken);
39640-
if (!$subMenu.is(':visible'))
39602+
var $menuItems = $menu.find('li');
39603+
var $menuItemParents = $menuItems.filter('.hasSubMenu');
39604+
var $menuSubMenus = $menuItems.filter('.subMenu');
39605+
var menuAllowTouchNavigation = null;
39606+
39607+
$menuItemParents.each(function () {
39608+
var $parent = $(this);
39609+
var $subMenu = $parent.children('ul.subMenu');
39610+
$parent.data('menuSubMenu', $subMenu);
39611+
}).mouseover(function () {
39612+
var $parent = $(this);
39613+
var $subMenu = $parent.data('menuSubMenu');
39614+
var hideToken = $parent.data('menuHideToken');
39615+
if (hideToken)
39616+
window.clearTimeout(hideToken);
39617+
if (!$subMenu.is(':visible')) {
3964139618
$subMenu.show();
39642-
}
39643-
function menuHide($menuItem, $subMenu) {
39644-
var timeoutToken = subMenuHideToken = window.setTimeout(function () {
39619+
if (menuAllowTouchNavigation !== null)
39620+
menuTouchPreventNavigation();
39621+
}
39622+
}).mouseout(function () {
39623+
var $parent = $(this);
39624+
var $subMenu = $parent.data('menuSubMenu');
39625+
var hideToken = window.setTimeout(function () {
3964539626
$subMenu.hide();
3964639627
}, 250);
39647-
$menuItem.data('menuTimeoutToken', timeoutToken);
39628+
$parent.data('menuHideToken', hideToken);
39629+
});
39630+
39631+
if (Modernizr.touch) {
39632+
menuAllowTouchNavigation = true;
39633+
$menuItemParents.children('a').on('touchstart', menuTouchStarted);
39634+
} else if (window.navigator.msPointerEnabled) {
39635+
menuAllowTouchNavigation = true;
39636+
$menuItemParents.children('a').on('MSPointerUp', menuTouchMSPointerUp);
39637+
}
39638+
function menuTouchPreventNavigation() {
39639+
// Block Touch Navigation for 350ms
39640+
allowTouchNavigation = false;
39641+
window.setTimeout(function () {
39642+
allowTouchNavigation = true;
39643+
}, 350);
3964839644
}
39645+
function menuTouchNavigationBlockClick(e) {
39646+
$(this).off('click', menuTouchNavigationBlockClick);
39647+
e.preventDefault();
39648+
}
39649+
//#region TouchEvents Implementation
39650+
function menuSubMenuVisible($element) {
39651+
return $element.closest('li').data('menuSubMenu').is(':visible');
39652+
}
39653+
function menuTouchStarted(e) {
39654+
var $this = $(this);
39655+
if (!menuSubMenuVisible($this))
39656+
$this.click(menuTouchNavigationBlockClick);
39657+
}
39658+
//#endregion
3964939659

39660+
//#region MS Pointer Implementation
39661+
function menuTouchMSPointerUp(e) {
39662+
if (!allowTouchNavigation && e.originalEvent.pointerType == e.originalEvent.MSPOINTER_TYPE_TOUCH)
39663+
$(this).click(menuTouchNavigationBlockClick);
39664+
}
39665+
//#endregion
3965039666

3965139667
});
3965239668
})(jQuery, window, document, Modernizr);

Disco.Web/ClientSource/Scripts/Core.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Disco.Web/ClientSource/Scripts/Core.min.js.map

Lines changed: 0 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)