From e1a6f593e1824e7fa4345a61dff5b1bb8cd22d05 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Tue, 23 Mar 2021 13:13:46 +0000
Subject: [PATCH 01/14] fix: error causes panic on upload

---
 http/resource.go | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/http/resource.go b/http/resource.go
index 2547a2ed..cd103778 100644
--- a/http/resource.go
+++ b/http/resource.go
@@ -125,7 +125,10 @@ func resourcePostHandler(fileCache FileCache) handleFunc {
 		}
 
 		err = d.RunHook(func() error {
-			info, _ := writeFile(d.user.Fs, r.URL.Path, r.Body)
+			info, writeErr := writeFile(d.user.Fs, r.URL.Path, r.Body)
+			if writeErr != nil {
+				return writeErr
+			}
 
 			etag := fmt.Sprintf(`"%x%x"`, info.ModTime().UnixNano(), info.Size())
 			w.Header().Set("ETag", etag)
@@ -155,7 +158,10 @@ var resourcePutHandler = withUser(func(w http.ResponseWriter, r *http.Request, d
 	}
 
 	err := d.RunHook(func() error {
-		info, _ := writeFile(d.user.Fs, r.URL.Path, r.Body)
+		info, writeErr := writeFile(d.user.Fs, r.URL.Path, r.Body)
+		if writeErr != nil {
+			return writeErr
+		}
 
 		etag := fmt.Sprintf(`"%x%x"`, info.ModTime().UnixNano(), info.Size())
 		w.Header().Set("ETag", etag)

From e9baf0c4b688fab291cdc842ec464c7a7a816499 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Tue, 23 Mar 2021 18:18:02 +0000
Subject: [PATCH 02/14] fix: empty text file on editor

---
 files/file.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/files/file.go b/files/file.go
index c1451878..3892d991 100644
--- a/files/file.go
+++ b/files/file.go
@@ -170,7 +170,7 @@ func (i *FileInfo) detectType(modify, saveContent, readHeader bool) error {
 	case strings.HasPrefix(mimetype, "image"):
 		i.Type = "image"
 		return nil
-	case (strings.HasPrefix(mimetype, "text") || (len(buffer) > 0 && !isBinary(buffer))) && i.Size <= 10*1024*1024: // 10 MB
+	case (strings.HasPrefix(mimetype, "text") || !isBinary(buffer)) && i.Size <= 10*1024*1024: // 10 MB
 		i.Type = "text"
 
 		if !modify {

From b521dec8f9b14dd92248c429e902ebc639046389 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Wed, 24 Mar 2021 12:23:05 +0000
Subject: [PATCH 03/14] fix: hidden editor header on Safari

---
 frontend/src/css/styles.css  | 4 ++--
 frontend/src/views/Files.vue | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/frontend/src/css/styles.css b/frontend/src/css/styles.css
index 80138364..e32856e3 100644
--- a/frontend/src/css/styles.css
+++ b/frontend/src/css/styles.css
@@ -109,6 +109,7 @@
 
 #previewer {
   background-color: rgba(0, 0, 0, 0.9);
+  padding-top: 4em;
   position: fixed;
   top: 0;
   left: 0;
@@ -142,7 +143,6 @@
 }
 
 #previewer .preview {
-  margin-top: 4em;
   text-align: center;
   height: calc(100vh - 4em);
 }
@@ -209,7 +209,7 @@
 #editor-container {
   background-color: #fafafa;
   position: fixed;
-  margin-top: 4em;
+  padding-top: 4em;
   top: 0;
   left: 0;
   width: 100%;
diff --git a/frontend/src/views/Files.vue b/frontend/src/views/Files.vue
index c49a1c5c..eba7acab 100644
--- a/frontend/src/views/Files.vue
+++ b/frontend/src/views/Files.vue
@@ -1,6 +1,6 @@
 <template>
   <div>
-    <header-bar v-if="error || !req.type" showMenu showLogo />
+    <header-bar v-if="error || req.type == null" showMenu showLogo />
 
     <breadcrumbs base="/files" />
 

From 6c8ee96e6a21fae5d4608bdc7a5c5a161d7dafd3 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Wed, 24 Mar 2021 17:50:16 +0000
Subject: [PATCH 04/14] feat: dynamic item count on file listing

---
 frontend/src/views/files/Listing.vue | 95 ++++++++++++++++++++++++----
 1 file changed, 83 insertions(+), 12 deletions(-)

diff --git a/frontend/src/views/files/Listing.vue b/frontend/src/views/files/Listing.vue
index 32bd49d7..32fdf0b9 100644
--- a/frontend/src/views/files/Listing.vue
+++ b/frontend/src/views/files/Listing.vue
@@ -135,7 +135,7 @@
           multiple
         />
       </div>
-      <div v-else id="listing" :class="user.viewMode">
+      <div v-else id="listing" ref="listing" :class="user.viewMode">
         <div>
           <div class="item header">
             <div></div>
@@ -253,6 +253,7 @@ import { users, files as api } from "@/api";
 import { enableExec } from "@/utils/constants";
 import * as upload from "@/utils/upload";
 import css from "@/utils/css";
+import throttle from "lodash.throttle";
 
 import HeaderBar from "@/components/header/HeaderBar";
 import Action from "@/components/header/Action";
@@ -350,13 +351,27 @@ export default {
       return this.width <= 736;
     },
   },
+  watch: {
+    req: function () {
+      // Reset the show value
+      this.showLimit = 50;
+
+      // Fill and fit the window with listing items
+      this.fillWindow(true);
+    },
+  },
   mounted: function () {
     // Check the columns size for the first time.
-    this.resizeEvent();
+    this.colunmsResize();
+
+    // How much every listing item affects the window height
+    this.setItemWeight();
+
+    // Fill and fit the window with listing items
+    this.fillWindow(true);
 
     // Add the needed event listeners to the window and document.
     window.addEventListener("keydown", this.keyEvent);
-    window.addEventListener("resize", this.resizeEvent);
     window.addEventListener("scroll", this.scrollEvent);
     window.addEventListener("resize", this.windowsResize);
     document.addEventListener("dragover", this.preventDefault);
@@ -367,7 +382,6 @@ export default {
   beforeDestroy() {
     // Remove event listeners before destroying this page.
     window.removeEventListener("keydown", this.keyEvent);
-    window.removeEventListener("resize", this.resizeEvent);
     window.removeEventListener("scroll", this.scrollEvent);
     window.removeEventListener("resize", this.windowsResize);
     document.removeEventListener("dragover", this.preventDefault);
@@ -543,7 +557,7 @@ export default {
 
       action(overwrite, rename);
     },
-    resizeEvent() {
+    colunmsResize() {
       // Update the columns size based on the window width.
       let columns = Math.floor(
         document.querySelector("main").offsetWidth / 300
@@ -552,11 +566,27 @@ export default {
       if (columns === 0) columns = 1;
       items.style.width = `calc(${100 / columns}% - 1em)`;
     },
-    scrollEvent() {
-      if (window.innerHeight + window.scrollY >= document.body.offsetHeight) {
-        this.showLimit += 50;
+    scrollEvent: throttle(function () {
+      const totalItems = this.req.numDirs + this.req.numFiles;
+
+      // All items are displayed
+      if (this.showLimit >= totalItems) return;
+
+      const currentPos = window.innerHeight + window.scrollY;
+
+      // Trigger at the 75% of the window height
+      const triggerPos = document.body.offsetHeight - window.innerHeight * 0.25;
+
+      if (currentPos > triggerPos) {
+        // Quantity of items needed to fill 2x of the window height
+        const showQuantity = Math.ceil(
+          (window.innerHeight * 2) / this.itemWeight
+        );
+
+        // Increase the number of displayed items
+        this.showLimit += showQuantity;
       }
-    },
+    }, 100),
     dragEnter() {
       this.dragCounter++;
 
@@ -707,9 +737,19 @@ export default {
       this.$store.commit("multiple", !this.multiple);
       this.$store.commit("closeHovers");
     },
-    windowsResize() {
+    windowsResize: throttle(function () {
+      this.colunmsResize();
       this.width = window.innerWidth;
-    },
+
+      // Listing element is not displayed
+      if (this.$refs.listing == null) return;
+
+      // How much every listing item affects the window height
+      this.setItemWeight();
+
+      // Fill but not fit the window
+      this.fillWindow();
+    }, 100),
     download() {
       if (this.selectedCount === 1 && !this.req.items[this.selected[0]].isDir) {
         api.download(null, this.req.items[this.selected[0]].url);
@@ -745,7 +785,12 @@ export default {
 
       try {
         await users.update(data, ["viewMode"]);
-        this.$store.commit("updateUser", data);
+
+        // Await ensures correct value for setItemWeight()
+        await this.$store.commit("updateUser", data);
+
+        this.setItemWeight();
+        this.fillWindow();
       } catch (e) {
         this.$showError(e);
       }
@@ -757,6 +802,32 @@ export default {
         document.getElementById("upload-input").click();
       }
     },
+    setItemWeight() {
+      let itemQuantity = this.req.numDirs + this.req.numFiles;
+      if (itemQuantity > this.showLimit) itemQuantity = this.showLimit;
+
+      // How much every listing item affects the window height
+      this.itemWeight = this.$refs.listing.offsetHeight / itemQuantity;
+    },
+    fillWindow(fit = false) {
+      const totalItems = this.req.numDirs + this.req.numFiles;
+
+      // More items are displayed than the total
+      if (this.showLimit >= totalItems && !fit) return;
+
+      const windowHeight = window.innerHeight;
+
+      // Quantity of items needed to fill 2x of the window height
+      const showQuantity = Math.ceil(
+        (windowHeight + windowHeight * 2) / this.itemWeight
+      );
+
+      // Less items to display than current
+      if (this.showLimit > showQuantity && !fit) return;
+
+      // Set the number of displayed items
+      this.showLimit = showQuantity > totalItems ? totalItems : showQuantity;
+    },
   },
 };
 </script>

From fe80730bb135b38e4d9de470c75cbe10b1aec201 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Wed, 24 Mar 2021 19:05:15 +0000
Subject: [PATCH 05/14] fix: no header button animations on file listing

---
 frontend/src/views/files/Listing.vue | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/frontend/src/views/files/Listing.vue b/frontend/src/views/files/Listing.vue
index 32fdf0b9..ce7655f0 100644
--- a/frontend/src/views/files/Listing.vue
+++ b/frontend/src/views/files/Listing.vue
@@ -25,18 +25,21 @@
           />
           <action
             v-if="headerButtons.copy"
+            id="copy-button"
             icon="content_copy"
             :label="$t('buttons.copyFile')"
             show="copy"
           />
           <action
             v-if="headerButtons.move"
+            id="move-button"
             icon="forward"
             :label="$t('buttons.moveFile')"
             show="move"
           />
           <action
             v-if="headerButtons.delete"
+            id="delete-button"
             icon="delete"
             :label="$t('buttons.delete')"
             show="delete"
@@ -62,6 +65,7 @@
         />
         <action
           icon="file_upload"
+          id="upload-button"
           :label="$t('buttons.upload')"
           @action="upload"
         />

From 98d79b8ed955df5691a306d709b4ab60d91da408 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Wed, 24 Mar 2021 19:06:56 +0000
Subject: [PATCH 06/14] fix: missing bold variation for Roboto font

---
 .../fonts/roboto/bold-cyrillic-ext.woff2      | Bin 0 -> 17176 bytes
 .../assets/fonts/roboto/bold-cyrillic.woff2   | Bin 0 -> 11676 bytes
 .../assets/fonts/roboto/bold-greek-ext.woff2  | Bin 0 -> 3384 bytes
 .../src/assets/fonts/roboto/bold-greek.woff2  | Bin 0 -> 9488 bytes
 .../assets/fonts/roboto/bold-latin-ext.woff2  | Bin 0 -> 15140 bytes
 .../src/assets/fonts/roboto/bold-latin.woff2  | Bin 0 -> 18124 bytes
 .../assets/fonts/roboto/bold-vietnamese.woff2 | Bin 0 -> 7200 bytes
 frontend/src/css/fonts.css                    |  56 ++++++++++++++++++
 8 files changed, 56 insertions(+)
 create mode 100755 frontend/src/assets/fonts/roboto/bold-cyrillic-ext.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-cyrillic.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-greek-ext.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-greek.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-latin-ext.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-latin.woff2
 create mode 100755 frontend/src/assets/fonts/roboto/bold-vietnamese.woff2

diff --git a/frontend/src/assets/fonts/roboto/bold-cyrillic-ext.woff2 b/frontend/src/assets/fonts/roboto/bold-cyrillic-ext.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..0a67a9427e1e3250b55eb92552d81e7c6eb48aaa
GIT binary patch
literal 17176
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%0DD)azI0a
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

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-cyrillic.woff2 b/frontend/src/assets/fonts/roboto/bold-cyrillic.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..714bb43114adfbef08a4e9f4638e4ba92c9732cb
GIT binary patch
literal 11676
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

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-greek-ext.woff2 b/frontend/src/assets/fonts/roboto/bold-greek-ext.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..6dffd0673c8b46e448ef9eaa03ab69294d9c4f94
GIT binary patch
literal 3384
zcmV-84af3#Pew8T0RR9101Y?*5dZ)H02mMe01Vs!0|5pA00000000000000000000
z0000QDjRSdHU?k-U<iSJ37-ZL3<`n}f*S!g0we<v3km=PAO$i9APj|08{`(V5fyA4
z2q2nk0sgB5?ojy`JU9x40)c`SG>9aV2yf!|lWbwZ&_|(8Vy-#ewQ-Rx-1vJnLXugl
za9Ta9)k=mWK4Rq@=^;S=15}6|@KqEb=K$EbV;wO0nJ7|dO<Pt2D$o@HMnJ;9nlOaM
zSL*n^swKH8a_^ksFnCi!x_VO(xiMjQ4uB|WeMRS3-@S3yd^mDTr}%)N&6SRQr9_hW
zc4i=;-g6C1p&9=-t=T`xmDVkEp_)(#jWPTGWU`r=<SyinGD~SSq3$VaS3J-2rSDN%
z)d+<|Xvsr3bd9o6L`%2N@+9=`F{Zw~g91Y0sWt_HAr^njdx9VhP5HTi&({+0U^mh*
z20S;v+@|#nFFxKqO%vy=?KDkmJ>56p__%AzjH%;~>$6k<(*zENTdJ|{&b_iP27}!K
z=ykWDkLjE=0|7h1PAE*+<L}9wZ)EpD2IPZsCP0Jo3F&1_U;v;EFtfup1r@a%O&e6E
z^8`B4F_v<WK?5CY<|E{2wFU_|&j$%*nR_(dY9+X<IW)-yXwjfD$GJ}Z=#KVkuebaA
z;B#OVB+=7Dj-q=JAJG9g-_7p~_#Kly^7yv^?#Dwoa<9Gz`}B2~<?C=CE>(v*h*xnd
z4$w!~>tF5yd9VssaU7em2Y2HFdSMqf>{4vP34Ad72=0(1PaimmHS-|u=`~w%a6JAN
zyowz-fGfBa575)}zkE}G{asuK;@+|BHi)7FYq1HtkG!3AyIu$)j73<E)rj2Q^Lw7e
zRlJ4|$iPx;#4a4c8QjLVz-Jae?ccX|{kpYlR<G)atXy$-dvkqtd2xPrdUAYpc(A{>
zyR*Huxv{>sy0W~qxFGqz_qnh0*td0=r_oz2ImO_ur=ysgP0EwUox=yix#Uik+@92%
zUmN8RIZz0nf(l14uf09J@nz3gD~2shaJ_^};y}YhPda4Q89|5{>hzXRuWL`Gws@@W
zbB7T;eXDd)ngNz`4D#LC^9BW3X@7+*1x2@I0)lD}5+og4XqrTYhs!y?Sg3HqXmf1Y
z5BagAVj=!699#w7+vRi!mP4&C>-*KsBe&#ZwTBi)a@4U9Ob6KHw#7~SUHPp7w1x;m
z=l+$~cu)%)T=k9T+^t6A*^)@>JS>SniEX!&81|Dte^;5zd_#5ZTVDq4U5)>h5z7ht
zk`nL~0-9}F3>QaOT6b2Gm)uzDJTa|Fw<8wU@>|%n1iY=na}gnr`95Wqfhc2nyw|M3
zc%GUU$-kbdmT#kHFajRVUzE^0kJ_D+%^7pnTwpP*Um~>pb=~qFLgpg;=A{^dAY$Ll
zyNe<>^H-aefQT;^p%+BlZwbSm!aTV-jo<6O72Ahu|C<+!)GvoDwf}dCZl_GF-0{#(
z`59n30JI>8VH8M`WC6@u&p$sHD=w5?{}&MuB+o;`lDfaAvr1GrPOVc$a5~Uvc+KEq
z-4c-W<A$riWx#bOkIS*<fdblsOXpKjDJ7#dvBr0yXJV3`i0k=www;IxZ`AD{?!)8X
zr`GLcJC*=t7O1DKe|5<vee_1d+$Vy0<)6$*BD4l3M{xhXNgVsu%13#(LuEp_>vcP)
z*U7weSFb&pU>T|1qw0zYBR286S<f1_O1{wF>q#xIl;zRg*aTKlDO{vv;GuaOX#n#Y
zTqmHK)2OcNea>C&)!WVkzV*r6)mCbvp+<~ajh*N9x}DrXw%6pEB$8q?-RR9I*tFHM
ze&9ax{LsQ<zfWF{m{}p>6O}w~({e55a=;?!McqNlx$%|;GEgoSK|d76acLnz(iO~6
z-v%b1aG{+?qfe>uTUEjC0It8{DKbd-ZWdDvrio+A6%px^Y6Y)zh6`Yaa46*@5oscr
z4l(|)$WFE;-#1pk4e8ZUms(g$YdaS+oY)*ppc-$%^d`j-xuPHx0s@txH8GPjG>QX^
z7F%`ICJd`<PbO-0e*|mh%!g9r$t#9zjl~a$^gslr{$);pY7g{Nn>CtS;Cj`NAjk%U
zahyd<%yJxu(1K1+8&n^uzFLSRE;A)t0dbQ($#@G|hJNPd8}&y*V{nl57453pn$|v}
zvB-!+H4nkDrGhHz?l77P8A2WVP&S6cT;$TZ3=VcPFx{obX&vkMftjvCiE3;~K$S<3
zO)CN9^=3P;UaJH$z(!P6d+^SRAhCqUp%=`^8VL&ttR@8fqmHWw1`9k-DEYIjyUn&o
zDAoelUT}drZ-xVJ6)Z|=k}H>&rv_a;kb>Ebz)9)?qFQng5E-ry>CR4&8UeQpU`B>H
zOzS*U_b>y)NMsYVs*GxJ@mjCcXnGx3H3w1C!1CzhW@M4HJ7{IQ5f{zcS2n(D!P%|z
zko9nj2T^BB`rDZ)<{pfPN&cW_Ftv&sqQ+)YbA5~vd+n`dJ8b~QHjRX8r{VVbZ!PPe
ztPq&(LV3km1vw?qGXwlbd1hXwfiwh@!aTvhGUTd%^$xBL6C))`Jr|@q6pIUXm^B;*
zyXW<<JTS~`!ekI|F;{K_3mgMAezM<$+!hG~3%k`fa!7I$qWA;7iZzw$3l(Hr0Re*N
za2$B1=4r5J6oRTfK)JjDH^w2%y#4V`nt1}A^~a>k6HkHWb)@$4mPw6Ev($Kv6>R+%
zaO-POJZ&kr&x&OZ2&&gAmfxd0-<ZJDbyM_tP!@ds_wdFNQ$YBJ6V0@a^S_H4!Voy=
zhbCBr1o|o^NKsWm8NRCW&TPU7UIN)Ge_92&C=9~T#{y|*@3T~a2@}cV?)*f*NrBs-
z0+PON)A`0clv=1GNac!Q$-w5QJ--j2wDK7+vqQ@B!cye5z;f5^s67)y-R}%VFJ44X
z_buj$Ag06$cMd!`$1pN-m1_`e_6oB8^Z)D4aky?AOFj-H%AAj&u6@eAGQ0Kj4VaKW
zY4BKm=YJ+^ng79JMj6?#aG`-PH1csib*4MKl|OSMtP+XQ=tOTKcuww*T0+@qkvh=$
zLTA*DfQm)u<i-0)qtlyX;yc{do(sx1v&~bWfX^;o!V|deH_e)WT3Y98iCh#S{SdBq
zry3P2a9p()pjNDPn$I=kS2IBvoS5NfKy6-XL1KZ~CAZ+ld6+k+a!%8yRVTgQu_%&}
z1o>M`;_s|I)@#wk-&^SO7#e-)t+l{iDEm~@Ce_s6`m*N1=Qslpq-Bhi<C%0F7_cuR
z!TSdq&0AaNQpr|#VFxVarCxod_QWSvfg7qm$3efb{0oNx{*A%1(7(PmXdPQ7sDVGR
zO@xEknc&9DY78nj2n;Gz2N=R%2}huo<fzTUES7m$#s@Pn2R(Vhy%dqRUVF`LzwyR9
zL>=$G`KD*n>#x7vV%{54<+fjI0wS+hc{aTnUrO~J)V9$*<#2Qj=hju9{8K(#%Bj0P
zX|*@{Tb;S9PC1)*&Jw5ZE`%HHk&0iSPNaOBn`gLIx$rDpT6!7|F3h)`S8!s8RxUb=
z6jKsbESmqYZi1TCy$?seF!5=0?eFuiwPOZ19Ivd(sp>a$9pDBiAEbbFx&R*y=nUgK
zd7k`+>AFtz?;_0+t~p3d%;=JtmVSpU$0&>`NX<<3J?~6SOTSZMDP4fB<B%8#fB;A&
zUPzl=u`o31cU7nY03Q2kB?SQ9{p7{Ef71Vd-L+Aj3xW%b<yHhJ(>lF0xHhk%&P>8)
z|2>{do6#<>!8oZG>f~oS`&_TjaREKB016m<NX0>beGxYwQp_+6EG^_NP{%lB!=Rq!
zRhWr3&*rggGY#z={+*mN1?{+{>8uDW58Xzcn~}5Vdh~ybtC82nx%{#4kC5|&%h`*0
z?*=DNjpGNiPt3ae2RCM1^Xy&y-3wDM3)#K|WNXKy6%*I~`iAif+Gm9450>W*mPWLU
zk1R}RnkeQ5H1w$NP}laSTGX}!^csu{2zfPWdkbmVd72iL_Jg`Zg?prGP^L|!tUoAe
z6zeVpZ6bMv0)c#SOhzJC9+LvuHASL^Sz)XMqeGPYCLD5;pl6VP_ZYvohR>@cUJr%K
z8OLEi#%3*IGRDyfS!gwSqH&3Zvqm&ZRBR!fRYJteBSh{O@MaNMh>VW`JoM*r5xazv
znbggb%;Y62`Rhc&DDV01hAO>ls7typ)YbA?F#&H#4)BoI;?^ME%vl^?$$#WhTvKew
z6L5!=fCy1KLa~<H64pu%rHTqMQ%GY)vsfu4SgD{?%*2n7TmdyC1z1S6m^FwsGZx2I
zvLBfwnI@a=qV3U|#FD!dr&;pr3fBM9hN#|(=sY+471v86R5vsEN3_*iyJZUoWS9JI
zude-<kb2gf!E!1IMO=!_J*6cgF)=YlpE;u?UMUHp!0k<uUW#tjNCe)*hx_cJ2qFlw
O`w-s3;8FDk0000%s9yvC

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-greek.woff2 b/frontend/src/assets/fonts/roboto/bold-greek.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..8edfa0e5f4a5ecc1b19b415c027f50da73d6454c
GIT binary patch
literal 9488
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

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-latin-ext.woff2 b/frontend/src/assets/fonts/roboto/bold-latin-ext.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..fe8bf6941a5bbb6228220c3a5fea883583bc1103
GIT binary patch
literal 15140
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
Szuh}%^5C90OclS#X8{2Ia(p8I

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-latin.woff2 b/frontend/src/assets/fonts/roboto/bold-latin.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..57269b7e1745e2358f7d90d253abccf953667553
GIT binary patch
literal 18124
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

