Pull to refresh

Comments 78

Закрепленные вкладки тоже считаются фоновыми? Насколько я понимаю — нет. Если я прав, то это хорошее решение для подобных сервисов, если учесть, что люди, их использующие, и так все время держат их открытыми.
Костыль, но минимальный

Алсо, исключения бы все решили
1). Ура, у хрома появляется функциональность Оперы конца прошлого десятилетия! С поправкой на современные технологии, конечно.
Я, помнится, очень удивился, когда уходя с Оперы, выяснил, что другие браузеры не отключают проигрывание flash и гифок в фоновых вкладках.
2). А что мешает дать возможность пользователю отключать подавление на некоторых сайтах? Страниц, которым действительно нужно постоянно делать что-то в фоне, не так много.
Юзабилити. Как вы обычному человеку будете объяснять почему нотификации из VK не вовремя приходят? Туториал при заходе на сайт выводить? Делать больше нефиг. Оптимизации браузера не должны беспокоить пользователя.
Получать нотификации через браузер — это так же логично, как встроенный в браузер почтовый клиент. То есть нифига не логично. А уж если удобство получения нотификаций вступает в конфликт с удобством веб-сёрфинга (активного поиска новой информации)…
Получать нотификации через браузер — это так же логично, как встроенный в браузер почтовый клиент.

Для пользователей интернета 2000-х — не логично. Для «только что подключившихся» — вполне логично.
По аналогии с заблокированными по умолчанию всплывающими окнами, можно показывать уведомление «Эта страница потребляла много ресурсов в фоновом режиме, поэтому мы её усыпили. Разрешить фоновую работу для этой страницы?»
Берём и пускаем рекламу с неслышным звуком (т.е. volume =0, сплошные нули в wav'е). Получаем приоритет для выполнения чего попало. Пользователя раздражает только лишняя иконка в табе, но в целом — никаких неудобств.
>выполнения чего попало

Ага, скрытый канвас с вебгл и шейдером, добывающим криптовалюту
Минимального циклического аудиоплеера с данными в Base64 даже достаточно.
В следующих рекомендациях по оптимизации сайтов это будет одним из пунктов: ).

Ну, кто как, а я обращу внимание на иконку звука в таб баре — и сайт отправится в чёрный список за компанию с прочими, кто без спроса включает звук.

Мне все это напоминает давний квест с фоновыми задачами на iOS.
Там тоже использовали звук тишины, мелкие загрузки, что-то еще (уже не помню).
В конце концов это все равно резалось рано или поздно.

Я уже не первый год вижу, что Гугл идет по пути Эппла в отношении песочниц. Т.е. ужесточение требований.
Так что я не удивлюсь, если скоро запретят вообще фоновые задачи, и скажут, что «хотите асинхронности — делайте push message с сервера». И да, 'push' только через авторизованный сервер и API с подпиской (чтобы бороться со спамерами и прочим).
Vivaldi с их возможностью выгрузить фоновые вкладки вспомнился сразу. Хотя мне этот функционал безразличен: годы, проведенные на компе с малым объемом оперативки, приучили вкладки закрывать сразу же. Когда их много, начинаю путаться.
Сам Хром уже достаточно давно этим занимается на ПК с малым количеством ОЗУ.
The Great Suspender в Хроме этим занимается.
Когда-нибудь разработчики хромиум-браузеров наконец-то сделают настройки прокси/проксей с white/black листами? Для чего надо было выпиливать данную настройку?
Зачем? Каждому второму этот функционал не нужен. А для тех, кому нужен, есть сразу несколько отличных расширений, обеспечивающих его с головой.
Многие браузеры (в том числе и хром) поддерживают Proxy Auto Config файлы.
Нужно лишь написать код на javascript для выбора прокси с учётом белого/чёрного списка.

Я думал, что этот механизм уже работает, потому что заметил, например, что YouTube не переключается на следующий ролик в плейлисте, если вкладка в фоне. Хуже того, этим страдает и Spotify, правда, не постоянно.


Надеюсь, эту "оптимизацию" можно будет отключать.

Я думаю, в случае Youtube, это фича самого сервиса, а не браузера.
YouTube не включает видео на фоновой вкладке специально, чтобы такие как я могли прокликать десяток ссылок на видеоролики средней кнопкой мыши без риска, что все видео начнут проигрываться одновременно. Ролик запускается лишь после открытия его вкладки.
Серьёзно? А я помню, как приходилось жмякать на паузу после каждого открытия новой вкладки. Как только перешёл на Youtube Center, сразу поотключал автоматическое проигрывание.
UFO just landed and posted this here
По-моему проще и логичней было бы внедрить функционал по типу расширений-суспендеров, намного понятней для пользователя и достаточно эффективно. А так выглядит очень спорно, еще и разработчикам резко нужно переделывать приложения под него.
UFO just landed and posted this here
В качестве дополнения\пояснения от разработчиков:

