pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Посмотреть трафик за месяц на mikrotik?

Лучший ответ: Осмелюсь дополнить ответ Wexter - в шедулер микротика можно поместить скрипт, который будет раз в месяц высылать на почту отчёт по трафику и сбрасывать счётчик на этом правиле forward.
Я для дома так же использовал такое решение - регулярно на сервер закачивается база блокировок РКН, из неё формируется AddressList и помещается в Микротик. Микротик в VPN заворачивает трафик только для данного AddressList.

Худший ответ: Из-за войны РКН с Телеграммом стало крайне неудобно работать с интернет - то один сайт не открывается, то другой. А если и открывается, то тормозит из-за всяких google webstatic и прочего.Настройка BGP для обхода блокировок, или «Как я пе...Можно на микротике как-то сходу посмотреть сколько трафика интерфейсе было за месяц? Или Netflow Analyzer настраивать?Mikrotik – сбор и анализ NetFlow трафикаУчёт трафика локальной сети с помощью fprobe и flo...
Вопрос: Кто кого обманывает на фриланс бирже?

Лучший ответ: FL.ru вас обманывает

Худший ответ: Как гарант скажет, так и будет. В вашем случае арбитраж ФЛ.
Вопрос: Что такое выражение, литерал и инициализация в JavaScript??

Лучший ответ: По-простому я бы объяснил так:выражение – это любой кусок кода, который в итоге даёт значение. Напр. цифра 0 или a===bлитерал – это буквально записанное значение. Напр. 10 или "строка" или объект {a:10, b:20}инициализация – придание начального значения. Напр. переменной при создании: var a = 10

Худший ответ: 1) Выражение - то что возвращается.
2) Литерал - любое значение указанное явным образом. Например цифра 120. Можно записать как Number(120). Т.е это упрощенный вид написания значения.
3) Инициализация - создание. var name = "Leo"; До того как мы создали переменную name ее не было, но мы ее инициализировали и ее стало.
Как то так
Вопрос: Повысить максимальную память для composer?

Лучший ответ: У вас проблема не в лимитах, а в нехватке памяти как таковой. Обойти проблему можно подключив swap, например, в виде файла.

Худший ответ: $ php --ini
проверьте, что редактировали нужный ini - файл
Вопрос: Будет ли утечка при использовании Shared ViewModel?

Лучший ответ: В таком варианте никакой утечки нет. Ссылка на фрагмент ниоткуда не появится во ViewModel, если ты её туда не просеттишь. Значит время жизни ViewModel не влияет на время жизни фрагмента. То, что фрагмент хранит какие-то ссылки, никак не может повлиять на его время жизни. Граф объектов - направленный.

Худший ответ: А зачем хранить ссылки на фрагменты? Нужно предоставить управление ими менеджеру фрагментов. Он сам знает, когда выкинуть тот или иной фрагмент из памяти. В своём приложении я специально добивался того, чтобы фрагменты оставались в памяти и не пересоздавались слишком часто. Для этого в транзакции мне пришлось обойтись без replace, attach и detach, а использовать show и hide. Я не храню нигде ссылки на фрагменты и нахожу их когда нужно через менеджер фрагментов по tag. А если фрагмент не нашёлся - создаю новый инстанс.
Вопрос: Асинхронная noda, любимая, из функции не передается результат?

Лучший ответ: return resultOneGame ----- ВОТ ТУТ УЖЕ НЕТ Правильно будет вот тут ЕЩЕ нет! Потому что в этот момент функция переданная в needle.get еще даже не начала выполняться. Вариантов решения много. 
Я с CS не дружу, поэтому примеры на JS:
1) Классическийfunction parserGame(game, callback) {
..............
if (err || res.statusCode != 200)
  return callback(new Error());
...............
// console.log resultOneGame ----- ВОТ ЗДЕСЬ ВСЕ ЕСТЬ
return callback(null, resultOneGame);
  }
};

function callback(error, resultOneGame) {
 // получаем результат
}
2) Promisefunction parserGame(game) {
  return new Promise(reject, resolve) {
  .................................
  if (err || res.statusCode != 200)
    reject(new Error());
  ................................
  // console.log resultOneGame ----- ВОТ ЗДЕСЬ ВСЕ ЕСТЬ
  resolve(resultOneGame);
  }
}

