public void copyMember(@Nonnull Workspace workspace,
	                       @Nonnull WorkspaceResource resource,
	                       @Nonnull JvmClassBundle bundle,
	                       @Nonnull JvmClassInfo declaringClass,
	                       @Nonnull ClassMember member) {
		String originalName = member.getName();
		Consumer<String> copyTask = newName -> {
			ClassReader reader = declaringClass.getClassReader();
			ClassWriter writer = new ClassWriter(reader, 0);
			MemberCopyingVisitor copier = new MemberCopyingVisitor(writer, member, newName);
			reader.accept(copier, 0);
			bundle.put(new JvmClassInfoBuilder(writer.toByteArray()).build());
		};
		NamePopup popup = new NamePopup(copyTask).withInitialName(originalName);
		if (member.isField())
			popup.forFieldCopy(declaringClass, member);
		else if (member.isMethod())
			popup.forMethodCopy(declaringClass, member);
		popup.show();
	}
Prompts the user to give a new name for the copied member.

@param workspace
		Containing workspace.
@param resource
		Containing resource.
@param bundle
		Containing bundle.
@param declaringClass
		Containing class.
@param member
		member to copy.
recaf-ui/src/main/java/software/coley/recaf/services/navigation/Actions.java