Преглед на файлове

feat(sync): add logseq protocol

Tienson Qin преди 4 години
родител
ревизия
918f6f8613
променени са 2 файла, в които са добавени 15 реда и са изтрити 2 реда
  1. 7 0
      resources/forge.config.js
  2. 8 2
      src/electron/electron/core.cljs

+ 7 - 0
resources/forge.config.js

@@ -4,6 +4,13 @@ module.exports = {
   packagerConfig: {
     name: 'Logseq',
     icon: './icons/logseq_big_sur.icns',
+    protocols: [
+      {
+        "protocol":"logseq",
+        "name":"logseq",
+        "schemes":"logseq"
+      }
+    ],
     osxSign: {
       identity: 'Developer ID Application: Tiansheng Qin',
       'hardened-runtime': true,

+ 8 - 2
src/electron/electron/core.cljs

@@ -18,7 +18,7 @@
             [electron.exceptions :as exceptions]
             ["/electron/utils" :as utils]))
 
-(defonce LSP_SCHEME "lsp")
+(defonce LSP_SCHEME "logseq")
 (defonce LSP_PROTOCOL (str LSP_SCHEME "://"))
 (defonce PLUGIN_URL (str LSP_PROTOCOL "logseq.io/"))
 (defonce STATIC_URL (str LSP_PROTOCOL "logseq.com/"))
@@ -38,7 +38,7 @@
                    :logger logger
                    :win    win})))
 
-(defn setup-interceptor! []
+(defn setup-interceptor! [win]
   (.registerFileProtocol
     protocol "assets"
     (fn [^js request callback]
@@ -62,6 +62,12 @@
 
         (callback #js {:path path'}))))
 
+  (.registerHttpProtocol
+   protocol LSP_SCHEME
+   (fn [^js request callback]
+     ;; placeholder
+     (.loadURL MAIN_WINDOW_ENTRY)))
+
   #(do
      (.unregisterProtocol protocol LSP_SCHEME)
      (.unregisterProtocol protocol "assets")))