diff --git a/.gopmfile b/.gopmfile
index 7625c9470e..35a33b9da6 100644
--- a/.gopmfile
+++ b/.gopmfile
@@ -26,7 +26,6 @@ github.com/lib/pq = commit:83c4f41
 github.com/mattn/go-sqlite3 = commit:5651a9d
 github.com/mcuadros/go-version = commit:d52711f
 github.com/microcosm-cc/bluemonday = commit:4ac6f27
-github.com/mssola/user_agent = commit:783ec61
 github.com/msteinert/pam = commit:6534f23b39
 github.com/nfnt/resize = commit:dc93e1b98c
 github.com/russross/blackfriday = commit:510be64
diff --git a/modules/middleware/repo.go b/modules/middleware/repo.go
index 1154907a1d..1418486430 100644
--- a/modules/middleware/repo.go
+++ b/modules/middleware/repo.go
@@ -10,8 +10,6 @@ import (
 	"path"
 	"strings"
 
-	"github.com/mcuadros/go-version"
-	"github.com/mssola/user_agent"
 	"gopkg.in/macaron.v1"
 
 	"github.com/gogits/gogs/models"
@@ -20,11 +18,6 @@ import (
 	"github.com/gogits/gogs/modules/setting"
 )
 
-const (
-	FIREFOX_COPY_SUPPORT = "41.0"
-	CHROME_COPY_SUPPORT  = "43.0.2356"
-)
-
 func ApiRepoAssignment() macaron.Handler {
 	return func(ctx *Context) {
 		userName := ctx.Params(":username")
@@ -393,13 +386,6 @@ func RepoAssignment(redirect bool, args ...bool) macaron.Handler {
 			ctx.Data["GoDocDirectory"] = prefix + "{/dir}"
 			ctx.Data["GoDocFile"] = prefix + "{/dir}/{file}#L{line}"
 		}
-
-		userAgent := ctx.Req.Header.Get("User-Agent")
-		ua := user_agent.New(userAgent)
-		browserName, browserVer := ua.Browser()
-
-		ctx.Data["BrowserSupportsCopy"] = (browserName == "Chrome" && version.Compare(browserVer, CHROME_COPY_SUPPORT, ">=")) ||
-			(browserName == "Firefox" && version.Compare(browserVer, FIREFOX_COPY_SUPPORT, ">="))
 	}
 }
 
diff --git a/public/js/ZeroClipboard.swf b/public/js/ZeroClipboard.swf
deleted file mode 100644
index 13bf8e3962..0000000000
Binary files a/public/js/ZeroClipboard.swf and /dev/null differ