Aslında, bir tıklama yer imleri çubuğuna (Chrome penceresindeki konuma göre) yerleştirildiğini ve öyleyse genel bir tıklama yerine bir Ctrl-tıklama gönderdiğini algılayan AutoHotkey kullanarak bir çözüm üzerinde çalışıyorum. AHK kullanıyorsanız, bunu test etmekten çekinmeyin.
Bunu, tıklamayı durdurup, tıklamanın Chrome'da olup olmadığını belirleyerek ve tıklamanın yer imleri çubuğu olarak tanımladığım kutuda olup olmadığını belirleyerek yaptım. Bu koşulların tümü yerine getirilirse, yer imini yeni bir sekmede açacak olan bir tıklama yerine tıklamayı Ctrl-tıklat olarak gönderin.
Bu, yer imleri çubuğu için etkili bir şekilde çalışmalıdır, ancak elbette "Diğer yer imleri" klasörü altındaki diğer yer işareti tıklamalarını yoksayar. Bu bağlantılardan herhangi birini Ctrl tuşuna basıp tıklatmayı hatırlamamız gerekecek (veya fare tekerleğinizle ilgisizseniz orta tıklama). Ayrıca, yer işareti çubuğunuzun boyutu ve konumu, temalar ve diğer araç çubukları gibi birçok farklı şeye bağlı olarak farklılık gösterebilir, bu nedenle YMMV, kendi yer işareti çubuğunuzun konumunu bulmak için WindowSpy kullandığınızdan ve alt ve üst sınırları değiştirdiğinizden emin olun. X ve Y koordinatları.
Belki de geliştirebileceğim bir şey, "Diğer yer imleri" nin ne zaman tıklandığını tespit etmek ve ardından bir sonraki tıklamayı Ctrl-tıklama olarak göndermek , menü ağacında gezinmek ve ardından bağlantınızı bulup tıklattığınızda, bir Ctrl tuşa tıklayın.
#SingleInstance force
#Persistent
LButton::
{
If MouseIsOver("ahk_class Chrome_WidgetWin_1")
{
MouseGetPos, LocationX, LocationY
If LocationX between 6 and 965
{
If LocationY between 75 and 95
{
; If we are here, the mouse has been clicked in Chrome in the
; bookmarks bar. Send a Ctrl-click instead of a click.
Send, {Control down}
Click
Send, {Control up}
}
Else
Click
}
Else
Click
}
Else
Click
}
MouseIsOver(WinTitle) {
MouseGetPos,,, Win
return WinExist(WinTitle . " ahk_id " . Win)
}