literal 0
HcmV?d00001

diff --git a/frontend/src/assets/fonts/roboto/bold-vietnamese.woff2 b/frontend/src/assets/fonts/roboto/bold-vietnamese.woff2
new file mode 100755
index 0000000000000000000000000000000000000000..64c1d0e737411b433754b16f7c2eb023c2ca969b
GIT binary patch
literal 7200
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

literal 0
HcmV?d00001

diff --git a/frontend/src/css/fonts.css b/frontend/src/css/fonts.css
index d700edcb..b986f291 100644
--- a/frontend/src/css/fonts.css
+++ b/frontend/src/css/fonts.css
@@ -110,4 +110,60 @@
   unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
 }
 
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-cyrillic-ext.woff2) format('woff2');
+  unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-cyrillic.woff2) format('woff2');
+  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-greek-ext.woff2) format('woff2');
+  unicode-range: U+1F00-1FFF;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-greek.woff2) format('woff2');
+  unicode-range: U+0370-03FF;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-vietnamese.woff2) format('woff2');
+  unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-latin-ext.woff2) format('woff2');
+  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
+}
+
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 700;
+  src: local('Roboto Bold'), local('Roboto-Bold'), url(../assets/fonts/roboto/bold-latin.woff2) format('woff2');
+  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
+}
+
 @import "~material-design-icons/iconfont/material-icons.css";

