Проблема перетаскивания в Chrome, связанная с масштабом Windows (125%) - PullRequest
0 голосов
/ 19 сентября 2018

У меня проблема с перетаскиванием в Chrome (v69.0.3497.100).В частности, некоторые события перетаскивания запускаются, когда масштабирование Windows отличается от 100%, даже если они не должны запускаться.

Ознакомьтесь с примером stackblitz и попробуйте перетащить«синий» прямоугольник над собой (просто перетащите, переместите немного вниз и опустите).Если масштабирование Windows установлено на 100% (масштаб браузера также равен 100%), то запускается одно событие (dragEnter), как и ожидалось (проверьте консоль).Но если масштабирование Windows установлено на 125% (но масштаб браузера по-прежнему равен 100%), то запускаются три события (два dragEnter и одно dragLeave), и я ожидал, что с момента перетаскивания элемента будет сгенерировано только одно событие.и упал на себя (как это было в случае с масштабом 100%).

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

Похоже, что это не происходит в последнем Firefox, IE или Edge.

Кто-нибудь знает, почему это происходит и как это исправить?

Спасибо.

1 Ответ

0 голосов
/ 01 октября 2018

Чем больше я смотрю на эту проблему, тем больше она кажется проблемой Chromium.Несколько дней назад я опубликовал вопрос, затем я хотел установить за него вознаграждение, а затем я нашел ваш, и я считаю, что они взаимосвязаны: Проблема прокрутки субпикселя, не удается правильно настроить scrollTop в Chrome 69 .

В системе отслеживания проблем Chromium есть несколько сообщений об ошибках, связанных с проблемой округления масштаба: ссылка 1 , ссылка 2 ... Я также создал свой собственныйошибка: ссылка 3 .Там должно быть больше информации, но это занимает слишком много времени для исследования.Я думаю, что мы можем объединить усилия и привлечь больше внимания к проблеме, и, например, если это ответственность Chromium, чтобы помочь им с разъяснением и установлением приоритетов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...