https://news.ycombinator.com/item?id=13473644
Firefox уже лет десять тормозит таймеры в фоновых вкладках. В первый раз столкнулся с этим, когда он ломал чат который подгружал новые сообщения в setInterval.
Не знаю, не знаю, и дискорд, и почта и такое другое работает отлично.
Наверное потому что они подгружают новую информацию с использованием long poll запросов. setInterval для загрузки новых сообщений — это почти как meta refresh и iframe, работает конечно, но как то не современно.
Ура! Может хоть это сподвигнет развивать нормально Standalone приложения, а не браузерные приложения.

Вообще — идея полной работы только в браузере — в многих случаях откровенно неудобна. Хороший пример — Facebook@Work, и его чат, который работает только в браузере. Из-за этого невозможно полностью перейти только на него, т.к. браузерные приложения откровенно неудобны в некоторых сценариях работы за ПК.
> Ура! Может хоть это сподвигнет развивать нормально Standalone приложения, а не браузерные приложения.

Это будет веб-приложение завернутое в электрон и предоставленное вам как standalone. Как можно легко угадать, это только ухудшит производительность системы.
Более того, и у слака, и у дискорда приложения именно такие :)
Не знаю как у Дискорда, но у Слака есть jabber транспорт и поэтому я пользуюсь старым добрым QIP для слака и знаете, это, как минимум, решает проблему сохранения истории сообщений (естественно на бесплатном аккаунте)
Например, популярные программы вроде Slack и Discord постоянно синхронизируют каналы, парсят новые сообщения от сотен пользователей в десятках каналов, чтобы определить, когда нужно побеспокоить пользователя нотификацией, а когда не нужно этого делать.

Может, это стоит сделать на сервере и присылать клиенту минимум информации для непосредственно уведомления?
Я тоже об этом подумал. А обновить интерфейс можно и после активации вкладки.
Ждем, когда флэш начнет блочится активнее. 55я версия уже начала, но хочется дальнейшего прогресса.
UFO just landed and posted this here
Именно удалил или отключил? Я вот отключил и некоторые видеохостинги (rutube кажется и еще какие-то новостные сайты) перестали работать — видеоплейер определяет, что флеш как будто бы есть и грузит флешевую версию, которая естественно не работает. У youtube таких проблем нет.
UFO just landed and posted this here
флеш можно заблочить по адресу chrome://plugins/
У меня он сам включается обратно через какое-то время почему-то. Подозреваю, что после каждого обновления.
Надеюсь это можно будет отключить. Неужели так много людей с железом пятнадцатилетней давности пользуются Хромом? На 8-ми летней раочей станции ещё ни разу не сталкивался с падением производительности в браузере.

С производительностью вряд ли что-то заметное случится, все-таки не антивирусы запускаем, а вот батарею ноута жрать может.

Так и я об этом. Для мобильных девайсов это актуально, для настольных — нет.

Вы предлагаете делать отдельные версии хрома для ноутов и десктопов?

Зачем? Галочку «оптимизировать энергопотребление» в настройках и всё.

Ваши слова были:


падением производительности

Я вижу что все-таки донес до вас, что речь не о производительности, а об энергии. Еще вопросы?:)

Вы даже представить себе не можете, но процентов 75 обычных пользователей имеют именно такое железо.
Они же на IE, Edge или Safari сидят. Железо сейчас не дорогое, если у человека старый ПК — то ему просто новый не нужен, как и сторонний браузер.
UFO just landed and posted this here
UFO just landed and posted this here

Решение достойное 2017 года, домохозяйка-френдли. Неквалифицированный пользователь пугается любого выбора.

Так примерно оно и сделано. У таймеров есть бюджет. Если приложение выполняет тяжелый код, оно израсходует бюджет быстрее и будет приторможено. Более легкие скрипты могут не успеть израсходовать бюджет (он ведь пополняется) и будут получать меньше задержек или не будут получать их вообще.
К сожалению, это наверное достаточно сложно — оптимально распределить приорететы выполняемых процессов. Посмотрим что из этого выйдет. Может в будущем придумают более изящное решение. Наука и техника не стоят на месте )
Хорошее нововведение. Ещё бы что-то с потреблением памяти сделали… А то когда хром отожрал 100% памяти уже всё равно, понизил он приоритет вкладкам или нет — всё равно тормозить об своп-файл будет.
Хреновое нововведение… Любое решение, которое доставляет неудобство людям в угоду железу (батарейкам) это в корне плохо. Пусть развивают алгоритмы, железо, а не «а теперь ты подождешь потому, что мы не умеем расходовать твою батарейку»…
Не знаю, кому как, а мне это решение доставит удобство (конечно, при условии что я начну активно пользоваться хромом).
Вы считаете, что плохо серфить лучше, чем вообще не серфить? Подобное вынудит разработчиков оптимизировать свои алгоритмы, это ж идеально!
Ну вот, за исправление ошибок фронтендщиков взялись разработчики браузеров, рано или поздно это должно было случится. Нельзя же вечно говнокодить на JS и думать только о новых фреймворках, и о том как прикрутить вот эту модную фичу из stage-0 («ехал babel через babel видит babel babel babel...»)
Как только пользователи завалят популярные сайты потоком… негатива, разработчики быстро научатся отключать тяжелые операции, если вкладка в фоне. Или добавят новые хаки.
Вкладки превращаются… превращаются… в закладки!
UFO just landed and posted this here

