1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update sync process

This commit is contained in:
Luke Pulverenti 2015-09-24 13:08:10 -04:00
parent cc428aac1d
commit 504384e83d
109 changed files with 553 additions and 289 deletions

View file

@ -16368,7 +16368,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
<paper-icon-button icon="paper-tabs:chevron-left" class$="[[_computeScrollButtonClass(_leftHidden, scrollable, hideScrollButtons)]]" on-up="_onScrollButtonUp" on-down="_onLeftScrollButtonDown"></paper-icon-button>
<div id="tabsContainer" class="flex" on-scroll="_scroll">
<div id="tabsContainer" class="flex" on-track="_scroll" on-down="_down">
<div id="tabsContent" class$="[[_computeTabsContentClass(scrollable)]]">
@ -16503,6 +16503,10 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
'iron-deselect': '_onIronDeselect'
},
ready: function() {
this.setScrollDirection('y', this.$.tabsContainer);
},
_computeScrollButtonClass: function(hideThisButton, scrollable, hideScrollButtons) {
if (!scrollable || hideScrollButtons) {
return 'hidden';
@ -16557,24 +16561,43 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
);
},
_scroll: function() {
var scrollLeft;
_scroll: function(e, detail) {
if (!this.scrollable) {
return;
}
scrollLeft = this.$.tabsContainer.scrollLeft;
var ddx = (detail && -detail.ddx) || 0;
this._affectScroll(ddx);
},
_down: function(e) {
// go one beat async to defeat IronMenuBehavior
// autorefocus-on-no-selection timeout
this.async(function() {
if (this._defaultFocusAsync) {
this.cancelAsync(this._defaultFocusAsync);
this._defaultFocusAsync = null;
}
}, 1);
},
_affectScroll: function(dx) {
this.$.tabsContainer.scrollLeft += dx;
var scrollLeft = this.$.tabsContainer.scrollLeft;
this._leftHidden = scrollLeft === 0;
this._rightHidden = scrollLeft === this._tabContainerScrollSize;
},
_onLeftScrollButtonDown: function() {
this._scrollToLeft();
this._holdJob = setInterval(this._scrollToLeft.bind(this), this._holdDelay);
},
_onRightScrollButtonDown: function() {
this._scrollToRight();
this._holdJob = setInterval(this._scrollToRight.bind(this), this._holdDelay);
},
@ -16584,11 +16607,11 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
},
_scrollToLeft: function() {
this.$.tabsContainer.scrollLeft -= this._step;
this._affectScroll(-this._step);
},
_scrollToRight: function() {
this.$.tabsContainer.scrollLeft += this._step;
this._affectScroll(this._step);
},
_tabChanged: function(tab, old) {
@ -16930,7 +16953,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
},
_disabledChanged: function(disabled) {
this.$.progressContainer.setAttribute('aria-disabled', disabled ? 'true' : 'false');
this.setAttribute('aria-disabled', disabled ? 'true' : 'false');
},
_hideSecondaryProgress: function(secondaryRatio) {
@ -18496,6 +18519,36 @@ paper-ripple {
return this.$.textarea;
},
/**
* Returns textarea's selection start.
* @type Number
*/
get selectionStart() {
return this.$.textarea.selectionStart;
},
/**
* Returns textarea's selection end.
* @type Number
*/
get selectionEnd() {
return this.$.textarea.selectionEnd;
},
/**
* Sets the textarea's selection start.
*/
set selectionStart(value) {
this.$.textarea.selectionStart = value;
},
/**
* Sets the textarea's selection end.
*/
set selectionEnd(value) {
this.$.textarea.selectionEnd = value;
},
/**
* Returns true if `value` is valid. The validator provided in `validator`
* will be used first, if it exists; otherwise, the `textarea`'s validity