parserGame(game).then(function(resultOneGame) {
// получаем результат
}).catch(function(err){});

Худший ответ: Антон подскажи пожалуйста... Вызываю функцию... в callBacke все есть. Получилось. НО собака такая при вызове функции результат выдает ->PassThrough {
  _readableState: 
   ReadableState {
     objectMode: false,
     highWaterMark: 16384,
     buffer: BufferList { head: null, tail: null, length: 0 },
     length: 0,
     pipes: null,
     pipesCount: 0,
     flowing: null,
........................................................................
а  должен выдать объектgetResultOneGame = (error, resultParse) ->
  console.log resultParse
  return resultParse
вызов идет естественно основной функции..... Ппцц
Хотя создал тестовые функции, передав структуру приложения,  все гуд.
Вопрос: Можно ли добавить transition на height без фиксированной высоты?

Лучший ответ: Можно анимировать max-height и ставить ему заведомо большое (но конкретное, в пикселях) значение.

Худший ответ: с высотой равной 100% transition работает
Вопрос: При загрузке Ubuntu выдаётся initramfs, как это исправить?

Лучший ответ: fsck -y /dev/mapper/ubuntu--vg-root 
мне помогло

в вашем случае fsck -y /dev/sda1

Худший ответ: Попробуйте сделать вот что:
Когда появится ваш "initramfs" введите командуexit
Вопрос: Правильно ли я понимаю идею скролинга игрового мира?

Лучший ответ: 1. Проще изменять координаты объекту Camera или Viewport. И уже на ходу, при рендеринге, вычислять someObject.x - viewport.x.
Ведь отображение объектов — малая часть игровой логики: объектам надо жить своей жизнью, взаимодействовать друг с другом и героем, заранее отсекаться, если они далеко от камеры.
А если — вдруг — будут несколько окошек, например, для игры вдвоём, можно сделать несколько viewport’ов.
2. Это лишь простейший алгоритм скроллинга (т.н. «привязанная камера»):viewport.x = clamp(player.x - viewport.width / 2, 0, world.width - viewport.width);
clamp(x, y, z) = max(min(x, z), y);    при y>z можно (но не обязательно) наладить своё хитрое поведение, взяв, например, (y+z) / 2.
Если игра динамичная, а окно обзора невелико, можно усложнить поведение камеры.
У меня есть на этот счёт прекрасный перевод.
https://habrahabr.ru/post/272933/
https://habrahabr.ru/post/273397/
P.S. Платформеры писал профессионально, правда, не на холсте HTML 5, а на Java ME.

Худший ответ: 1. Проще изменять координаты объекту Camera или Viewport. И уже на ходу, при рендеринге, вычислять someObject.x - viewport.x.
Ведь отображение объектов — малая часть игровой логики: объектам надо жить своей жизнью, взаимодействовать друг с другом и героем, заранее отсекаться, если они далеко от камеры.
А если — вдруг — будут несколько окошек, например, для игры вдвоём, можно сделать несколько viewport’ов.
2. Это лишь простейший алгоритм скроллинга (т.н. «привязанная камера»):viewport.x = clamp(player.x - viewport.width / 2, 0, world.width - viewport.width);
clamp(x, y, z) = max(min(x, z), y);    при y>z можно (но не обязательно) наладить своё хитрое поведение, взяв, например, (y+z) / 2.
Если игра динамичная, а окно обзора невелико, можно усложнить поведение камеры.
У меня есть на этот счёт прекрасный перевод.
https://habrahabr.ru/post/272933/
https://habrahabr.ru/post/273397/
P.S. Платформеры писал профессионально, правда, не на холсте HTML 5, а на Java ME.
Вопрос: SSD HDD — реального места больше, чем пишется в системе! Как победить?

Лучший ответ: Да что угодно.
Например каким образом вы измерили размер папки System Volume Information ?
В проводнике он всегда отображается 0байт. А в реальности в зависимости от разных настроек может быть от нескольких сотен байт до нескольких террабайт. ShadowCopy думаете где он хранит? Или хранилище чанков, и прочие интересные вещи.
Определение занятого пространства на диске довольно неоднозначный процесс, смотря как подсчитать.
У меня например на диске емкостью 2террбайта  суммарный размер всех данных 8 террбайт, а свободно всего 500гигабайт.

Худший ответ: Видел, когда файл подкачки + файл гибернации отжирали 50 ГБ места. Если у вас много ОЗУ (16 ГБ и более), обратите внимание на hiberfile.sys и pagefile.sys в корне диска (чтобы их увидеть, уберите галку "скрывать системные и защищенные файлы" там же, где включаете отображение скрытых файлов и папок)
Уменьшение файла подкачки настраивается в дополнительных свойствах системы, гибернация - в настройках электропитания
Еще может помочь функция "очистка диска" в системе. Программы часто хранят временные файлы и не трут их. (C:/Пользователи/юзернейм/AppData/Local/Temp - и вообще, гляньте размер самой AppData. Опять же, видно только если установить ту галочку)
Вопрос: Как правильней проиндексировать сайт в поисковиках?

Лучший ответ: Для Яндекса - https://yandex.ru/support/webmaster/adding-site/ho...
Для Google - https://support.google.com/webmasters/answer/34397...
Как минимум стоит добавить сайт в панели вебмастера обеих систем. Далее у Яндекса есть такая форма для добавления URL, у Google - такая.

Худший ответ: Файлы robots.txt и sitemap не забудьте
Вопрос: YII2 генерация связей для таблиц MyIsam?

Лучший ответ: MYISAM не поддерживают FOREIGN KEY. Используйте InnoDB для этого. По поводу поля COMMENT - такой поддержки нет.

Худший ответ: Добрый вечер.Таблицы типа MyISAM показывают относительно хороши...
Нет поддержки, используйте InnoDB.
А связи можно сделать в моделях.public funciton getName()
{
    return $this->hasOne(Model::className(), [по каким полям связываете])
}
Вопрос: В чём преимущество автозагрузчика классов?

Лучший ответ: ведь даже если мы их подключим, но экземпляр не создадим, то ресурсы-то им всё равно не выделяться...
На декларацию класса, функции тратятся ресурсы (Их же нужно где-то хранить). Код пропускается через лексический анализатор, для каждой лексемы создаются токены, а из токенов строится синтаксическое дерево. Так что, даже просто подключение файла потребляет ресурсы.А можно избавиться от строки $obj = new MyClass(); и создавать экземпляр автоматически?
Нет, нельзя.
В 2017 году принято использовать composer для автозагрузки, а не писать свои велосипеды.

Худший ответ: Автозагрузка нужна в первую очередь для того, чтобы не подключать их везде (имеется в виду в других классах) руками. Потому что в случае изменения путей, имен файлов и тд потом надо весь код перелопатить и везде все поменять. Плюс, надо помнить что где подключено, чтобы классы были доступны там, где они нужны. Для большого приложения, особенно если использовать ООП во всей красе - interface, abstract, trait и конкретные субклассы, это огромный плюс. Ну и да, классы будут загружаться только если они реально нужны, а не всегда, что сократит в том числе и время парсинга.А можно избавиться от строки $obj = new MyClass(); и создавать экземпляр автоматически в момент $obj->displayVar();?( new MyClass )->displayVar();
Вопрос: Как транслировать посты из Telegram в Wordpress?

Лучший ответ: 2 вариантаСоздать бот, который через API будет взять посты с пост из Телеграмма и сохранит его в БД. Через MadelineProto извлекать посты и тоже сохранить их в БД.
А уже WordPress оттуда будет взять и показывать в sidebar.

Худший ответ: Это можно легко реализовать без программирования, используя сервис https://ifttt.com/
Вопрос: Классы языка CSS?

Лучший ответ: Насколько я знаю -- нет.
Само понятие "класс" по определению относится именно к HTML-тегам.

Худший ответ: А как Вы вообще собрались выводить это слово? У вас в любом случае слово будет обернуто в какой-то h1, или p.
Вопрос: Почему скрипт не работает с файлами с пробелами?

Лучший ответ: Берите в кавычки.IFS=$'\n'
for font in $(ls -1); do
  if [[ "$font" == "*.otf" ]] || [[ "$font" == "*.ttf" ]]; then
    echo "$font"
    $HOME/Downloads/sfnt2woff-zopfli-master/sfnt2woff-zopfli "$font"
    $HOME/Downloads/woff2/woff2_compress "$font"
  fi
done

Худший ответ: в начале скрипта ,до цикла, вставь строкуIFS=$'\n'
Вопрос: Стоит ли учить Assembler?

Лучший ответ: Ассемблер транслируется в машинный код, который выполняет процессор.
Даже базовое знание ассемблера поможет вам понять, как работает архитектура компьютера.
Да, будет полезно изучить его на уровне хотя бы "hello world"

Худший ответ: для кругозора в околорабочей тематике - да.
по работе - вряд ли столкнетесь.
Вопрос: Почему ini_set в проекте устанавливается при определенном событии? Правильно ли это?

Лучший ответ: И меняют на все время, а не на время конкретной операции? 
Меняют как раз таки на время, а не на "всегда"ini_setУстанавливает значение заданной настройки конфигурации. Настройка будет хранить установленное значение пока выполняется скрипт. После завершения работы скрипта значение настройки вернется к исходному.
Это нужно, в том случае, когда нам надо загрузить что-то, что грузится долго и чтобы не отпал скрипт по таймауту

Худший ответ:  Устанавливает значение заданной настройки конфигурации. Настройка будет хранить установленное значение пока выполняется скрипт. После завершения работы скрипта значение настройки вернется к исходному. 
php.net/manual/ru/function.ini-set.php
Вопрос: Как сделать обработку данных без перезагрузки страницы?

Лучший ответ: Форму отправляете через AJAX:$.ajax({
        url: 'some-url',
        type: 'post',
        dataType: 'json',
        data: $('form#myForm').serialize(),
        success: function(data) {
                   // тут перезагружаете страницу
                   // можно добавить проверку ответа 
                   // (например, если всё ок, а если нет, то выводить ошибку)
                   location.reload();
                 }
    });

Худший ответ: Да, тут поможет AJAX. На клиенте делаем:$.post('/call.php', { data: data }, function(result) {
   // json
   result = JSON.parse(result);
   // actions
});
И в серверной части (например, на PHP)if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
   // vars
   $data = isset($_POST['data']) ? flt_input($_POST['data']) : NULL;
   // actions
   $result = some_function($data);
   // output
   echo json_encode($result, true);
   exit();
}
Конечно, есть более сложные и интересные способы на основе COMET-технологии (те же WebSockets), но для начала стоит освоить AJAX.
Вопрос: Как сделать бэкенд на лендинге (пошаговую форму)?

Лучший ответ: Блин, учить backend)

