mirror of https://github.com/wekan/wekan
Merge branch 'master' of https://github.com/tborychowski/wekan into tborychowski-master
commit
ccd0f89ae0
@ -1,16 +0,0 @@ |
||||
const { isTouchDevice } = Utils; |
||||
|
||||
Mixins.PerfectScrollbar = BlazeComponent.extendComponent({ |
||||
onRendered() { |
||||
if (!isTouchDevice()) { |
||||
const component = this.mixinParent(); |
||||
const domElement = component.find('.js-perfect-scrollbar'); |
||||
Ps.initialize(domElement); |
||||
|
||||
// XXX We should create an event map to be consistent with other components
|
||||
// but since BlazeComponent doesn't merge Mixins events transparently I
|
||||
// prefered to use a jQuery event (which is what an event map ends up doing)
|
||||
component.$(domElement).on('mouseenter', () => Ps.update(domElement)); |
||||
} |
||||
}, |
||||
}); |
@ -1,2 +0,0 @@ |
||||
.ps-container |
||||
position: relative |
@ -1,14 +0,0 @@ |
||||
.build* |
||||
|
||||
# Ignore OS generated files |
||||
.DS_Store |
||||
.DS_Store? |
||||
._* |
||||
.Trashes |
||||
Thumbs.db |
||||
ehthumbs.db |
||||
|
||||
#Ignore temp files |
||||
*~ |
||||
|
||||
.idea |
@ -1,21 +0,0 @@ |
||||
The MIT License (MIT) |
||||
|
||||
Copyright (c) 2014-2019 The Wekan Team |
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy |
||||
of this software and associated documentation files (the "Software"), to deal |
||||
in the Software without restriction, including without limitation the rights |
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
||||
copies of the Software, and to permit persons to whom the Software is |
||||
furnished to do so, subject to the following conditions: |
||||
|
||||
The above copyright notice and this permission notice shall be included in all |
||||
copies or substantial portions of the Software. |
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
||||
SOFTWARE. |
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,221 +0,0 @@ |
||||
/*! |
||||
* jQuery Mousewheel 3.1.13 |
||||
* |
||||
* Copyright jQuery Foundation and other contributors |
||||
* Released under the MIT license |
||||
* http://jquery.org/license
|
||||
*/ |
||||
|
||||
(function (factory) { |
||||
if ( typeof define === 'function' && define.amd ) { |
||||
// AMD. Register as an anonymous module.
|
||||
define(['jquery'], factory); |
||||
} else if (typeof exports === 'object') { |
||||
// Node/CommonJS style for Browserify
|
||||
module.exports = factory; |
||||
} else { |
||||
// Browser globals
|
||||
factory(jQuery); |
||||
} |
||||
}(function ($) { |
||||
|
||||
var toFix = ['wheel', 'mousewheel', 'DOMMouseScroll', 'MozMousePixelScroll'], |
||||
toBind = ( 'onwheel' in document || document.documentMode >= 9 ) ? |
||||
['wheel'] : ['mousewheel', 'DomMouseScroll', 'MozMousePixelScroll'], |
||||
slice = Array.prototype.slice, |
||||
nullLowestDeltaTimeout, lowestDelta; |
||||
|
||||
if ( $.event.fixHooks ) { |
||||
for ( var i = toFix.length; i; ) { |
||||
$.event.fixHooks[ toFix[--i] ] = $.event.mouseHooks; |
||||
} |
||||
} |
||||
|
||||
var special = $.event.special.mousewheel = { |
||||
version: '3.1.12', |
||||
|
||||
setup: function() { |
||||
if ( this.addEventListener ) { |
||||
for ( var i = toBind.length; i; ) { |
||||
this.addEventListener( toBind[--i], handler, false ); |
||||
} |
||||
} else { |
||||
this.onmousewheel = handler; |
||||
} |
||||
// Store the line height and page height for this particular element
|
||||
$.data(this, 'mousewheel-line-height', special.getLineHeight(this)); |
||||
$.data(this, 'mousewheel-page-height', special.getPageHeight(this)); |
||||
}, |
||||
|
||||
teardown: function() { |
||||
if ( this.removeEventListener ) { |
||||
for ( var i = toBind.length; i; ) { |
||||
this.removeEventListener( toBind[--i], handler, false ); |
||||
} |
||||
} else { |
||||
this.onmousewheel = null; |
||||
} |
||||
// Clean up the data we added to the element
|
||||
$.removeData(this, 'mousewheel-line-height'); |
||||
$.removeData(this, 'mousewheel-page-height'); |
||||
}, |
||||
|
||||
getLineHeight: function(elem) { |
||||
var $elem = $(elem), |
||||
$parent = $elem['offsetParent' in $.fn ? 'offsetParent' : 'parent'](); |
||||
if (!$parent.length) { |
||||
$parent = $('body'); |
||||
} |
||||
return parseInt($parent.css('fontSize'), 10) || parseInt($elem.css('fontSize'), 10) || 16; |
||||
}, |
||||
|
||||
getPageHeight: function(elem) { |
||||
return $(elem).height(); |
||||
}, |
||||
|
||||
settings: { |
||||
adjustOldDeltas: true, // see shouldAdjustOldDeltas() below
|
||||
normalizeOffset: true // calls getBoundingClientRect for each event
|
||||
} |
||||
}; |
||||
|
||||
$.fn.extend({ |
||||
mousewheel: function(fn) { |
||||
return fn ? this.bind('mousewheel', fn) : this.trigger('mousewheel'); |
||||
}, |
||||
|
||||
unmousewheel: function(fn) { |
||||
return this.unbind('mousewheel', fn); |
||||
} |
||||
}); |
||||
|
||||
|
||||
function handler(event) { |
||||
var orgEvent = event || window.event, |
||||
args = slice.call(arguments, 1), |
||||
delta = 0, |
||||
deltaX = 0, |
||||
deltaY = 0, |
||||
absDelta = 0, |
||||
offsetX = 0, |
||||
offsetY = 0; |
||||
event = $.event.fix(orgEvent); |
||||
event.type = 'mousewheel'; |
||||
|
||||
// Old school scrollwheel delta
|
||||
if ( 'detail' in orgEvent ) { deltaY = orgEvent.detail * -1; } |
||||
if ( 'wheelDelta' in orgEvent ) { deltaY = orgEvent.wheelDelta; } |
||||
if ( 'wheelDeltaY' in orgEvent ) { deltaY = orgEvent.wheelDeltaY; } |
||||
if ( 'wheelDeltaX' in orgEvent ) { deltaX = orgEvent.wheelDeltaX * -1; } |
||||
|
||||
// Firefox < 17 horizontal scrolling related to DOMMouseScroll event
|
||||
if ( 'axis' in orgEvent && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) { |
||||
deltaX = deltaY * -1; |
||||
deltaY = 0; |
||||
} |
||||
|
||||
// Set delta to be deltaY or deltaX if deltaY is 0 for backwards compatabilitiy
|
||||
delta = deltaY === 0 ? deltaX : deltaY; |
||||
|
||||
// New school wheel delta (wheel event)
|
||||
if ( 'deltaY' in orgEvent ) { |
||||
deltaY = orgEvent.deltaY * -1; |
||||
delta = deltaY; |
||||
} |
||||
if ( 'deltaX' in orgEvent ) { |
||||
deltaX = orgEvent.deltaX; |
||||
if ( deltaY === 0 ) { delta = deltaX * -1; } |
||||
} |
||||
|
||||
// No change actually happened, no reason to go any further
|
||||
if ( deltaY === 0 && deltaX === 0 ) { return; } |
||||
|
||||
// Need to convert lines and pages to pixels if we aren't already in pixels
|
||||
// There are three delta modes:
|
||||
// * deltaMode 0 is by pixels, nothing to do
|
||||
// * deltaMode 1 is by lines
|
||||
// * deltaMode 2 is by pages
|
||||
if ( orgEvent.deltaMode === 1 ) { |
||||
var lineHeight = $.data(this, 'mousewheel-line-height'); |
||||
delta *= lineHeight; |
||||
deltaY *= lineHeight; |
||||
deltaX *= lineHeight; |
||||
} else if ( orgEvent.deltaMode === 2 ) { |
||||
var pageHeight = $.data(this, 'mousewheel-page-height'); |
||||
delta *= pageHeight; |
||||
deltaY *= pageHeight; |
||||
deltaX *= pageHeight; |
||||
} |
||||
|
||||
// Store lowest absolute delta to normalize the delta values
|
||||
absDelta = Math.max( Math.abs(deltaY), Math.abs(deltaX) ); |
||||
|
||||
if ( !lowestDelta || absDelta < lowestDelta ) { |
||||
lowestDelta = absDelta; |
||||
|
||||
// Adjust older deltas if necessary
|
||||
if ( shouldAdjustOldDeltas(orgEvent, absDelta) ) { |
||||
lowestDelta /= 40; |
||||
} |
||||
} |
||||
|
||||
// Adjust older deltas if necessary
|
||||
if ( shouldAdjustOldDeltas(orgEvent, absDelta) ) { |
||||
// Divide all the things by 40!
|
||||
delta /= 40; |
||||
deltaX /= 40; |
||||
deltaY /= 40; |
||||
} |
||||
|
||||
// Get a whole, normalized value for the deltas
|
||||
delta = Math[ delta >= 1 ? 'floor' : 'ceil' ](delta / lowestDelta); |
||||
deltaX = Math[ deltaX >= 1 ? 'floor' : 'ceil' ](deltaX / lowestDelta); |
||||
deltaY = Math[ deltaY >= 1 ? 'floor' : 'ceil' ](deltaY / lowestDelta); |
||||
|
||||
// Normalise offsetX and offsetY properties
|
||||
if ( special.settings.normalizeOffset && this.getBoundingClientRect ) { |
||||
var boundingRect = this.getBoundingClientRect(); |
||||
offsetX = event.clientX - boundingRect.left; |
||||
offsetY = event.clientY - boundingRect.top; |
||||
} |
||||
|
||||
// Add information to the event object
|
||||
event.deltaX = deltaX; |
||||
event.deltaY = deltaY; |
||||
event.deltaFactor = lowestDelta; |
||||
event.offsetX = offsetX; |
||||
event.offsetY = offsetY; |
||||
// Go ahead and set deltaMode to 0 since we converted to pixels
|
||||
// Although this is a little odd since we overwrite the deltaX/Y
|
||||
// properties with normalized deltas.
|
||||
event.deltaMode = 0; |
||||
|
||||
// Add event and delta to the front of the arguments
|
||||
args.unshift(event, delta, deltaX, deltaY); |
||||
|
||||
// Clearout lowestDelta after sometime to better
|
||||
// handle multiple device types that give different
|
||||
// a different lowestDelta
|
||||
// Ex: trackpad = 3 and mouse wheel = 120
|
||||
if (nullLowestDeltaTimeout) { clearTimeout(nullLowestDeltaTimeout); } |
||||
nullLowestDeltaTimeout = setTimeout(nullLowestDelta, 200); |
||||
|
||||
return ($.event.dispatch || $.event.handle).apply(this, args); |
||||
} |
||||
|
||||
function nullLowestDelta() { |
||||
lowestDelta = null; |
||||
} |
||||
|
||||
function shouldAdjustOldDeltas(orgEvent, absDelta) { |
||||
// If this is an older event and the delta is divisable by 120,
|
||||
// then we are assuming that the browser is treating this as an
|
||||
// older mouse wheel event and that we should divide the deltas
|
||||
// by 40 to try and get a more usable deltaFactor.
|
||||
// Side note, this actually impacts the reported scroll distance
|
||||
// in older browsers and can cause scrolling to be slower than native.
|
||||
// Turn this off by setting $.event.special.mousewheel.settings.adjustOldDeltas to false.
|
||||
return special.settings.adjustOldDeltas && orgEvent.type === 'mousewheel' && absDelta % 120 === 0; |
||||
} |
||||
|
||||
})); |
@ -1,22 +0,0 @@ |
||||
Package.describe({ |
||||
name: 'wekan-scrollbar', |
||||
summary: "A wrapper for Malihu Custom Scrollbar. Highly customizable custom scrollbar jQuery plugin", |
||||
version: "3.1.3", |
||||
git: "https://github.com/wekan/wekan-scrollbar.git" |
||||
}); |
||||
|
||||
Package.onUse(function(api) { |
||||
api.versionsFrom('METEOR@0.9.0.1'); |
||||
|
||||
api.use('jquery'); |
||||
|
||||
// JS
|
||||
api.addFiles('jquery.mousewheel.js', 'client'); |
||||
api.addFiles('jquery.mCustomScrollbar.js', 'client'); |
||||
|
||||
// CSS
|
||||
|
||||
api.addFiles('jquery.mCustomScrollbar.css', 'client'); |
||||
|
||||
}); |
||||
|
@ -1,17 +0,0 @@ |
||||
## Meteor Wrapper for Malihu jQuery Custom Scrollbar plugin |
||||
|
||||
Add to your Meteor app |
||||
|
||||
``` |
||||
meteor add wekan:wekan-scrollbar |
||||
``` |
||||
|
||||
### OLD |
||||
|
||||
Add to your Meteor app |
||||
|
||||
``` |
||||
meteor add maazalik:malihu-jquery-custom-scrollbar |
||||
``` |
||||
|
||||
Compatible with Meteor v0.9.0.1 |
Loading…
Reference in new issue