Config Context Menu delay?

English support forum

Moderators: Hacker, petermad, Stefan2, white

Post Reply
User avatar
jesped
Member
Member
Posts: 161
Joined: 2005-02-07, 03:28 UTC

Config Context Menu delay?

Post by *jesped »

Is there any way to change the default delay of 1 sec to access the context menu when using NC rmb selection?
User avatar
petermad
Power Member
Power Member
Posts: 16101
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Post by *petermad »

No. It is an often discussed issue. The only way is to configure TC to use left mouse button in stead.

You can get rid of the little progress bar by using this in the [Configuration] section of wincmd.ini:
ContextProgress=0
License #524 (1994)
Danish Total Commander Translator
TC 11.55rc4 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1393a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Here's how I would do it with AHK (AutoHotKey)

Code: Select all

   #SingleInstance, Force 
    #Persistent 
    #NoEnv 
 SetBatchLines, -1 
 SetMouseDelay, -1 
 SendMode Input 

 #ifWinActive ahk_class TTOTAL_CMD 
    ~$RButton:: 
    { 
       MouseGetPos, xPos1, yPos1,, mControl1, 1 
       if(!inStr(mControl1, "TMyListBox")) 
          return 
       MouseMove, 5,0,0,R      ; Block contextMenu by moving mouse pointer 5 pixels right. 
       KeyWait, RButton 
       MouseGetPos, xPos2, yPos2,, mControl2, 1 
       if( mControl1<>mControl2 || abs(yPos2 - yPos1) > 2 ) 
          return 
       Send, ^{LButton}      ;; Make sure file is selected. 
       PostMessage, 0x433, 2500   ;; ContextMenu 
    return 
    } 
 return
Or something more along the lines of what I personally use:

Code: Select all

;;
;;	TC_RButton+Scroll.ahk
;;		Balderstrom, Oct.2010
;;
;;
;;	RButton, and WheelUp/Down functions for TotalCommander.
;;	A fully functional snippet from my overall AHK Mouse Overrides for TC in _Win2K_Mouse.ahk
;;
;;
;;	1) Automatically show the context menu when the RButton is released. 
;;	A) DO NOT show the context menu until the RButton has been released.
;;	B) DO NOT show the context menu if the mouse has moved. 
;;
;;	2) Scroll thru TABS when RButton + ScrollWheel is used:
;;	A) Mouse Cursor NEEDS to be inside the file panel.
;;	B) TAB Does NOT change until the RButton is released:
;;	-- Can still see the TAB that will be activated when RButton is released.
;;	-- Can still see the ToolTip for the TAB as if the mouse was hovering over it. 
;;
;;	3) When in-line Rename is used.
;;	A) ScrollUp   == ESC
;;	B) SCrollDown == Enter
;;
;;	4) Does not interfere with any normal scroll  usage. 
;;
;;	5) Does not interfere with any normal RBUtton usage.
;;	A) Can still select/unselect files with RButton Down and mouse movement.
;;
;;	
	#SingleInstance, Force 
	#Persistent
	#NoEnv
SetBatchLInes, -1
SendMode, Input


#ifWinActive, ahk_class TTOTAL_CMD
{
	$RButton::MouseTC_RButton(GetKeyState("RButton", "P"))
	WheelUp::
	WheelDown::MouseTC_Wheel()
return
}


MouseTC_RButton( state )
{
	global TCScrolledWheelRB

	if( !TC_TControlT( aControl, "", TRUE ) || GetKeyState("LButton") )
	{
		Send, % "{RButton Down}"
		KeyWait, RButton
		Send, % "{RButton Up}"
	return
	}

	selectedPrior:=LB_QuerySelected( cID, cPosP:="" )
	Send, {RButton Down}
	Sleep, 0
	selectedAfter:=LB_QuerySelected( cID, cPosA:="" )
	MouseMove, 5, 0,0, R	;; Block contextMenu by moving mouse pointer 5 pixels right.
	KeyWait, RButton
	Send, {RButton Up}

	if( TCscrolledWheelRB && !(TCscrolledWheelRB:=0))
	{
		if( selectedAfter <> selectedPrior )
			Send, {Ctrl Down}{Space}{Ctrl Up}	;; Deselect the file that got selected when we RightClicked and Scrolled TABS.
		Send, {Ctrl Up}	;; Release the CTRL key, that was Held Down while Scrolling Tabs.
	return
	}

	if( !TC_TControlT( aControl2, "", TRUE ) || aControl2 <> aControl )
		return
	if( (cPos:=LB_FindCursorPos( cID )) <> cPosA )
		return
	if( !selectedAfter )
		Send, {Ctrl Down}{Space}{Ctrl Up}
	PostMessage, 0x433, 2500	;; ContextMenu
return
}


MouseTC_Wheel()
{
	global TCScrolledWheelRB

	if( TC_TControlActive( aControl, "TInEdit1" ) )
		Send, % ( A_ThisHotKey == "WheelUp" ) ? "{ESC}" : "{Enter}"
	else
	if( GetKeyState("RButton", "P") && TC_TControlT( aControl, "", TRUE ) && TCScrolledWheelRB:=1 )
	{
		Send, % "{Ctrl Down}"
		SendMessage, 0x433, % ( A_ThisHotKey=="WheelUp" ? 3006 : 3005 ), 0,,A
	}
	else
		Send, % "{Blind}{" A_ThisHotKey "}"
return
}

#include %A_ScriptDir%\LB.ahk
Which does more; requires an external files (libraries), and is possibly more than most would want to deal with ;-)
LB.ahk, and AHK_MwM.ahk

Direct SkyDrive Folder, containing uploaded AHK Library files: TC / AutoHotkey / Lib
User avatar
jesped
Member
Member
Posts: 161
Joined: 2005-02-07, 03:28 UTC

Post by *jesped »

Eeeeer... is that code? I'm scared XD

It will be a great addition to next TC release.
Post Reply