Худший ответ: Одностраничники просты как 3 рубля, им зачастую и бэк не обязателен. Раз знаете только фронт, то собирайте данные целиком во фронте и шлите потом скопом.
Вопрос: Почему такая маленькая скорость?

Лучший ответ: Роутер должен выдавать по wifi при 11g до 54мбит/сек (роутер TL-WR841N). При 11n до 300,а 11b до 11.Есть несколько небольших нюансов.Во первых роутер не должен выдавать, а теоретически может выдать - замечаете разницу? Машина теоретически может разгонятся до 250км/ч, и вы ездите на машине по городу со скоростью 250км/ч. Согласитесь это очень разные вещи.Во вторых "до 54мбит/сек " это канальная скорость - показывает на какой скорости идет обмен между точками. А точки обмениваются вашими данными и служебным трафиком, и доля служебного трафика в WiFI зачастую достигает 60%. Поэтому если у вас там реально 54мбит/сек скорость канала, то скорость передачи ваших данных по каналу будет 20-35мбит/сек.В третьих - при 11g до 54мбит/сек возможно если работает одна точка доступа и один клиент. А если их больше, то эта скорость делится на всех. Поделите ее на количество активных устройств вашей сети, и соседских сетях.В четвертых - данную скорость должен поддерживать клиент. Хотя он скорее всего поддерживает в вашем случае.

