Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; Mouse Wheel Tab Scroll - Brave
- ; -------------------------------
- ; Fait défiler les onglets Brave avec la molette de la souris lorsque vous survolez la barre d'onglets.
- ;Avant d'executer le script, le placer dans un répertoire ou il ne bougera pas. En effet, il sera executé a chaque démarrage de windows.
- ;On lance le script en mode admin (utile si brave est en admin)
- if not A_IsAdmin
- Run *RunAs "%A_ScriptFullPath%"
- ;Optionnel : on écrit dans la base de registre pour lancer l'exe a chaque démarrage de windows (penser à désactiver l'UAC de windows)
- scriptFullPath = %A_ScriptFullPath%
- SplitPath, scriptFullPath,,, ext
- if (ext = "exe")
- {
- ;On écrit dans la base de registre pour lancer l'exe a chaque démarrage de windows
- RegWrite, REG_SZ,HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run, tabScrollBrave_AHK, %A_ScriptFullPath%
- }
- #NoEnv ; Recommandé pour les performances et la compatibilité avec les futures versions d'AutoHotkey.
- #SingleInstance, force
- #Warn ; Activer les avertissements pour aider à détecter les erreurs courantes.
- #SingleInstance force ; Détermine si un script est autorisé à s'exécuter à nouveau alors qu'il est déjà en cours d'exécution.
- #UseHook Off ; Pas besoin du hook pour le clavier ici
- #InstallMouseHook ; Hook pour la souris
- #MaxHotkeysPerInterval 99999999999 ; Évite les messages d'avertissement si wheel a haute vitesse
- #IfTimeout 500 ; Permet de laisser respirer les "If" contextuels (avec "#") et evite des crashs si scroll trop rapide
- ;#NoTrayIcon ;On n'affiche pas l'icone dans la barre des tâches
- SendMode Input ; Recommandé pour les nouveaux scripts en raison de sa rapidité et de sa fiabilité supérieure
- ;Titre du script
- Menu, Tray, Tip, Mousewheel tab scroll for Brave
- ;Pour voir les icons https://www.nirsoft.net/utils/iconsext.html
- ; Chemins disponibles (icones pas a jour sur el site) https://diymediahome.org/windows-icons-reference-list-with-details-locations-images/
- iconPath := "C:\Windows\system32\ieframe.dll"
- iconIndex := 74
- Menu, Tray, Icon, %iconPath%, %iconIndex%
- ;msgbox Both buttons! ;Message pour debug
- ;Si la souris survol une instance de Brave (le "#" permet de s'assurer que les hotkeys seront bien initialisée uniquement dans ce contexte).
- #If MouseIsOver("ahk_class Chrome_WidgetWin_1")
- {
- ;https://autohotkey.com/board/topic/80118-issue-with-rbutton/
- ;Astuce pour empecher le menu contextuel de s'afficher lors du clique D + scroll
- ;Sa mise en place implique d'utiliser "RButton & WheelUp::" et non "~RButton & WheelUp::"
- $RButton::
- Sleep, 100
- Send {RButton}
- Return
- ;On liste ici les touches appuyées que l'on va traiter
- WheelUp::
- WheelDown::
- ~LButton & MButton:: ; "~" => Clique M préssé pendant que l'on maintient le clique G
- RButton & MButton::
- RButton & WheelUp::
- RButton & WheelDown::
- MouseGetPos,, ypos, id
- ;On force le focus sur brave au passage de la souris
- IfWinNotActive ahk_id %id%
- WinActivate ahk_id %id%
- ; Si la souris est dans la zone de la barre d'onglet (<45px )
- ; On fait défiler les onglets au mousewheel
- If (ypos < 45)
- {
- If A_ThisHotkey = WheelUp
- Send ^{PgUp} ; Raccourcis CTRL+pageUp
- If A_ThisHotkey = WheelDown
- Send ^{PgDn} ; Raccourcis CTRL+pageDown
- }
- ;Onglet suivant/précédent si clique D + mousewheel :
- Else If A_ThisHotkey = RButton & WheelUp
- Send ^{PgUp} ;CTRL + PgUp envoyé
- Else If A_ThisHotkey = RButton & WheelDown
- Send ^{PgDn} ;CTRL + PgDn envoyé
- ;Nouvel onglet si clique D + clique M
- Else If A_ThisHotkey = RButton & MButton
- Send ^{t} ;Si clique D+Clique M => CTRL + T
- ;Activation extension LinkClump si clique G + clique M
- Else If A_ThisHotkey = ~LButton & MButton
- {
- SendInput {Ctrl down}{LButton down} ;CTRL + clique G envoyé
- Keywait, LButton ;Si clique G Up
- SendInput {LButton up}{Ctrl up} ;On "dé-clique" tout
- }
- ;Sinon on fait passer les events tel quel
- Else If A_ThisHotkey = WheelUp
- Send {WheelUp}
- Else If A_ThisHotkey = WheelDown
- Send {WheelDown}
- Else If A_ThisHotkey = RButton
- Send {RButton}
- Return
- }
- ;Fonction pour récuperer le nom du processus sous focus
- MouseIsOver(WinTitle)
- {
- MouseGetPos,,, Win
- return WinExist(WinTitle . " ahk_id " . Win)
- }
Add Comment
Please, Sign In to add comment