From c0d85f3d85926c8790757bf142140d19455ae8ca Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Thu, 25 Mar 2021 14:24:46 +0000
Subject: [PATCH 07/14] fix: image quality switch on previewer

---
 frontend/src/components/files/ExtendedImage.vue | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/frontend/src/components/files/ExtendedImage.vue b/frontend/src/components/files/ExtendedImage.vue
index 9bc88d80..117db4ff 100644
--- a/frontend/src/components/files/ExtendedImage.vue
+++ b/frontend/src/components/files/ExtendedImage.vue
@@ -88,6 +88,10 @@ export default {
   },
   watch: {
     src: function () {
+      if (!this.decodeUTIF()) {
+        this.$refs.imgex.src = this.src;
+      }
+
       this.scale = 1;
       this.setZoom();
       this.setCenter();

From 87f1881b429877a740ea84a8e783ad4103248289 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Thu, 25 Mar 2021 15:47:49 +0000
Subject: [PATCH 08/14] fix: list item interactions on share

---
 frontend/src/components/prompts/Prompts.vue | 6 ++++++
 frontend/src/css/_share.css                 | 2 +-
 frontend/src/css/listing.css                | 1 +
 frontend/src/views/Files.vue                | 9 ---------
 4 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/frontend/src/components/prompts/Prompts.vue b/frontend/src/components/prompts/Prompts.vue
index 3d3b2eda..36cb0349 100644
--- a/frontend/src/components/prompts/Prompts.vue
+++ b/frontend/src/components/prompts/Prompts.vue
@@ -56,6 +56,12 @@ export default {
 
       let prompt = this.$refs.currentComponent;
 
+      // Esc!
+      if (event.keyCode === 27) {
+        event.stopImmediatePropagation();
+        this.$store.commit("closeHovers");
+      }
+
       // Enter
       if (event.keyCode == 13) {
         switch (this.show) {
diff --git a/frontend/src/css/_share.css b/frontend/src/css/_share.css
index a5f2d35f..6d1c2296 100644
--- a/frontend/src/css/_share.css
+++ b/frontend/src/css/_share.css
@@ -34,7 +34,7 @@
 }
 
 .share__box__info {
-  flex: 1 1 auto;
+  flex: 1 1 18em;
 }
 
 .share__box__element {
diff --git a/frontend/src/css/listing.css b/frontend/src/css/listing.css
index 7abf14bb..8506df7a 100644
--- a/frontend/src/css/listing.css
+++ b/frontend/src/css/listing.css
@@ -25,6 +25,7 @@
   transition: .1s ease background, .1s ease opacity;
   align-items: center;
   cursor: pointer;
+  user-select: none;
 }
 
 #listing .item div:last-of-type {
diff --git a/frontend/src/views/Files.vue b/frontend/src/views/Files.vue
index eba7acab..781b0edb 100644
--- a/frontend/src/views/Files.vue
+++ b/frontend/src/views/Files.vue
@@ -124,15 +124,6 @@ export default {
       }
     },
     keyEvent(event) {
-      if (this.show !== null) {
-        // Esc!
-        if (event.keyCode === 27) {
-          this.$store.commit("closeHovers");
-        }
-
-        return;
-      }
-
       // F1!
       if (event.keyCode === 112) {
         event.preventDefault();

From e410272e6be6a0b660efe8d4eee6c6e9dd834cc5 Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Thu, 25 Mar 2021 19:36:53 +0000
Subject: [PATCH 09/14] feat: dynamic zoom limit on previewer

---
 .../src/components/files/ExtendedImage.vue    | 29 +++++++++++--------
 1 file changed, 17 insertions(+), 12 deletions(-)

diff --git a/frontend/src/components/files/ExtendedImage.vue b/frontend/src/components/files/ExtendedImage.vue
index 117db4ff..b0be0149 100644
--- a/frontend/src/components/files/ExtendedImage.vue
+++ b/frontend/src/components/files/ExtendedImage.vue
@@ -29,14 +29,6 @@ export default {
       type: Number,
       default: () => 200,
     },
-    maxScale: {
-      type: Number,
-      default: () => 4,
-    },
-    minScale: {
-      type: Number,
-      default: () => 0.25,
-    },
     classList: {
       type: Array,
       default: () => [],
@@ -45,10 +37,6 @@ export default {
       type: Number,
       default: () => 0.25,
     },
-    autofill: {
-      type: Boolean,
-      default: () => false,
-    },
   },
   data() {
     return {
@@ -64,6 +52,8 @@ export default {
         center: { x: 0, y: 0 },
         relative: { x: 0, y: 0 },
       },
+      maxScale: 4,
+      minScale: 0.25,
     };
   },
   mounted() {
@@ -126,6 +116,21 @@ export default {
       img.classList.add("image-ex-img-ready");
 
       document.addEventListener("mouseup", this.onMouseUp);
+
+      let realSize = img.naturalWidth;
+      let displaySize = img.offsetWidth;
+
+      // Image is in portrait orientation
+      if (img.naturalHeight > img.naturalWidth) {
+        realSize = img.naturalHeight;
+        displaySize = img.offsetHeight;
+      }
+
+      // Scale needed to display the image on full size
+      const fullScale = realSize / displaySize;
+
+      // Full size plus additional zoom
+      this.maxScale = fullScale + 4;
     },
     onMouseUp() {
       this.inDrag = false;

From fcb115f42d33db2be7a4d428ec53d65d6050320b Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Thu, 25 Mar 2021 19:37:54 +0000
Subject: [PATCH 10/14] fix: mouse wheel zoom on previewer

---
 frontend/src/components/files/ExtendedImage.vue | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/frontend/src/components/files/ExtendedImage.vue b/frontend/src/components/files/ExtendedImage.vue
index b0be0149..742523a6 100644
--- a/frontend/src/components/files/ExtendedImage.vue
+++ b/frontend/src/components/files/ExtendedImage.vue
@@ -260,7 +260,7 @@ export default {
       }
     },
     wheelMove(event) {
-      this.scale += (event.wheelDeltaY / 100) * this.zoomStep;
+      this.scale += -Math.sign(event.deltaY) * this.zoomStep;
       this.setZoom();
     },
     setZoom() {

From 1516d9932bf9926ac8b4cb3e738a5f51e80d5b1d Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Fri, 26 Mar 2021 12:45:17 +0000
Subject: [PATCH 11/14] fix: buttons without permission on header

---
 frontend/src/views/Settings.vue      | 12 ++++--------
 frontend/src/views/files/Editor.vue  |  1 +
 frontend/src/views/files/Listing.vue |  6 ++++++
 frontend/src/views/files/Preview.vue |  3 +++
 4 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/frontend/src/views/Settings.vue b/frontend/src/views/Settings.vue
index 82e6782a..ef67c59a 100644
--- a/frontend/src/views/Settings.vue
+++ b/frontend/src/views/Settings.vue
@@ -10,26 +10,22 @@
               {{ $t("settings.profileSettings") }}
             </li></router-link
           >
-          <router-link to="/settings/shares"
+          <router-link to="/settings/shares" v-if="user.perm.share"
             ><li :class="{ active: $route.path === '/settings/shares' }">
               {{ $t("settings.shareManagement") }}
             </li></router-link
           >
-          <router-link to="/settings/global"
-            ><li
-              :class="{ active: $route.path === '/settings/global' }"
-              v-if="user.perm.admin"
-            >
+          <router-link to="/settings/global" v-if="user.perm.admin"
+            ><li :class="{ active: $route.path === '/settings/global' }">
               {{ $t("settings.globalSettings") }}
             </li></router-link
           >
-          <router-link to="/settings/users"
+          <router-link to="/settings/users" v-if="user.perm.admin"
             ><li
               :class="{
                 active:
                   $route.path === '/settings/users' || $route.name === 'User',
               }"
-              v-if="user.perm.admin"
             >
               {{ $t("settings.userManagement") }}
             </li></router-link
diff --git a/frontend/src/views/files/Editor.vue b/frontend/src/views/files/Editor.vue
index 85bfc98c..519bd886 100644
--- a/frontend/src/views/files/Editor.vue
+++ b/frontend/src/views/files/Editor.vue
@@ -6,6 +6,7 @@
 
       <template #actions>
         <action
+          v-if="user.perm.modify"
           id="save-button"
           icon="save"
           :label="$t('buttons.save')"
diff --git a/frontend/src/views/files/Listing.vue b/frontend/src/views/files/Listing.vue
index ce7655f0..16640861 100644
--- a/frontend/src/views/files/Listing.vue
+++ b/frontend/src/views/files/Listing.vue
@@ -58,12 +58,14 @@
           @action="switchView"
         />
         <action
+          v-if="headerButtons.download"
           icon="file_download"
           :label="$t('buttons.download')"
           @action="download"
           :counter="selectedCount"
         />
         <action
+          v-if="headerButtons.upload"
           icon="file_upload"
           id="upload-button"
           :label="$t('buttons.upload')"
@@ -378,6 +380,8 @@ export default {
     window.addEventListener("keydown", this.keyEvent);
     window.addEventListener("scroll", this.scrollEvent);
     window.addEventListener("resize", this.windowsResize);
+
+    if (!this.user.perm.create) return;
     document.addEventListener("dragover", this.preventDefault);
     document.addEventListener("dragenter", this.dragEnter);
     document.addEventListener("dragleave", this.dragLeave);
@@ -388,6 +392,8 @@ export default {
     window.removeEventListener("keydown", this.keyEvent);
     window.removeEventListener("scroll", this.scrollEvent);
     window.removeEventListener("resize", this.windowsResize);
+
+    if (!this.user.perm.create) return;
     document.removeEventListener("dragover", this.preventDefault);
     document.removeEventListener("dragenter", this.dragEnter);
     document.removeEventListener("dragleave", this.dragLeave);
diff --git a/frontend/src/views/files/Preview.vue b/frontend/src/views/files/Preview.vue
index 4a9411cf..30dcef5a 100644
--- a/frontend/src/views/files/Preview.vue
+++ b/frontend/src/views/files/Preview.vue
@@ -17,12 +17,14 @@
       <template #actions>
         <action
           :disabled="loading"
+          v-if="user.perm.rename"
           icon="mode_edit"
           :label="$t('buttons.rename')"
           show="rename"
         />
         <action
           :disabled="loading"
+          v-if="user.perm.delete"
           icon="delete"
           :label="$t('buttons.delete')"
           @action="deleteFile"
@@ -30,6 +32,7 @@
         />
         <action
           :disabled="loading"
+          v-if="user.perm.download"
           icon="file_download"
           :label="$t('buttons.download')"
           @action="download"

From 59f9964e80c8233775f27be33a4c16a31bfe848a Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Fri, 26 Mar 2021 13:30:14 +0000
Subject: [PATCH 12/14] fix: check modify permission on file overwrite

---
 http/resource.go | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/http/resource.go b/http/resource.go
index cd103778..c6902476 100644
--- a/http/resource.go
+++ b/http/resource.go
@@ -118,6 +118,11 @@ func resourcePostHandler(fileCache FileCache) handleFunc {
 				return http.StatusConflict, nil
 			}
 
+			// Permission for overwriting the file
+			if !d.user.Perm.Modify {
+				return http.StatusForbidden, nil
+			}
+
 			err = delThumbs(r.Context(), fileCache, file)
 			if err != nil {
 				return errToStatus(err), err
@@ -204,6 +209,11 @@ var resourcePatchHandler = withUser(func(w http.ResponseWriter, r *http.Request,
 		dst = addVersionSuffix(dst, d.user.Fs)
 	}
 
+	// Permission for overwriting the file
+	if override && !d.user.Perm.Modify {
+		return http.StatusForbidden, nil
+	}
+
 	err = d.RunHook(func() error {
 		switch action {
 		// TODO: use enum

From 2697093ac151f74eea3022951d128acfe04d1dcf Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Fri, 26 Mar 2021 14:45:18 +0000
Subject: [PATCH 13/14] fix: empty archive name on directory download

---
 http/raw.go | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/http/raw.go b/http/raw.go
index 5c224caa..b9ac8159 100644
--- a/http/raw.go
+++ b/http/raw.go
@@ -181,14 +181,14 @@ func rawDirHandler(w http.ResponseWriter, r *http.Request, d *data, file *files.
 
 	commonDir := fileutils.CommonPrefix(filepath.Separator, filenames...)
 
-	var name string
-	if len(filenames) > 1 {
-		name = "_" + filepath.Base(commonDir)
-	} else {
+	name := filepath.Base(commonDir)
+	if name == "." || name == "" || name == string(filepath.Separator) {
 		name = file.Name
 	}
-	if name == "." || name == "" {
-		name = "archive"
+	// Prefix used to distinguish a filelist generated
+	// archive from the full directory archive
+	if len(filenames) > 1 {
+		name = "_" + name
 	}
 	name += extension
 	w.Header().Set("Content-Disposition", "attachment; filename*=utf-8''"+url.PathEscape(name))

From a76e01d2b78a785f3665a8b3532c7cc566bfabce Mon Sep 17 00:00:00 2001
From: Ramires Viana <59319979+ramiresviana@users.noreply.github.com>
Date: Fri, 26 Mar 2021 17:31:27 +0000
Subject: [PATCH 14/14] feat: dynamic autoplay on previewer

---
 frontend/src/views/files/Preview.vue | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/frontend/src/views/files/Preview.vue b/frontend/src/views/files/Preview.vue
index 30dcef5a..26521153 100644
--- a/frontend/src/views/files/Preview.vue
+++ b/frontend/src/views/files/Preview.vue
@@ -57,8 +57,22 @@
     <template v-if="!loading">
       <div class="preview">
         <ExtendedImage v-if="req.type == 'image'" :src="raw"></ExtendedImage>
-        <audio v-else-if="req.type == 'audio'" :src="raw" controls></audio>
-        <video v-else-if="req.type == 'video'" :src="raw" controls>
+        <audio
+          v-else-if="req.type == 'audio'"
+          ref="player"
+          :src="raw"
+          controls
+          :autoplay="autoPlay"
+          @play="autoPlay = true"
+        ></audio>
+        <video
+          v-else-if="req.type == 'video'"
+          ref="player"
+          :src="raw"
+          controls
+          :autoplay="autoPlay"
+          @play="autoPlay = true"
+        >
           <track
             kind="captions"
             v-for="(sub, index) in subtitles"
@@ -139,6 +153,7 @@ export default {
       showNav: true,
       navTimeout: null,
       hoverNav: false,
+      autoPlay: false,
     };
   },
   computed: {
@@ -233,6 +248,14 @@ export default {
       }
     },
     async updatePreview() {
+      if (
+        this.$refs.player &&
+        this.$refs.player.paused &&
+        !this.$refs.player.ended
+      ) {
+        this.autoPlay = false;
+      }
+
       if (this.req.subtitles) {
         this.subtitles = this.req.subtitles.map(
           (sub) => `${baseURL}/api/raw${sub}?auth=${this.jwt}&inline=true`