Merge branch 'master' into enhance/cut-memory-usage

This commit is contained in:
Tienson Qin
2022-02-08 21:05:38 +08:00
committed by GitHub
4 changed files with 47 additions and 10 deletions

View File

@@ -84,6 +84,7 @@
"d3-force": "3.0.0",
"diff": "5.0.0",
"electron": "15.1.2",
"electron-context-menu": "3.1.1",
"fs": "0.0.1-security",
"fs-extra": "9.1.0",
"fuse.js": "6.4.6",
@@ -110,6 +111,7 @@
"react-transition-group": "4.3.0",
"react-tweet-embed": "1.3.1",
"reakit": "0.11.1",
"remove-accents": "0.4.2",
"threads": "1.6.5",
"url": "^0.11.0",
"yargs-parser": "20.2.4"

View File

@@ -16,7 +16,8 @@
[electron.git :as git]
[electron.window :as win]
[electron.exceptions :as exceptions]
["/electron/utils" :as utils]))
["/electron/utils" :as utils]
["electron-context-menu" :as init-context-menu]))
(defonce LSP_SCHEME "lsp")
(defonce LSP_PROTOCOL (str LSP_SCHEME "://"))
@@ -31,6 +32,10 @@
;; Handle creating/removing shortcuts on Windows when installing/uninstalling.
(when (js/require "electron-squirrel-startup") (.quit app))
(defn setup-context-menu
[]
(init-context-menu #js {:showSaveImageAs true :showInspectElement false}))
(defn setup-updater! [^js win]
;; manual/auto updater
(when-not linux?
@@ -214,11 +219,12 @@
(fn []
(let [t1 (setup-updater! win)
t2 (setup-app-manager! win)
t3 (handler/set-ipc-handler! win)
t3 (setup-context-menu)
t4 (handler/set-ipc-handler! win)
tt (exceptions/setup-exception-listeners!)]
(vreset! *teardown-fn
#(doseq [f [t0 t1 t2 t3 tt]]
#(doseq [f [t0 t1 t2 t3 t4 tt]]
(and f (f)))))))
;; setup effects

View File

@@ -158,14 +158,19 @@
(error-handler error)
(log/error :write-file-failed error)))))))))
(defn- get-file-path [dir path]
(let [[dir path'] (map #(-> (when %
(string/replace % "///" "/"))
js/decodeURI)
(defn get-file-path [dir path]
(let [[dir' path'] (map #(some-> %
(string/replace "///" "/")
js/decodeURI)
[dir path])
path (if (string/starts-with? path' dir)
path
(-> (str dir path)
path (cond (nil? path)
dir
(string/starts-with? path' dir')
path'
:else
(-> (str dir' path)
(string/replace "//" "/")))]
(if (mobile-util/native-ios?)
(js/encodeURI (js/decodeURI path))

View File

@@ -0,0 +1,24 @@
(ns frontend.fs.capacitor-fs-test
(:require [frontend.fs.capacitor-fs :as capacitor-fs]
[clojure.test :refer [deftest is]]))
(deftest get-file-path
(let [dir "file:///private/var/mobile/Library/Mobile%20Documents/iCloud~com~logseq~logseq/Documents/"
url-decoded-dir "file:/private/var/mobile/Library/Mobile Documents/iCloud~com~logseq~logseq/Documents/"]
(is (= (str url-decoded-dir "pages/pages-metadata.edn")
(capacitor-fs/get-file-path
dir
"file:///private/var/mobile/Library/Mobile Documents/iCloud~com~logseq~logseq/Documents/pages/pages-metadata.edn"))
"full path returns as url decoded full path")
(is (= (str url-decoded-dir "journals/2002_01_28.md")
(capacitor-fs/get-file-path
dir
"/journals/2002_01_28.md"))
"relative path returns as url decoded full path")
(is (= dir
(capacitor-fs/get-file-path
dir
nil))
"nil path returns url encoded dir")))