Худший ответ: А носитель информации там умеет читать/писать с нужной скоростью?
Вопрос: Как разобраться в ООП PHP библиотеке?

Лучший ответ: Чувак. Любой код (библиотека, пакет, функция)  - есть некое обещание его производителя выполнить что-то ценное для тебя. Это описание должно давать название класса и его метода, который этот результат создаст. А дальше - это уже не твои проблемы как там внутри все устроено. Ты создаёшь объект, даёшь ему то, от чего он зависит, и вызываешь у этого объекта метод. Все! 
Представь телевизор. Его производитель обещает дать тебе возможность смотреть телеканалы, если ты подключишь антенну. Какая твоя задача как пользователя телевизора? Правильно! Вставить антенну и нажать на кнопку включения. Ты ведь не будешь залазить внутрь телевизора с тестером, и проверять как же там все устроено. Описание должно тебе сказать где кнопка включения.
Если ты используешь пакет (модуль, библиотеку), в которой это непонятно сразу - то это не твоя проблема, а того производителя которые его создал. Просто лучше, вероятно, ничего не придумали, и приходится либо создавать самому, либо пользоваться таким Г...
Код должен быть примерно такой:
$tv = new Tv(new Antena);
$content = $tv->on();
Это и есть ООП.

Худший ответ: С чего начать разбирательство? В каком файле что хранится и как это организовано?
Если вы хотите понять,  как работает это библиотека, что за чем вызывается и тд, то я очень рекомендую использовать вам отладчик (Самый популярный - это xdebug) с какой нибудь удобной gui'шкой (Оная присутствует в phpstorm). Ставите breakpoint и вперед разбираться с порядком вызова того или иного метода, функции и тд.Как сразу понимают каким образом использовать чужой код?
Читаем документацию по этой библиотеке.Неужели поддерживать документацию ОПП проще, чем документацию конкретными функциями?
В первую очередь важна не поддержка документации, а поддержка кода. И удобство его использования.Если бы в будущем был сервис вроде github но для функций и они ставились в php так же просто как установка пакетов apt install функция1 функция2 ..; было бы просто шикардос. Не?
Вы считаете, что устанавливать библиотеки в php непросто?Автор библиотеки специально пропустил несколько файлов, которые пользователь должен создать сам, типа не для дурачков.
Он не пропускал никаких файлов. В комментарии по ссылке он предлагает создать программисту клиентского кода файл с конфигурацией на его усмотрение. Файл конфигурации не имеет никакого отношения к реализации. Программист клиентского кода волен сам решать, как конфигурировать объекты:// Так
$someObf = new SomeClass('this_is_example_api_key');

