From 279e2d390d017ffe2e2c7d990cf646f69f4487c3 Mon Sep 17 00:00:00 2001
From: mollusk <silvernode@gmail.com>
Date: Wed, 3 Jan 2018 02:19:47 -0700
Subject: [PATCH] flatface.go: removed leading and trailing spaces from input

---
 flatface.go | 50 ++++++++++++++++++++++++++++----------------------
 1 file changed, 28 insertions(+), 22 deletions(-)

diff --git a/flatface.go b/flatface.go
index 21131e8..21fb61d 100644
--- a/flatface.go
+++ b/flatface.go
@@ -6,6 +6,7 @@ import (
 	"log"
 	"os"
 	"os/exec"
+	"strings"
 )
 
 func input(s string) (string, error) {
@@ -29,17 +30,19 @@ func searchRepo() {
 
 	var programName, _ = input(">> ")
 
-	if programName == "m" {
+	trimInput := strings.TrimSpace(programName)
+
+	if trimInput == "m" {
 		return
-	} else if programName == "q" {
+	} else if trimInput == "q" {
 		os.Exit(0)
 	} else {
-		cmd := exec.Command("flatpak", "search", programName)
+		cmd := exec.Command("flatpak", "search", trimInput)
 		out, err := cmd.CombinedOutput()
 		if err != nil {
 			searchRepo()
 		}
-		fmt.Print("\n", "Results for ", programName, ": \n\n", string(out), "\n")
+		fmt.Print("\n", "Results for ", trimInput, ": \n\n", string(out), "\n")
 		searchRepo()
 	}
 }
@@ -53,19 +56,18 @@ func installPak() {
 	print("NOTE: install can take several seconds and appear to hang. Please be patient...\n\n")
 	var programName, _ = input(">> ")
 
-	if programName == "m" {
+	trimInput := strings.TrimSpace(programName)
+
+	if trimInput == "m" {
 		return
-	} else if programName == "q" {
+
+	} else if trimInput == "q" {
 		os.Exit(0)
-	} else if programName == "" {
-		print("Please enter valid input\n")
-		installPak()
-	} else if programName == " " {
-		print("Please enter valid input")
-		installPak()
+
 	} else {
-		cmd := exec.Command("flatpak", "install", "-y", "flathub", programName)
+		cmd := exec.Command("flatpak", "install", "-y", "flathub", trimInput)
 		out, err := cmd.CombinedOutput()
+
 		if err != nil {
 			installPak()
 		}
@@ -92,12 +94,14 @@ func removePak() {
 	print("Type: 'q' to quit the application\n\n")
 	var programName, _ = input(">> ")
 
-	if programName == "m" {
+	trimInput := strings.TrimSpace(programName)
+
+	if trimInput == "m" {
 		return
-	} else if programName == "q" {
+	} else if trimInput == "q" {
 		os.Exit(0)
 	} else {
-		cmd := exec.Command("flatpak", "uninstall", programName)
+		cmd := exec.Command("flatpak", "uninstall", trimInput)
 		out, err := cmd.CombinedOutput()
 		if err != nil {
 			removePak()
@@ -163,18 +167,20 @@ func mainMenu() {
 
 	choice, _ = input(">> ")
 
-	if choice == "s" {
+	trimInput := strings.TrimSpace(choice)
+
+	if trimInput == "s" {
 		searchRepo()
 
-	} else if choice == "i" {
+	} else if trimInput == "i" {
 		installPak()
-	} else if choice == "r" {
+	} else if trimInput == "r" {
 		removePak()
-	} else if choice == "l" {
+	} else if trimInput == "l" {
 		listPak()
-	} else if choice == "u" {
+	} else if trimInput == "u" {
 		updatePak()
-	} else if choice == "q" {
+	} else if trimInput == "q" {
 		os.Exit(0)
 	} else {
 		print("Unknown option")