Salut à toi, ô forum omniscient !
J'ai à ma disposition un trackball logitech qui comporte quelques boutons, et y'a un truc que j'aimais bien, oui, vraiment bien, quand j'étais jeune, bête, et sous windows : l'un des boutons me transformait le curseur de la souris en un espèce de gros gyroscope qui me permettait de faire défiler le document actif avec la boule du trackball, dans toutes les directions. Cette option, je l'aimais tellement qu'elle me manque, et que j'envisage presque de repartir sous windows....
Saurais-tu, ô toi l'omnipotent, si il existe un projet, aussi quelconque soit-il qui me permettrait de retrouver ce comportement ? C'était aussi pratique avec les souris optique comporant 5 ou six boutons...
De quel côté faut-il chercher ? Est-ce géré par Xorg (ou XFree pour les autres), par le WM, par le DM (à ce propos, je suis sous XOrg et sous KDE)....
Par avance merci pour vos pistes...
P.S. : si quelqu'un sais aussi pourquoi cette fonctionnalité est déroutée par mozilla, je suis preneur.... En particulier, sous windows, un document peut être défilé en utilisant ce bouton+déplacement de la souris, sauf les pages web visitées à l'aide de mozilla....
# [Témoin positif]
Posté par Sisyphe Plâtrier . Évalué à -1.
[^] # Re: [Témoin positif]
Posté par Pinaraf . Évalué à -1.
Edition > Préférences => Avancé : cocher Utiliser le défilement automatique
Et ça marche !
(remarque : c'est pareil pour firefox 0.9 et 0.8)
Par contre, sous win 2k, c'était la seule appli avec IE à me faire ça !
[^] # Re: [Témoin positif]
Posté par Calim' Héros (site web personnel) . Évalué à 3.
[^] # Re: [Témoin positif]
Posté par Pinaraf . Évalué à 2.
Par contre pour sous KDE + Xorg j'ai pas de soluce !
À mon avis, personne n'a codé ça, et le pb c'est que ça risque de demander un patch de Qt (j'ai pas vu de slot pour réagir à un clic du milieu de la souris dans QListView ou QListBox par exemple)
Et Xorg ne peut pas s'en charger directement car il y aura fort probablement du code dépendant d'un toolkit
[^] # Re: [Témoin positif]
Posté par Gyro Gearllose . Évalué à 1.
C'est vrai que de savoir que ça fonctionne dans firefox.... bref.
Par contre, est-ce qu'il pourrait-être envisagé de coder un truc un peu dans ce style :
- Depuis X-org, modifier un fichier de conf pour que l'appui sur le bouton n° 4 du mulot soit envoyé à une appli KDE particulière, par exemple en utilisant dcop.
- Cette appli gère deux modes à bascule :
Mode scroll : affiche un gros paté pour indiquer qu'on est en mode scroll
Mode non-scroll : restaure le contexte dans l'état où il était avant
De là, il suffit (enfin, c'est toujours facile à dire...) que ce prog demande le scroll du document (y'a sûrement des méthodes accessibles, non ?) qui est situé sous le gros paté en question...
J'ai bon ? Dans ce cas, pas besoin de patcher quoi que ce soit. Xorg n'est que très peu impliqué... Peut-être même pas du tout si on peut récupérer l'information par ailleurs (intercepter le click sur un bouton en particulier)...
Bon, dans la théorie, je pense que c'est réalisable, mais y'a peut-être plus performant, moins bourrin... Avis aux pros du C/C++ (ce qui n'est pas mon cas, loin s'en faut !)....
[^] # Re: [Témoin positif]
Posté par Pinaraf . Évalué à 1.
C'est possible de le coder, mais c'est pas terrible. Il est bien mieux de coder quelque chose passant par DBUS (sera utilisé dans KDE 4, utilisé dans GNOME) qui permette à n'importe quel appli de s'y connecter, et pas une appli particulière
- Cette appli gère deux modes à bascule :
Pfiou ça risque AMHA de compliquer la chose parce que faire scroller le document en dessous dépend du toolkit (Qt, Gtk, Motif...), et y'a pas à ma connaissance de méthode simple pour faire scroller quelque chose sous la souris par une autre appli (pour le faire, il faudrait toucher à X peut être, j'en sais pas trop là)
[^] # Re: [Témoin positif]
Posté par Gyro Gearllose . Évalué à 1.
En utilisant QMouseEvent, on peut tout piloter : l'appui sur le bouton, et en comparant les valeurs de globalX et globalY entre deux mouvement de mulot, en déduire la valeur du scroll à appliquer dans les deux directons.
En utilisant les pointeurs sur les différentes applications instanciées par KDE, il est possible de repérer celle qui a le focus, et de lui demander gentiement un scroll dont les valeurs (dx et dy) ont été déterminées préalablement.
Maintenant, reste à voir où il faut intégrer ça... Si c'est une appli indépendante, c'est voué à réagir uniquement avec les applis QT/KDE....
Sinon, si c'est dans une appli de plus bas niveau (j'entend par là un des binaires qui fait tourner kde), alors, oui, c'est probablement plus réaliste.
L'idéal serait même d'avoir ça au niveau de Xorg, mais je le répète, je suis loin d'être capable de réaliser ça.
Sinon, je suis allé là : http://doc.trolltech.com/3.3/qmouseevent.html(...) et là : http://doc.trolltech.com/3.3/qwidget.html#scroll(...) pour avoir ces informations.
Merci pour ces pistes. Je vais voir si je peux en faire quelque chose (mais à quel prix ?), sinon, j'enverrais une un truc aux deux équipes, sous forme de souhait d'intégration....
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.