// Или так
$someObf = new SomeClass(require('config.php')['api_key']);

// Или, например, так
$someObf = new SomeClass($config->get('api_key'));
Вопрос: Как выглядит современный процесс верстки?

Лучший ответ: Не уверен что начинающим верстальщикам нужно заморачивать себе голову всем этим ужосом:) Но может кому-то и пригодится:
- создаю новый проект на базе немного допиленного Optimized4HTML (можно копировать папку руками, можно сохранить в PhpStorm как темплейт, второе разумеется удобнее). Проект имеет следующую структуру:
- открываю его в PHPStorm, через командную строку устанавливаю пакеты и запускаю вотчер со следующей конфигурацией:
(таким образом отслеживаются изменения в файлах index.html, *.scss, common.js, а так же релодится браузер; в процессе верстки просто перескакиваем на виртуальный рабочий стол с открытым сайтом и сразу видим изменения, а если есть второй монитор то вообще песня). Кстати, перечень пакетов ннада?
- из плюшек emmet и sass обязательно, в качестве таскранера - gulp.
- макеты у меня в .sketch, так же кто не пробовал советую попробовать Figma, получите практически скетч в браузере. Adobe Photoshop не люблю. Adobe XD не пробовал, но осуждаю. Здесь наверное больше дело вкуса и реалий, в которых вы работаете (например, в каком формате получаете макеты, какая ОС на рабочем компе).
Вроде все просто. Что непонятно - спрашивайте, отвечу.
UPD. Optimized4HTML недавно перешел на Gulp 4, советую попробовать. Учтите, что Gulp 4 не имеет обратной совместимости с галпфайлами предыдущей версии, так как немного изменился синтаксис.

Худший ответ: Webpack сборки, можно Webpack + Gulp. Миксины SCSS, BEM методология. Макеты из Adobe XD или Zeplin. Результаты обязательно лить в гит,гитлаб. А то недавно ssd накрылся и фсе если б не было в гите))
Вопрос: Как настроить Nginx config на Open server?

Лучший ответ: в папке \OSPanel\userdata\config и в файле Nginx-{версия}_vhost.conf.
Нужно добавить или раскомментировать строку в location / :
         location / {try_files $uri $uri/ /index.php?$query_string;
        }

Худший ответ: Если я вас правильно понял, то вам нужно изменить try_files.try_files $uri /index.php?$args
Вопрос: Возможен ли твик Windows Framework для превращения в OS X?

Лучший ответ: Вы не работая с Макосью просто не понимаете, что дело не во внешнем виде. Поставив в винду Dock вы получите все туже винду.

Худший ответ: Нет, качественных твиков, которые не будут глючить - нет. Особенно для последних версий ОС. Можете для xp попробовать поискать.
А для "почувствовать" давно придумали виртуалку.
Вопрос: Как переопределять системные стили Bootstrap?

Лучший ответ: Файлы бутстрапа не трогать.
Переопределить одиним из 2 методов:
1) Подключить свой css ниже бутстрапа, в нём написать например.navbar{
  padding: 2rem 0.5rem;
}
Это переопределит отступы во всём бутстрапе
2) Добавить свой класс в конце:<nav class="navbar navbar-expand-lg navbar-light myclass">
Дальше делаете то же самое, в свой css ниже бутстрапа добавляете:.myclass{
  padding: 2rem 0.5rem;
}
Это переопределит родные бутстраповские стили стили только в одном месте.

Худший ответ: Можете на самой странице, где появляется эта навигация, написать своё CSS правило. Думаю переопределяться свойства.
Вопрос: Что значит «базовые знания Python»?

Лучший ответ: - Какое у вас образование?
- Я закончил колледжи Оксфордского и Кембриджского университетов
- Запишите: призывник умеет читать и писать...
должен суметь чОтко обосновать за табы или пробелы

Худший ответ: Весь текст учебника «Изучаем Python» Марка Лутца до 37-й главы.
Вопрос: Плагин ACF Pro WP?

Лучший ответ: Пользуйтесь не Pro версией. В обычной версии достаточно возможностей

Худший ответ: Я например, чтобы не покупать лицензию и конечно же не качать всякую гадость с вредоносным кодом покупаю с подобных сайтов - wootab.com
Этот сайт В нем есть все, что вам нужно от WORLDRESS PLUGINS И ТЕМ
Вопрос: Где получить практику применения JS для создания веб-сайтов?

Лучший ответ: Прекрасный курс из 30 уроков по ванильному Javascript от Wes Bos поможет понять, как применяется современный JS на практике, а заодно научит использовать ES6+ фичи уже сейчас:ссылка

Худший ответ: Банально берем инет-магазин. Что там используется? Модалки, раскрывающиеся списки, меню, валидация форм, слайдеры, фильтр по товарам. Разбейте на задачи каждый модуль, который что-то делает и пилите.
Вопрос: Если прошивки для микроконтроллеров на javascript?

Лучший ответ: espruino это не ядро, espruino это embedded плата на базе STM32F401 с ядром ARM Cortex M4.
Эти https://twitter.com/amperka чаваки любят с JS помутить :)

Худший ответ: ARM Cortex любой можно программировать на JS, там же Linux.
Вопрос: Возможно ли реализовать «нативный» кинетический скроллинг?

Лучший ответ: вообще оверрайдить поведение скролла это всегда плохо, лучше нативного быть не может, потому что вы не можете отследить все кейсы, как ваш скролл работает на том или ином у-ве, + некоторых людей может раздражать такой UX у скролла.
Ну а вообще, есть уже масса готовых библиотек для кастомного скроллинга. Вы просто подписываетесь на событие "scroll" и переопределяете там scroll position каждый раз. Можно для этого даже какую-то кривульку сделать (cubic-bezier).

Худший ответ: Советую использовать библиотеку TweenMax (или TweenLite) с плагингом Draggable. Помимо всего прочего он также делает то, что вы описали. И делает это хорошо и плавно. Дополнительный плюс в том, что он использует именно нативную прокрутку браузера и анимирует её. Тоесть работает именно событие scroll, а не сдвиг по оси Y или прочие. Из-за чего всё очень быстро и плавно прокручивается на любом устройстве.
В вашем случае нужно повесить анимацию плагина на событие wheel.
P.S. Тот тип скролла который вы описали уже работает на маках (с мышками) на уровне ОС. Их мыши генерируют именно такие угасающие события. Так что эту функцию для OSX, наверное, нужно будет отключить чтобы избежать конфликтов. А может конфликтов и не будет — нужно пробовать.