private void installSharedKeyBinding(ComponentProvider provider, DockingActionIf action) {

		String name = action.getName();

		// get or create the stub to which we will add the action
		SharedStubKeyBindingAction stub = sharedActionMap.computeIfAbsent(name, key -> {

			ActionTrigger actionTrigger = getActionTrigger(action);
			SharedStubKeyBindingAction newStub =
				new SharedStubKeyBindingAction(name, actionTrigger, options);
			registerStub(newStub, actionTrigger);
			return newStub;
		});

		String owner = action.getOwner();
		stub.addActionOwner(owner);
		stub.addClientAction(action);

		if (!(action instanceof AutoGeneratedDockingAction)) {
			// Auto-generated actions are temporary and should not receive key events
			keyBindingsManager.addAction(provider, action);
		}
	}
Add an action that works specifically with a component provider.
@param provider provider associated with the action
@param action local action to the provider
Ghidra/Framework/Docking/src/main/java/docking/actions/ToolActions.java