(function (window) { "use strict"; var OPTIONS = window.SCREEN_SIZE_OPTIONS || {}; // wrapper + options.padding * 2 var sizeList = [980,1220,1340]; var nameList = ['small', 'medium', 'large']; var sizesLength = sizeList.length; var isBranding = false; var htmlElement = document.documentElement; var lastState, className; var options = { padding: 20, sideWidth: 140, largeSideWidth: 240, bannerStub: sizeList[0], minBranding: OPTIONS.minBranding || sizeList[1], maxBranding: 1920, classRe: /\s*screen_(\S+)/gi, classPrefix: 'screen_' }; // ширина экрана для больших ушей, когда они полностью помещаются для самого большого экрана var widthForLargeSide = sizeList[sizeList.length - 1] + (options.largeSideWidth + options.padding) * 2; function screenSize(branding) { var windowWidth = window.innerWidth; var actualWidth = windowWidth; var sideWidth, canBranding, canBrandingStub, size, result, state; // запоминаем состояние последнего вызова, например screenSize(true) в слоте п-брендинга if (typeof branding === 'boolean') { isBranding = branding; } if (isBranding) { sideWidth = windowWidth > widthForLargeSide && options.largeSideWidth || options.sideWidth; // используем 20 отступы по бокам под брендирование if (sideWidth) { actualWidth -= (sideWidth + options.padding) * 2; } } canBranding = windowWidth >= options.minBranding && windowWidth <= options.maxBranding; // не показываем брендинг на экраны меньше 1024 и больше 1900 if (!canBranding) { actualWidth = windowWidth; } canBrandingStub = actualWidth >= options.bannerStub && actualWidth < options.minBranding; // подбираем экран под окно пользователя с учетом брендинга for (var sizeNo = 1; sizeNo < sizesLength; sizeNo++) { if (actualWidth < sizeList[sizeNo]) { size = nameList[sizeNo - 1]; break; } } if (!size) { size = nameList[nameList.length - 1]; } state = [size, isBranding, canBranding, canBrandingStub, sideWidth].join(); if (lastState != state) { lastState = state; className = htmlElement.className.replace(options.classRe, '').split(' '); className.push(options.classPrefix + size); if (isBranding) { className.push(options.classPrefix + 'branding-p_need'); if (canBranding) { className.push(options.classPrefix + 'branding-p'); className.push(options.classPrefix + 'branding-p_' + sideWidth); } else if (canBrandingStub) { className.push(options.classPrefix + 'branding-p_banner-stub'); } } htmlElement.className = className.join(' '); try { window.dispatchEvent(new Event('resize')); } catch (ex) {} } } /** * Создает функцию, игнорирующую вызовы происходящие чаще заданого интервала * @param originalFn функция, частоту вызова которой необходимо ограничить * @param [timeout = 100] интервал * @param [callImmediately = false] флаг, указывающий что функция должна выполняться в начале группы вызовов * @returns {Function} */ function debounce (originalFn, timeout, callImmediately) { var timer = null; return function debounced () { var context = this, args = arguments; function delayed () { if (!callImmediately) { originalFn.apply(context, args); } timer = null; } if (timer !== null) { clearTimeout(timer); } else if (callImmediately) { originalFn.apply(context, args); } timer = setTimeout(delayed, timeout || 100); }; } screenSize(); window.screenSize = screenSize; if (window.addEventListener) { window.addEventListener("resize", debounce(screenSize), false); } else if (window.attachEvent) { window.attachEvent("onresize", debounce(screenSize)); } })(this);
Mail.RuПочтаМой МирОдноклассникиИгрыЗнакомстваНовостиПоискВсе проекты
Рассылка
Получайте главные новости дня от Hi-Tech Mail.Ru

Картинка в картинке: обновленный WhatsApp показывает видео с YouTube прямо внутри сообщения

Новая функция доступна только для пользователей iPhone и позволяет им смотреть видео на YouTube, не выходя из приложения.

WhatsApp обновил приложение iOS для интеграции YouTube. Теперь пользователи могут смотреть видео на YouTube, не выходя из WhatsApp. Последняя версия приложения (v2.18.11) уже доступна для загрузки в App Store.

Раньше, когда пользователь нажимал на ссылку YouTube, видео воспроизводилось с помощью приложения YouTube, а приложение WhatsApp перемещалось в фоновый режим. Однако после интеграции с YouTube видео можно воспроизводить прямо в приложении, не закрывая его. Кроме того, мессенджер поддерживает режим PiP (картинка в картинке), так что вы можете продолжать писать сообщения WhatsApp во время просмотра видео на YouTube.

Изображение: WABetaInfo

При использовании режима PiP видео отображается в небольшом «плавающем» окне с базовым набором элементов управления (воспроизведение, пауза, закрытие и полноэкранный режим). Размер видео также можно изменить, и пользователи могут перемещать его по экрану.

В настоящее время эта функция доступна только для некоторых пользователей iOS, поскольку развертывание функции происходит постепенно. Когда она будет развернута для Android, неизвестно.

Читайте также:

Поделитесь с друзьями последними новостями о популярном мессенджере, для этого нажмите на одну из кнопок ниже
Вы подписались на рассылку.Отменить
Подписаться на рассылку
Комментарии
25
Индус Гуамоколатокинт
Короли бесполезных функций, не иначе. Огрызки опять придумали то, что не надо.
СсылкаПожаловаться
Lexx
в чём "секрет"?
СсылкаПожаловаться
Незнакомец ...
iPhone X не интересен, YouTube тем более, WhatsApp вообще шляпа отсталая.
Отправлено с Indesit.
СсылкаПожаловаться
Чтобы оставить комментарий, вам нужно авторизоваться.
Обнаружили ошибку? Выделите ее и нажмите Ctrl+Enter.
Подпишитесь на нас
Новости Hi-Tech Mail.Ru