The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Использование BPF-программ для решения проблем в устройствах ввода, opennews (??), 22-Апр-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


31. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (32), 23-Апр-24, 01:28 
Nobby или кто там, хотели срабатывание действия по отпусканию клавиш? Это решение для вас!
Ответить | Правка | Наверх | Cообщить модератору

43. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (44), 23-Апр-24, 07:42 
Чел срабатывать на отпускание должны сами иксы. И это решается только патчем иксов. И только в силу админ ресурсов нельзя поменять изменение языка на отпускание по дефолту. А так штатный драйвер клавиатуры прекрасно сообщает что кнопка отпущена или зажата там проблем точно нет запусти тот же xev.
Ответить | Правка | Наверх | Cообщить модератору

46. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от n00by (ok), 23-Апр-24, 09:19 
На самом деле первый эксперт почему-то забыл, что пользователи KDE (где "всё настраивается") хотели вызывать контекстное меню правой клавишей мыши не только по нажатию, но и по отпусканию. Изменить поведение - штатная возможность Qt и решается при помощи плагинов. Решается - в смысле, решено в Windows, а для KDE мой патч джва года валяется здесь на форуме, но для сборщиков пакетов он бесполезен, поскольку из конфига то он читает, а кнопку для записи конфига я не делал.

diff --git a/src/platformtheme/khintssettings.cpp b/src/platformtheme/khintssettings.cpp
index 6703eaf..91e6c3e 100644
--- a/src/platformtheme/khintssettings.cpp
+++ b/src/platformtheme/khintssettings.cpp
@@ -89,6 +89,7 @@ KHintsSettings::KHintsSettings(const KSharedConfig::Ptr &kdeglobals)
     m_hints[QPlatformTheme::MouseDoubleClickInterval] = readConfigValue(cg, QStringLiteral("DoubleClickInterval"), 400);
     m_hints[QPlatformTheme::StartDragDistance] = readConfigValue(cg, QStringLiteral("StartDragDist"), 10);
     m_hints[QPlatformTheme::StartDragTime] = readConfigValue(cg, QStringLiteral("StartDragTime"), 500);
+    m_hints[QPlatformTheme::ContextMenuOnMouseRelease] = readConfigValue(cg, QStringLiteral("ContextMenuOnMouseRelease"), 0);

     KConfigGroup cgToolbar(mKdeGlobals, "Toolbar style");
     m_hints[QPlatformTheme::ToolButtonStyle] = toolButtonStyle(cgToolbar);

Ответить | Правка | Наверх | Cообщить модератору

50. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (25), 23-Апр-24, 10:35 
Зачем вообще показывать контекстное меню именно по отпусканию мыши? Там же все продумано: зажали правую кнопку мыши (ПКМ) и, не отпуская ПКМ, наводим мышь на пункт меню. Отпускаем ПКМ -- и вуаля, фактически одним кликом мыши и меню показали, и пункт меню активировали.
Ответить | Правка | Наверх | Cообщить модератору

51. "Использование BPF-программ для решения проблем в устройствах..."  +1 +/
Сообщение от n00by (ok), 23-Апр-24, 10:54 
> Зачем вообще показывать контекстное меню именно по отпусканию мыши?

Зачем такую возможность обеспечили авторы библиотеки Qt? Очевидно, они удовлетворяли запросы пользователей библиотеки. В KDE достаточно дать возможность пользователю поставить "галочку", но почему-то при наличии 100500 настроек это не реализовано.

> Там же все
> продумано: зажали правую кнопку мыши (ПКМ) и, не отпуская ПКМ, наводим
> мышь на пункт меню. Отпускаем ПКМ -- и вуаля, фактически одним
> кликом мыши и меню показали, и пункт меню активировали.

"Часто приходится иметь дело с обоими платформами и не могу назвать логику обработки клика по зажатому ПКМ - удобной. То курсор отведёшь до того как меню отрисует на старых железках, то ещё что. В итоге мисклик по пункту, который физически прочитать на успеваешь и хрен знает, что ты сейчас сделал."

https://opennet.ru/openforum/vsluhforumID3/127955.html#55

Ответить | Правка | Наверх | Cообщить модератору

52. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (25), 23-Апр-24, 11:14 
> курсор отведёшь до того как меню отрисует на старых железках

Такое железо надо отдавать в музей Поля Чудес. Ну или выработать в себе терпение: нажали ПКМ, отошли пить кофе, вернулись -- читаем меню.

> Фиксят это аля отодвинем менюшку на пару пикселей, глядишь не нажмётся случайно

Нормальный фикс, везде применяется.

Ответить | Правка | Наверх | Cообщить модератору

55. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (55), 23-Апр-24, 11:33 
А когда отошли пить кофе, кто будет продолжать нажимать ПКМ? Можно струбцину, конечно, приспособить :)
Ответить | Правка | Наверх | Cообщить модератору

63. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от n00by (ok), 23-Апр-24, 15:15 
>> курсор отведёшь до того как меню отрисует на старых железках
> Такое железо надо отдавать в музей Поля Чудес. Ну или выработать в
> себе терпение: нажали ПКМ, отошли пить кофе, вернулись -- читаем меню.

Я понимаю, что сборщикам операционных систем плевать на хотелки пользователей. Не потому что первые плохие, а поскольку дописать 3 строки - это слишком сложно. Гораздо проще придумать под это обстоятельство массу красивых объяснений.

Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

67. "Использование BPF-программ для решения проблем в устройствах..."  +1 +/
Сообщение от Аноним (25), 23-Апр-24, 16:46 
> дописать 3 строки - это слишком сложно

Это не одноразовые три строки. Это три строки, за которые берешь ответственность: перед всяким релизом нужно проверять, что они продолжают работать, это плюс один пункт в тест-план тестировщикам. Это нужно проверять также и после каждого обновления Qt. Это плюс один риск того, что слетят юнит-тесты (ах да, нужно написать плюс один юнит-тест). Это плюс одна фраза в GUI, которую надо перевести на сотню языков. Это плюс одна переменная, которая неясно, как себя поведет в каждом конкретном месте по всему DE, и применится ли она ко всему подряд: ожидай появления целого нового класса багрепортов на ровном месте.

Ответить | Правка | Наверх | Cообщить модератору

72. "Использование BPF-программ для решения проблем в устройствах..."  –1 +/
Сообщение от n00by (ok), 24-Апр-24, 10:09 
Да, "гораздо проще придумать под это обстоятельство массу красивых объяснений."

> Это нужно проверять также и после каждого обновления Qt.

Нет, не нужно. Учитесь программировать или хотя бы читать документацию Qt, что бы не писать такую чушь.

Ответить | Правка | Наверх | Cообщить модератору

53. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (55), 23-Апр-24, 11:31 
Может, KDE-разрабов об этом никто не просил ещё?
Ответить | Правка | К родителю #51 | Наверх | Cообщить модератору

64. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от n00by (ok), 23-Апр-24, 15:16 
> Может, KDE-разрабов об этом никто не просил ещё?

Лень идти по вышеприведённой ссылке и откапывать там ссылки на багтрекер.

Ответить | Правка | Наверх | Cообщить модератору

56. "Использование BPF-программ для решения проблем в устройствах..."  +/
Сообщение от Аноним (-), 23-Апр-24, 12:15 
>  И только в силу админ ресурсов нельзя поменять изменение языка на отпускание по дефолту.

Неа, дело не в админ ресурсе, а в том что эти чуваки хотят нарушить спецификацию.
it's an _explicit_ violation of the XKB specification (see section 4.4).
(bugzilla.freedesktop.org/show_bug.cgi?id=865)

И ради чего? Чтобы у пары гиков заработали шорткаты в емаксе?
Ну так пусть сами патчат. А в основные кода это не попадет примерно никогда.

Ответить | Правка | К родителю #43 | Наверх | Cообщить модератору

61. "Использование BPF-программ для решения проблем в устройствах..."  +1 +/
Сообщение от Аноним (59), 23-Апр-24, 14:17 
> Неа, дело не в админ ресурсе, а в том что эти чуваки хотят нарушить спецификацию.

Поэтому вполне закономерно, что продукт с такой спецификацией должен быть выведен из эксплуатации.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру