forked from fanruan/design
Browse Source
【问题原因】 Mac端在设计器未启动状态下,直接点击模板文件,触发设计器启动, 但启动成功后,设计器里并没有打开对应的模板。查看install4j的 文档后发现还需要使用install4j运行时jar中的API注册监听函数, 才能拿到文件路径。 点击文件启动应用的API与点击网页链接启动应用的API,恰好是一个, 所以就可以在之前迭代的URL启动设计器功能基础上修复这个BUG。 【改动思路】 实现一个用于mac端文件打开的DeepLinkfeature/x
3 changed files with 51 additions and 1 deletions
@ -0,0 +1,29 @@
|
||||
package com.fr.design.deeplink; |
||||
|
||||
import com.fr.design.mainframe.DesignerContext; |
||||
import com.fr.file.FileFILE; |
||||
import com.fr.stable.StringUtils; |
||||
import com.fr.stable.os.OperatingSystem; |
||||
|
||||
import java.io.File; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* @author Starryi |
||||
* @version 1.0 |
||||
* Created by Starryi on 2022/1/13 |
||||
*/ |
||||
public class FileOpen4MacDeepLink extends DeepLink { |
||||
@Override |
||||
public boolean accept(String url, String host, String path, Map<String, Object> params) { |
||||
return OperatingSystem.isMacos() && StringUtils.isEmpty(host) && StringUtils.isEmpty(path) && params.isEmpty(); |
||||
} |
||||
|
||||
@Override |
||||
public void run(String url, String host, String path, Map<String, Object> params) { |
||||
File file = new File(url); |
||||
if (file.exists()) { |
||||
DesignerContext.getDesignerFrame().openTemplate(new FileFILE(file)); |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue