private void createActions() {
		String subGroup = "d"; // Memory Search uses groups 'a', 'b', and 'c'

		//@formatter:off
		new ActionBuilder("Search Text", getName())
				.menuPath("&Search", "Program &Text...")
				.menuGroup("search", subGroup)
				.keyBinding("ctrl F")
				.description(DESCRIPTION)
				.helpLocation(new HelpLocation(HelpTopics.SEARCH, "Search Text"))
				.withContext(NavigatableActionContext.class, true)
				.validContextWhen(c -> !(c instanceof RestrictedAddressSetContext))
				.inWindow(ActionBuilder.When.CONTEXT_MATCHES)
				.onAction(c -> {
					setNavigatable(c.getNavigatable());
					displayDialog(c);
				})
				.buildAndInstall(tool);

		new ActionBuilder("Repeat Text Search", getName())
				.menuPath("&Search", "Repeat Text Search")
				.menuGroup("search", subGroup)
				.description(DESCRIPTION)
				.helpLocation(new HelpLocation(HelpTopics.SEARCH, "Repeat Text Search"))
				.withContext(NavigatableActionContext.class, true)
				.inWindow(ActionBuilder.When.CONTEXT_MATCHES)
				.enabledWhen(c -> searchedOnce)
				.onAction(c -> {
					setNavigatable(c.getNavigatable());
					searchDialog.repeatSearch();
				})
				.buildAndInstall(tool);
		//@formatter:on
	}
Create the action for to pop up the search dialog.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/searchtext/SearchTextPlugin.java