Описание проблемы:
Обнаружил еще один случай, когда курсор мышки скрывается при активных разделах полноэкранного меню.
Условия воспроизведения:
1. Обычный полноэкранный режим (Fullscreen Windowed Mode). Не путать с Fullscreen Exclusive Mode!
2. Полноэкранно меню, вызываемое с помощью клавиши "Alt" с клавиатуры.
Алгоритм воспроизведения:
1. Открыть плеер
2. Открыть произвольный видео файл
3. Перейти в полноэкранный режим
4. В полноэкранном режиме нажать клавишу "Alt"
5. После появления полноэкранного меню, навести курсор мышки на любой раздел и раскрыть его
6. После раскрытия раздела полноэкранного меню, отвести курсор мышки в сторону
Фактический результат:
После выполнения данного алгоритма, курсор мышки скроется, при этом сам раздел полноэкранного меню останется раскрытым, т.е. активным.
Ожидаемый результат:
При активных разделах полноэкранного меню, курсор мышки ни в коем случае не должен скрываться. Иначе получается ситуация когда мы выбираем действия мышкой с невидимым курсором мышки.
P.S.
Это же относится и к Flybar. Если мы передвинем мышку в правый верхний угол, то Flybar появится при скрытом курсоре мышки. А это, разумеется, неправильно, т.к. сам Flybar - активный элемент и при нем всегда строго должен присутствовать курсор мышки.
Также, прилагаю видеозапись (https://yadi.sk/i/dbR10StVciTy0g) с воспроизведением данного бага.
Не смог воспроизвести.
Aleksoid1978,
ЦитироватьНе смог воспроизвести.
О боже, я же не случайно прилагаю видеозаписи с воспроизведением тех , или иных проблем. Они созданы для наглядности самого процесса воспроизведения тех, или иных проблем. Обратите внимание на мою видеозапись. На ней четко видно, куда именно я примерно отвожу курсор мышки.
Да я посмотрел - но у себя никак не смог :)
Evgeniy1990,
Да, с этим полноэкранным меню(Alt) на Win8 много непонятного, в частности с MPC-VR и его эксклюзивом. Вот мой пример -
1 Воспроизвожу видео в FS exclusive dx9
2 Нажимаю Alt, появляется курсор, не исчезает.
3 Передвигаю курсор(мышь) влево-вправо, курсор не исчезает
4 Передвигаю курсор(мышь) вверх-вниз, курсор исчезает(при этом ни флайбар, ни таймлайн не появляются)
5 Передвигаю опять мышь влево-вправо, курсор не появляется, хотя должен
Это лишь один из приколов на Win8
MPCfan
Скорее всего появилось главное меню, которого не видно. Надо будет проверку поставить, как это сделано для модальных диалоговых окон.
V0lt,
В dx11 exclusive на Win8 главное меню появляется при нажатии Alt
Aleksoid1978,
ЦитироватьДа я посмотрел - но у себя никак не смог.
После SVN r5710, данную проблему воспроизвести стало еще проще, поскольку теперь Flybar не мешает скрытию курсора мышки, так как просто не появляется при активном меню.
А значит, достаточно лишь вызвать меню, раскрыть любой раздел мышкой и при раскрытом разделе отвести ее в любую сторону, при это курсор мышки скроется при раскрытом разделе.
Цитата: V0lt от 24 ноября 2020, 08:44:24
MPCfan
Скорее всего появилось главное меню, которого не видно. Надо будет проверку поставить, как это сделано для модальных диалоговых окон.
Добавил проверку, убрал отображение при madVR/MPCVR Exclusive.
Цитата: Evgeniy1990 от 24 ноября 2020, 09:00:05
Aleksoid1978,
ЦитироватьДа я посмотрел - но у себя никак не смог.
После SVN r5710, данную проблему воспроизвести стало еще проще, поскольку теперь Flybar не мешает скрытию курсора мышки, так как просто не появляется при активном меню.
А значит, достаточно лишь вызвать меню, раскрыть любой раздел мышкой и при раскрытом разделе отвести ее в любую сторону, при это курсор мышки скроется при раскрытом разделе.
Вот теперь да - смог. Щас гляну что можно сделать :)
MPCfan,
ЦитироватьДа, с этим полноэкранным меню(Alt) на Win8 много непонятного, в частности с MPC-VR и его эксклюзивом. Вот мой пример -
1 Воспроизвожу видео в FS exclusive dx9
Опять двадцать пять... Я в которой раз уже говорю, что речь идет о проблеме при обычном полноэкранном режиме, который также называется Fullscreen Windowed Mode. Я даже сказал -
не путать с Fullscreen Exclusive Mode!
Ваш алгоритм относится именно к Fullscreen
Exclusive Mode. А это уже совсем
другое условие.
P.S. Я конечно удивлен тому, что когда говорю про обычный полноэкранный режим, почему-то все сразу же считают его именно эксклюзивным. Может тогда для ясности стоит в дальнейшем выделять эти режимы, чтобы не было путаницы, например хотя бы так -
FSE и
FSW.
Ну а человек описал другую проблему - с FSE режимом.
Исправил - проверяем.
Aleksoid1978,
ЦитироватьНу а человек описал другую проблему - с FSE режимом.
Вот именно - другое условие, а значит и другая проблема.
Нет, не подумайте, я никого не обвиняю.
MPCfan все правильно сделал, что сообщил именно сюда о другой (своей) проблеме, которая относится именно к FSE. Но, при этом, она также относится и к полноэкранному меню.
Просто удивительно и забавно видеть и наблюдать, когда речь идет (ведется) про обычный полноэкранный режим, как тут же появляются ответы и сообщения про эксклюзивный режим. :)
Evgeniy1990,
Просто исхожу из опыта простого пользователя. Не раз сталкивался, когда описывая какое-то поведение плеера, разработчики не могли у себя такое повторить. Однако, где-то и кем-то другими описанные нюансы плеера исправлялись и это каким-то боком решало проблемы и на моём железе, причём схожесть ситуаций составляла процентов на 5 с преувеличением.
Aleksoid1978,
ЦитироватьИсправил - проверяем.
Собрал и проверил
SVN r5713 (https://yadi.sk/d/AjAXDDHtHRIELg/Beta%20(Nightly)/1.5.6/1.5.6.5713). Основная проблема полностью исправлена. :)
MPCfan,
ЦитироватьПросто исхожу из опыта простого пользователя. Не раз сталкивался, когда описывая какое-то поведение плеера, разработчики не могли у себя такое повторить. Однако, где-то и кем-то другими описанные нюансы плеера исправлялись и это каким-то боком решало проблемы и на моём железе, причём схожесть ситуаций составляла процентов на 5 с преувеличением
Согласен. Вот почему важную роль играет именно совместное тестирование. И чем больше участников в нем присутствует, тем лучше для проекта. А в нашем, (в данном) случае, совместное тестирование получилось просто шикарным. Благодаря ему, удалось исправить аж целых
четыре проблемы. Грандиозно! :)
MPCfan,
Просьба, проверьте пожалуйста
SVN r5713 (https://yadi.sk/d/AjAXDDHtHRIELg/Beta%20(Nightly)/1.5.6/1.5.6.5713) у себя на вашей обычной Windows 8 (без точки 1). Ну и разумеется, погоняйте ее как можно дольше. :)
После закрытия файла флайбар не работает > https://yadi.sk/i/4BcyZsqCh6sC6Q
P.S. Проблема не в 5713, а в 5710.
MPCfan,
ЦитироватьПосле закрытия файла флайбар не работает > https://yadi.sk/i/4BcyZsqCh6sC6Q
P.S. Проблема не в 5713, а в 5710.
Странно, у себя на Windows 7 не могу воспроизвести потерю Flybar после закрытия видео файла.
Проверьте данную проблему на SVN r5721. Тоже есть?
Evgeniy1990,
Да, есть и на 5721, как на win8, так и на win8.1. Вернулся на 5709, флайбар работает.
MPCfan,
ЦитироватьДа, есть и на 5721, как на win8, так и на win8.1. Вернулся на 5709, флайбар работает.
Воспроизвел проблему с потерей Flybar, после закрытия видео файла. Чтобы ее получить, для этого нужно было выключить опцию "Вернуть начальные положение и размер окна после закрытия файла". Если данная опция будет включена, тогда проблемы с исчезновением Flybar, после закрытия видео файла, не будет.
P.S. Вам на будущее - обязательно указывайте дополнительные условия, иначе попробуй догадайся как воспроизводится у вас та, или иная проблема.
MPCfan,
Именно ваша видеозапись помогла мне у себя воспроизвести проблему с исчезновением Flybar, после закрытия видео файла.
Пришлось смотреть, сравнивать и искать отличия. В итоге нашел одно - эта опция "Вернуть начальные положение и размер окна после закрытия файла". У меня она была включена, а с ней данной проблемы нет.
Evgeniy1990,
Вообще-то проблему эту я воспроизводил с настройками по умолчанию, после деинсталляции со сбросом настроек и чисткой реестра. На видео там настройки изменены, но сути это не изменило.
MPCfan,
ЦитироватьВообще-то проблему эту я воспроизводил с настройками по умолчанию, после деинсталляции со сбросом настроек и чисткой реестра. На видео там настройки изменены, но сути это не изменило.
Вы все правильно сделали. Именно с настройками по умолчанию и надо воспроизводить подобные проблемы. По сути, меняется только внешний вид самого окна плеера.
Evgeniy1990,
Немного переделал видео, 5721, настройки дефолтные, но чтобы проблема проявилась, в процессе отключаю лишь "выход из полноэкранного режим по окончании воспроизведения", тогда нюанс проявится в полноэкранном режиме > https://yadi.sk/i/R3w1CGYUEvBeeQ
MPCfan,
ЦитироватьНемного переделал видео, 5721, настройки дефолтные, но чтобы проблема проявилась, в процессе отключаю лишь "выход из полноэкранного режим по окончании воспроизведения", тогда нюанс проявится в полноэкранном режиме > https://yadi.sk/i/R3w1CGYUEvBeeQ
Ха, то же самое, только в полноэкранном режиме. Суть в том, чтобы окно плеера не возвращалось обратно в первоначальный вид, тогда проблема с потерей Flybar будет присутствовать, после закрытия видео файла.
MPCfan,
С одной стороны, можно было бы обойтись без изменения в SVN r5710. Но с другой стороны, тогда бы Aleksoid1978 не смог бы воспроизвести у себя основную проблему данной темы, когда курсор мышки скрывался при активном полноэкранном меню и его раскрытых разделах. С третьей стороны, проявление Flybar, при активном полноэкранном меню - это тоже неправильно (нелогично). Поэтому Aleksoid1978 поправил этот момент (третью сторону). Я вот тоже сначала думал, стоит, или не стоит сообщать по поводу данного момента (третьей стороны), т.к. в моем случае, основная проблема данной темы итак, без особых усилий, воспроизводилась моментально и стабильно. Конечно Flybar мешал скрытию курсора мышки, но если его внимательно отвести в нужную сторону (нужный угол), то тогда он мешать не стал бы, просто сам скрылся бы автоматически.
Исправил "прикол" с FlyBar.
Aleksoid1978,
Обнаружил еще один случай, когда курсор мышки не скрывается в режиме FSE.
Будьте, пожалуйста, очень внимательны: если во время перехода на следующий файл в папке, или в плейлисте в режиме FSE очень удачно нажать ПКМ, то после перехода на следующий файл в папке, или в плейлисте, после перехода в режим FSE и начала воспроизведения видео файла, курсор мышки всегда останется активным в режиме FSE. Иногда, вместо самого курсора мышки, всегда активным может остаться именно "колесико бесконечной загрузки".
P.S. Да уж, очень забавно наблюдать "колесико бесконечной загрузки" во время воспроизведения видео файла в режиме FSE.
! Учтите, что это нужно проделать на "MPC-VR" + "FSE".
Ну это прям офигенное условие - "очень удачно нажать ПКМ". Я все понимаю, что надо тестировать и искать разного рода косяки - но тут я просто не понимаю самого условия :)
Aleksoid1978,
ЦитироватьНу это прям офигенное условие - "очень удачно нажать ПКМ". Я все понимаю, что надо тестировать и искать разного рода косяки - но тут я просто не понимаю самого условия
Во время перехода на след. файл в режиме FSE, еще до открытия след. файла, нужно будет успеть кликнуть ПКМ один раз, после чего, запустится и начнет воспроизводиться след. файл в режиме FSE. Именно после запуска след. файла в режиме FSE можно будет наблюдать активный курсор мышки, или же "колесико бесконечной загрузки".
Evgeniy1990,
По окончанию воспроизведения файла плеер может терять фокус при некоторых действиях мыши, достаточно одного файла: пусть сам доиграет до конца, наведите курсор на край сикбара справа и кликните, будет потеря фокуса. В вашем случае плеер сам теряет фокус по окончании при переходе на следующий файл. Это видно хорошо с закрепленным плейлистом(справа), просто при переходе он появляется, а значит в этот момент нет никакого FSE, и тут надо, да, наловчиться нажать ПКМ одновременно с появлением плейлиста и возможно, если повезёт, мы увидим на доли секунды открытие контекстного меню, после чего мы получаем воспроизведение следующего файла с постоянно крутящимся синим кружочком и потерянным фокусом.
Вот что происходит под эксклюзивом > https://yadi.sk/i/95NDXS1Z43ALXA
P.S. Да, проблема в контекстном меню. Если с DX9 FSE это окно появляется кратковременно, то c DX11 FSE на следующем файле так и остаётся в FSE.
MPCfan,
ЦитироватьПо окончанию воспроизведения файла плеер может терять фокус при некоторых действиях мыши, достаточно одного файла: пусть сам доиграет до конца, наведите курсор на край сикбара справа и кликните, будет потеря фокуса. В вашем случае плеер сам теряет фокус по окончании при переходе на следующий файл. Это видно хорошо с закрепленным плейлистом(справа), просто при переходе он появляется, а значит в этот момент нет никакого FSE, и тут надо, да, наловчиться нажать ПКМ одновременно с появлением плейлиста и возможно, если повезёт, мы увидим на доли секунды открытие контекстного меню, после чего мы получаем воспроизведение следующего файла с постоянно крутящимся синим кружочком и потерянным фокусом.
Вот что происходит под эксклюзивом > https://yadi.sk/i/95NDXS1Z43ALXA
Все верно. Молодцы, что расписали более подробный ответ. Только, в моем случае, плейлист не был активен.
ЦитироватьP.S. Да, проблема в контекстном меню. Если с DX9 FSE это окно появляется кратковременно, то c DX11 FSE на следующем файле так и остаётся в FSE.
Ха-ха, даешь два контекстных меню - контекстное меню плеера и контекстное меню самого плейлиста в режиме FSE, при DX11. )))
Конечно они остаются, если их вызвали. Это же активные элементы. Походу, сам DX11 вообще не понимает толком режим FSE. Ему вообще все равно. По моим наблюдениям и ощущениям, DX11 вообще не отдает никакой реакции, при переходе в режим FSE, словно перешел в обычный полноэкранный режим.
MPCfan,
Потеря фокуса - вещь серьезная и неприятная. Жаль, что я сразу же этого не понял и не придал этому особого внимания.
В случае использования мультисессии, можно получить ситуацию, когда активное окно находится в режиме FSE, но при этом, например, меняется громкость у второго приложения, которое находится за ним. Причем, вернуть фокус на основное приложение никак не удастся, до тех пор, пока их не перезапустишь заново.
P.S. Вот уж не думал и не ожидал, что смогу получить у себя такое...
Ну тут ситуация понятная, юзер успевает отобразить меню. Гляну, может получиться при переходе в FSE «отменять» эти меню, как делается при закрытии плейера.
Вот пробуйте - https://yadi.sk/d/yU07tx53OQ1vhg
Aleksoid1978,
Цитата: Aleksoid1978 от 30 ноября 2020, 06:17:30
Вот пробуйте - https://yadi.sk/d/yU07tx53OQ1vhg
Странно, сбросил настройки и удалил svn, запустил этот тест, ничего не изменилось.
Странно, постарался убирать все popup-menu при переходе в полный экран и в FSE. Ну нет так нет :)
Aleksoid1978,
ЦитироватьСтранно, постарался убирать все popup-menu при переходе в полный экран и в FSE. Ну нет так нет
Вы учли условие - DX11?
Да этот тут при чем - просто добавил скрытие popup-menu(как это сделано при закрытии файла) при переходе в полный экран или в FSE.
Aleksoid1978,
Evgeniy1990,
Нашёл брешь, можно сказать временную воронку с очень, очень узким проходом, в который ещё нужно умудриться и угодить. Не нужен никакой FSE, чтобы воспроизвести. > https://yadi.sk/i/DP7yOqOvNWEpIw По-моему не хватает незначительной задержки для всех этих pop-up меню, чтобы не было таких нюансов.
MPCfan,
ЦитироватьНашёл брешь, можно сказать временную воронку с очень, очень узким проходом, в который ещё нужно умудриться и угодить. Не нужен никакой FSE, чтобы воспроизвести. > https://yadi.sk/i/DP7yOqOvNWEpIw По-моему не хватает незначительной задержки для всех этих pop-up меню, чтобы не было таких нюансов.
Так я об этом вам и говорил с самого начала, что в моем случае вообще не было никакого активного плейлиста и прочих popup-menu. Задержка для popup-menu вообще не нужна. Они итак открываются моментально, как и должны.
Evgeniy1990,
Так на видео видно, что меню появилось, когда файл закончился, а новый не открылся, а когда открылся, меню продолжает висеть и крутится синий кружочек, то есть процесс не убит. Он появился, когда плеер его не ждал, просто говоря.
Сделайте пошаговый просмотр.
MPCfan,
ЦитироватьТак на видео видно, что меню появилось, когда файл закончился, а новый не открылся, а когда открылся, меню продолжает висеть и крутится синий кружочек, то есть процесс не убит. Он появился, когда плеер его не ждал, просто говоря.
Понял вас. Получается, что эту же самую проблему можно получить и в оконном режиме, а не только в FSE.
По идее, при переходе на следующий файл, нужно или закрывать полностью предыдущий процесс, или же убивать все активные элементы и popup-menu. Нужно не просто скрывать различные меню, а полностью их закрывать.
Удивительно и странно, что код Aleksoid'а по скрытию popup-menu почему-то не работает в его тестовом билде.
Да забейте на это все. Это такой баг, ну обычный пользователь врядли когда такое нажимать/делать.
Aleksoid1978,
Evgeniy1990,
Непосредственно по теме:
1 запустить плеер и включить плейлист(поставить галку на "скрывать на полном экране")
2 запустить файл(не обязательно) и перейти в полноэкранный режим
3 включить плейлист и нажать "ALt"
4 результат(плейлист не прикреплён) - при нажатии "Alt" нет ни системного меню, ни курсора
(плейлист прикреплён) - при нажатии "Alt" нет системного меню, но есть курсор не скрывающийся
Да, и ещё, флайбар может остаться при нажатии "Alt" > https://yadi.sk/i/JkgpsM7Lv97ujA
А вот системное меню невидимка > https://yadi.sk/i/jOJuVzglJ_AxfQ файл запустить из плейлиста, нажать "Alt" и пробел