AIMP Forum

AIMP for PC => Skin Editor, Skin Engine => Ошибки и замечания / Bugs => Topic started by: gr-e on July 02, 2024, 23:25:55

Title: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 02, 2024, 23:25:55
Сейчас немного странное поведение получается - кнопка всё равно скрывается, несмотря на то, что она в нажатом состоянии.
В качестве решения можно сохранять состояние контейнера IsActive = 1, если у одного из дочерних элементов открыто меню.

(https://i.imgur.com/FIvp63w.gif) (https://i.imgur.com/eq1FANA.gif)
Title: Re: [З][2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 03, 2024, 16:51:59
Скиньте пример скина
Title: Re: [З][2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 03, 2024, 17:24:45
Ну вот на первой гифке - окно визуализаций Charm. При открытом меню кнопка AIMP скрывается вместе с заголовком окна.
Title: Re: [З][2555] Скрывающиеся кнопки и контесктные меню
Post by: Black_AVP_Bim on July 03, 2024, 21:12:03
Ну вот на первой гифке - окно визуализаций Charm.
Так, вот, из-за этой связи:

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=73065.0;attach=71789)
Title: Re: [З][2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 04, 2024, 18:21:41
Так, вот, из-за этой связи:
Речь о том, чтобы кнопка не скрывалась, если у неё открыто меню. Если убрать эту связь, она вообще скрываться не будет.
Title: Re: [З][2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 08, 2024, 14:39:36
Поправил, вот сборка, попробуйте: https://disk.yandex.ru/d/pFZKWtopDjP_Ow
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Black_AVP_Bim on July 08, 2024, 17:15:50
Так, проблема была в том, что меню "пропускало" через себя сообщения мыши?
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 08, 2024, 18:54:22
Поправил, вот сборка, попробуйте
Поведение скрывающихся элементов теперь как надо, однако, появились другие проблемы: теперь при открытом меню интерфейс плеера не реагирует на курсор, сам курсор меняется на "руку", для нажатой кнопки не срабатывает событие OnMouseLeave.
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 08, 2024, 20:51:14
Так, проблема была в том, что меню "пропускало" через себя сообщения мыши?

Не совсем, менюшка забирала на себя кэпчу у кнопки, а скин-движок "отпускал" ее активность, не учитывая, что кэпча у дочернего элемента
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 10, 2024, 18:19:10
теперь при открытом меню интерфейс плеера не реагирует на курсор, сам курсор меняется на "руку", для нажатой кнопки не срабатывает событие OnMouseLeave
Я смотрю, это пошло в релиз. Если пофиксить не вариант, думаю, лучше вернуть как было
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 20:18:23
для нажатой кнопки не срабатывает событие OnMouseLeave.

Хм, пропустил ваше сообщение, поэтому и не поправил...
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 20:33:50
для нажатой кнопки не срабатывает событие OnMouseLeave

Перепроверил - событие срабатывает, сразу после того, как менюшка закроется и мышь окажется над другим элементом.
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 20:35:54
За курсор - подтверждаю, поправлю
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 10, 2024, 21:15:46
Перепроверил - событие срабатывает, сразу после того, как менюшка закроется и мышь окажется над другим элементом.
До этого оно срабатывало при появлении меню. Теперь не понять, то ли пользователь держит кнопку мыши, то ли открылось контекстное меню
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 21:39:32
Теперь не понять, то ли пользователь держит кнопку мыши, то ли открылось контекстное меню

Это одно и тоже - кнопка нажата.

До этого оно срабатывало при появлении меню

ну это как раз и неправильно.

С курсором поправил - сборку перезалил.
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 10, 2024, 22:04:57
ну это как раз и неправильно.
Возможно, но хотя бы OnMouseUp при отпускании кнопки мыши должен срабатывать.
В результате в скине (https://www.aimp.ru/forum/index.php?topic=57809.0) поломалась вот эта штука, которая должна появляться только при зажатой ЛКМ:

(https://i.imgur.com/nZLFOCG.gif)

С курсором поправил - сборку перезалил.
Курсор исправлен, спасибо.
Фоновые элементы при открытом меню всё так же не подсвечиваются. Мелочь, конечно, но создается впечатление, что при первом клике вне контекстного меню они не нажмутся (как в UWP приложениях).
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 22:21:42
Возможно, но хотя бы OnMouseUp при отпускании кнопки мыши должен срабатывать.

Он срабатывает, менюшка как раз на MouseUp и показывается (перед обработчиком).

Фоновые элементы при открытом меню всё так же не подсвечиваются.

Они и не должны подсвечиваться в этом случае.

В результате в скине поломалась вот эта штука, которая должна появляться только при зажатой ЛКМ:

а как вы это реализовали?
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 10, 2024, 22:46:34
Он срабатывает, менюшка как раз на MouseUp и показывается (перед обработчиком).
Вот, пример накидал (во вложении)
MouseUp срабатывает вместе с MouseLeave при закрытии меню
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 10, 2024, 22:51:05
MouseUp срабатывает вместе с MouseLeave при закрытии меню

Так... а что тут не так?
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: gr-e on July 10, 2024, 22:58:23
Ну если менюшка откывается на MouseUp, то порядок должен быть: Отпускается кнопка мыши > MouseUp > Меню открывается > ... > Меню закрывается
А получается: Отпускается кнопка мыши > Меню открывается > ... > Меню закрывается > MouseUp
Title: Re: [x] [2555] Скрывающиеся кнопки и контесктные меню
Post by: Artem on July 11, 2024, 07:48:49
если менюшка откывается на

менюшка как раз на MouseUp и показывается (перед обработчиком).

Обработчик вызывается последним, как завершающее действие. В противном случае, кнопка не будет нажатой во время показа меню