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

update search

This commit is contained in:
Luke Pulverenti 2016-06-27 13:34:30 -04:00
parent 036319e68b
commit 0f0c5850a8
3 changed files with 50 additions and 9 deletions

View file

@ -214,7 +214,9 @@ define(['browser'], function (browser) {
if (enableAnimation() && oldAnimatedPage && newAnimatedPage.animate) { if (enableAnimation() && oldAnimatedPage && newAnimatedPage.animate) {
if (transition == 'slide') { if (transition == 'slide') {
return slide(newAnimatedPage, oldAnimatedPage, transition, isBack); return slideLeft(newAnimatedPage, oldAnimatedPage, transition, isBack);
} else if (transition == 'slidedown') {
return slideDown(newAnimatedPage, oldAnimatedPage, transition, isBack);
} else if (transition == 'fade') { } else if (transition == 'fade') {
return fade(newAnimatedPage, oldAnimatedPage, transition, isBack); return fade(newAnimatedPage, oldAnimatedPage, transition, isBack);
} }
@ -223,7 +225,7 @@ define(['browser'], function (browser) {
return Promise.resolve(); return Promise.resolve();
} }
function slide(newAnimatedPage, oldAnimatedPage, transition, isBack) { function slideLeft(newAnimatedPage, oldAnimatedPage, transition, isBack) {
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
@ -266,13 +268,56 @@ define(['browser'], function (browser) {
}); });
} }
function slideDown(newAnimatedPage, oldAnimatedPage, transition, isBack) {
return new Promise(function (resolve, reject) {
// Do not use fill: both or the ability to swipe horizontally may be affected on Chrome 50
var timings = {
duration: 450,
iterations: 1,
easing: 'ease-out'
}
if (!browser.chrome) {
timings.fill = 'both';
}
var animations = [];
if (oldAnimatedPage) {
var destination = isBack ? '100%' : '-100%';
animations.push(oldAnimatedPage.animate([
{ transform: 'none', offset: 0 },
{ transform: 'translate3d(' + destination + ', 0, 0)', offset: 1 }
], timings));
}
var start = isBack ? '100%' : '-100%';
animations.push(newAnimatedPage.animate([
{ transform: 'translate3d(0, ' + start + ', 0)', offset: 0 },
{ transform: 'none', offset: 1 }
], timings));
currentAnimations = animations;
animations[animations.length - 1].onfinish = resolve;
});
}
function fade(newAnimatedPage, oldAnimatedPage, transition, isBack) { function fade(newAnimatedPage, oldAnimatedPage, transition, isBack) {
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
// Do not use fill: both or the ability to swipe horizontally may be affected on Chrome 50 // Do not use fill: both or the ability to swipe horizontally may be affected on Chrome 50
var timings = { var timings = {
duration: 140, duration: 160,
iterations: 1, iterations: 1,
easing: 'ease-out' easing: 'ease-out'
} }

View file

@ -176,10 +176,6 @@
loadSuggestions(view); loadSuggestions(view);
} }
view.addEventListener('viewshow', function () {
focusManager.focus(view.querySelector('.txtSearch'));
});
view.querySelector('.txtSearch').addEventListener('input', function () { view.querySelector('.txtSearch').addEventListener('input', function () {
onSearchChange(this.value); onSearchChange(this.value);
}); });

View file

@ -2896,8 +2896,8 @@ var AppInfo = {};
defineRoute({ defineRoute({
path: '/search.html', path: '/search.html',
dependencies: [], dependencies: [],
autoFocus: false, controller: 'scripts/searchpage',
controller: 'scripts/searchpage' transition: 'slidedown'
}); });
defineRoute({ defineRoute({