diff --git a/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java b/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java index 18d89d60..4d832551 100644 --- a/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java +++ b/client/src/main/java/ctbrec/ui/menu/ModelMenuContributor.java @@ -108,8 +108,13 @@ public class ModelMenuContributor { addOpenRecDir(menu, selectedModels); addNotes(menu, selectedModels); addPortrait(menu, selectedModels); - addOpenOnCamGirlFinder(menu, selectedModels); - addOpenOnNrToolFinder(menu, selectedModels); + menu.getItems().add(new SeparatorMenuItem()); + + addOpenOnCamGirlFinder(menu, selectedModels); // https://camgirlfinder.net/models?m=everlenn + addOpenOnCamWhores(menu, selectedModels); // https://www.camwhores.tv/search/everlenn/ + addOpenOnMyCamGirl(menu, selectedModels); // https://mycamgirl.net/search?query=everlenn + addOpenOnNrToolFinder(menu, selectedModels); // https://nrtool.to/nrtool/search?s=everlenn + addOpenOnRecu(menu, selectedModels); // https://recu.me/performer/everlenn } public ModelMenuContributor afterwards(Runnable callback) { @@ -168,6 +173,28 @@ public class ModelMenuContributor { menu.getItems().add(openOnCamGirlFinder); } + private void addOpenOnCamWhores(ContextMenu menu, List selectedModels) { + var openOnCamWhores = new MenuItem("Search on CamWhores"); + openOnCamWhores.setOnAction(e -> { + for (Model model : selectedModels) { + String query = URLEncoder.encode(model.getName(), UTF_8); + DesktopIntegration.open("https://www.camwhores.tv/search/" + query); + } + }); + menu.getItems().add(openOnCamWhores); + } + + private void addOpenOnMyCamGirl(ContextMenu menu, List selectedModels) { + var openOnMyCamGirl = new MenuItem("Search on MyCamGirl"); + openOnMyCamGirl.setOnAction(e -> { + for (Model model : selectedModels) { + String query = URLEncoder.encode(model.getName(), UTF_8); + DesktopIntegration.open("https://mycamgirl.net/search?query=" + query); + } + }); + menu.getItems().add(openOnMyCamGirl); + } + @SuppressWarnings("unused") // Remove when NR Tool accepts image URL and below is updated private void addOpenOnNrToolFinder(ContextMenu menu, List selectedModels) { var openOnNrToolFinder = new MenuItem("Search on NRTool"); @@ -189,6 +216,17 @@ public class ModelMenuContributor { menu.getItems().add(openOnNrToolFinder); } + private void addOpenOnRecu(ContextMenu menu, List selectedModels) { + var openOnRecu = new MenuItem("Search on Recu"); + openOnRecu.setOnAction(e -> { + for (Model model : selectedModels) { + String query = URLEncoder.encode(model.getName(), UTF_8); + DesktopIntegration.open("https://recu.me/performer/" + query); + } + }); + menu.getItems().add(openOnRecu); + } + private void addCopyUrl(ContextMenu menu, List selectedModels) { if (selectedModels == null || selectedModels.isEmpty()) { return;