А если это, скажем, какой-нибудь Cookie Clicker, у которого нет музыки, или что-то с отключенным/отсутствующим звуком? Нет, это определённо надо сделать отключаемым, причём для каждой вкладки, а не для всех сразу.

Честно говоря, не совсем удачные примеры, на которые еще и упор делается, это я про Discord и Slack — и тот и другой имеют нативные клиенты, и как-то лично мне проще пользоваться именно ими, так что проблемы в конкретно их случае вообще не видно. А вот различные социальные сети — это да, держать их в закрепленных вкладках не вариант, приложений нативных они не выпускают. По крайней мере — пока что :)
«Нативный» клиент того же Слака — это, грубо говоря, браузер (в котором работает все та же веб-версия), завернутый в отдельное приложение.
Не вопрос, что это меняет в моем комментарии?
Это не «нативные» клиенты же. Точно так же можно отцепить вкладку от браузера (или поставить другой браузер) и там запустить.
Вы какую-то чушь пишете — то, что софт использует тот или иной движок, не делает его ненативным. Это отдельно взятое приложение, со всеми типичными признаками отдельного приложения, не зависящее от уже установленных и вообще браузеров на машине.
Это отдельно взятое приложение, со всеми типичными признаками отдельного приложения

..., что не делает его нативным.
Попробуйте тогда привести свое определение нативности приложения.
API-вызовы системы клиентским кодом, без прослоек в виде браузеров и других исполняющих сред, очевидно же. (фреймворки и библиотеки, с которыми клиентский код линкуется не считаются).

Java-софт для Windows не нативен.
Java-софт для Android — нативен.
Phonegap-софт для Android — не нативен.
JavaScript-софт для ChromeOS — нативен.
Вы понимаете, что в общем-то ведете речь с точки зрения разработчика, тогда как в посте речь изначально о пользователях?
Да, согласен, я погорячился. Но нативность здесь не играет роли, речь должна идти о standalone'овости. С точки зрения пользователя нативность — это внешний вид и поведение.
Я главным образом вообще о том писал, что конкретно приведенные примеры в посте могут быть заменены отдельными приложениями, которые поставляют сами разработчики, и я не вижу причин этого не делать, если честно, зачем в браузере держать то, что можно использовать отдельно — это удобнее в 95% случаев.
Java-софт для Sailfish? Java-софт для BBOS 10? (в обоих случаях там имитируется Android'ная JVM поверх ну совсем другого ядра)
Unity-софт под iOS и Android (если нативен то собственно почему? только из-за того есть компилятор IL в C++ и за собой таскается половина от Mono)? Да и GUI обычно канонам платформы… не следует.
Java-софт на Chrome OS? А если учесть https://sites.google.com/a/chromium.org/dev/chromium-os/chrome-os-systems-supporting-android-apps?
Linux-софт на Windows 10 с Subsystem for Linux?
Win32 софт на Windows 7(и Windows 10)?
А в чем отличие двух предыдущих пунктов кроме того что соответствующая подсистема включена по умолчанию и куча софта в составе самой ОС ее используют? (при этом API ядра все равно используется не напрямую (если не брать в расчет оптимизации) и есть и Native API
приложения под Win3.1 под OS/2 со встроенным модулем совместимости (который работал лучще и стабильнее чем сам Win3.1)

Жаль только, что они слишком запрятали кнопку отключения этих «фичей». Я использую примерно 10-15 вкладок одновременно и предпочитаю, чтобы они всегда висели фоном и не уходили в сон, для этого я даже память компа увеличил.
А как-нибудь можно отключить функционал «отключения» вкладок, который реализован сейчас у хрома? Крайне не приятная штука.
Эта функция не слишком отличается от того же doze/greenify на android. Для оповещений вроде есть отдельное api типа gms, их можно кинуть в исключения. Все прочее усыпить.
Sign up to leave a comment.

Articles