首页
学习
活动
专区
圈层
工具
发布

剪贴板操作 Clipboard API 教程

为了解决这些问题,浏览器厂商提出了异步的 Clipboard API。...三、异步 Clipboard API Clipboard API 是下一代的剪贴板操作方法,比传统的document.execCommand()方法更强大、更合理。...由于用户可能把敏感数据(比如密码)放在剪贴板,允许脚本任意读取会产生安全风险,所以这个 API 的安全限制比较多。 首先,Chrome 浏览器规定,只有 HTTPS 协议的页面才能使用这个 API。...权限的具体实现使用了 Permissions API,跟剪贴板相关的有两个权限:clipboard-write(写权限)和clipboard-read(读权限)。"...因为代码运行的时候,开发者工具窗口是当前页,这个页面不存在 Clipboard API 依赖的 DOM 接口。

2.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    揭开Wayland的面纱(二):Wayland应运而生

    话说在上篇(揭开Wayland的面纱(一):X Window的前生今世)中我介绍了一些X Window的历史及发展,还没有提到Wayland本身,不少人已经等不及了。...在本篇正式开始介绍Wayland之前,让我们先回到2008年11月4日,也就是整整两年前,我当时在中文领域第一时间报道了"Wayland"的新闻:Wayland:Linux的新X Server,在其后的一个月...,又写了:Wayland最新动态。...所以Wayland依然是贯彻"提供机制,而非策略"的Unix程序。 "什么?Wayland还是Server/Client模式?"...由于Wayland协议的灵活性,Wayland Compositor也可以拥有自己的后端:比如直接在DRM上跑Wayland(不需要X),或者在X Window上跑起一个Wayland Compositor

    4.6K70

    编写 Wayland 客户端(二)

    我们已经成功写出了第一个 Wayland 程序。 Wayland 的基本原理 Wayland 是一种 客户端-服务器协议。...避免往返延迟是 Wayland 设计的目标之一,因为往返延迟会严重拖慢通信。Wayland 的目标是保持极高的速度和效率。 因此,Wayland 是异步的。...API 非常直观: void surface_enter_handler(void *data, struct wl_surface *surface, struct wl_output *output...大多数全局对象是相应 API 集的入口点。接下来我们深入了解一下,并列出它们。...Wayland 并不是通过一个 API 让客户端主动查询服务器状态和环境,而是通过 registry 来主动通知客户端,既包括启动时的环境信息,也包括之后的动态变化(比如新显示器的插入)。

    26210

    编写 Wayland 客户端(一)

    当然如果是使用 Qt、GTK 等 GUI 框架应用,没有直接使用 X11 API,就可以自动适应,不需要修改应用程序。但是在应用开发过程中,不可避免的会使用 X11 API。...比如我之前开发的 AiOffice 应用,为了处理按键消息,就跳过了 Qt,直接使用 X11 的按键处理 API。...此外,还有些应用,并不会使用 Qt、GTK 之类的重量级框架,比如 Wine,为了高效模拟 Windows API,就直接使用了 X11 的 API。...像这类应用,就需要专门针对 Wayland 做适配。 在搜索 Wayland 开发资料,特别是 Wayland 客户端应用开发资料时,发现资料太少了。...在开始编写 Wayland 客户端之前,你可能会想:我是否必须深入了解 Wayland 协议? 答案是:不一定。 你完全可以在不了解 Wayland 内部细节的情况下开始编写客户端程序。

    24310

    从 X11 的角度理解 Wayland

    某些底层或跨平台的开源项目(例如 Wine),为了避免引入体量庞大的 GUI 框架依赖,其图形子系统往往直接基于 X11 API 或 Wayland 协议实现。在这种场景下,就必须理解底层显示系统。...Xlib 诞生于 X11 生态的早期阶段,其设计目标是为应用程序提供一套完整且易用的客户端 API,尽可能隐藏 X11 协议细节。...从这个角度看,Xlib / XCB 更像是“围绕 X11 协议逐步堆叠出来的客户端 API”,而 libwayland-client 则是一个刻意保持最小化的协议运行时,这也正体现了 X11 与 Wayland...小结 通过以上对照可以看到,Wayland 并不是在 X11 之上“修修补补”,也不是简单地“换一个 API 名字”,而是一次从架构层面重新定义显示系统边界的尝试: X11 以 Server 为中心,绘制...,最大的收获并不在于记住新的 API,而在于意识到: 显示系统不再是替应用画图的服务器,而是协调各个应用提交结果的调度者。

    45210

    winewayland.drv 的初始化过程

    () 初始化进程名称 调用 wayland_process_init(),建立与 Wayland 合成器的连接并完成协议初始化 其中,真正承担 Wayland 环境搭建与协议协商的是 wayland_process_init...Wayland 进程初始化(wayland_process_init) wayland_process_init 负责完成 Wine Wayland 驱动在进程级别的初始化,其主要步骤包括: 连接 Wayland..., process_wayland.wl_event_queue); wl_display_roundtrip_queue(process_wayland.wl_display, process_wayland.wl_event_queue...zwp_pointer_constraints_v1 —— 指针约束(锁定 / 限制) zwp_relative_pointer_manager_v1 —— 相对指针运动 zwp_text_input_manager_v3 —— 文本输入法 各类剪贴板相关协议...process_wayland.pointer.wl_pointer) wayland_pointer_init(wl_seat_get_pointer(seat)); else

    18210

    使用 Weston 调试 Wine 的 Wayland 实现

    Wine 项目组同样意识到 Wayland 的发展方向,已着手推进 Wayland 驱动的开发。然而,由于 Windows 窗口模型与 Wayland 的设计理念存在显著差异,移植工作面临不少挑战。...在多数发行版的 Wayland 会话中,Wine 仍主要依赖 XWayland,通过旧的 X11 驱动路径来运行。 在 Wayland 驱动仍不完善的阶段,调试工作尤为关键。...Weston:轻量级 Wayland 合成器的最佳选择 然而,要调试 Wine 的 Wayland 驱动,又必须在 Wayland 环境中运行,这便形成了矛盾。...我想起自己曾写过一篇介绍 Wayland 客户端开发的文章《编写 Wayland 客户端(二)》,其中提到 Weston——用于展示 Wayland 协议与功能的参考实现合成器。...编译 Wine 的 Wayland 支持 要编译 wayland 支持,需要额外安装如下开发包: libwayland-dev wayland-protocols libxkbcommon-dev linux-libc-dev

    28410

    探索纯正的 Wine-Wayland:让 Windows 应用真正运行在纯 Wayland 桌面环境中

    本文将带你一起探索 Wine 项目在纯 Wayland 环境下的表现,看看它如今的 Wayland 支持究竟到了什么程度。...那 Wine 对 Wayland 的支持如何呢?目前 Wine 项目对 Wayland 支持标记为实验性支持,也就是说还不完善,但可以用。...如果说这么简单的窗口都还存在问题,那说明 Wine 对 Wayland 的支持还相当不完善。这显然并不是应用程序一方的问题。这涉及到 Wayland 的设计哲学。...目前 Wayland 仍在快速演化中,新的实验性协议层出不穷,旧的接口也在陆续稳定。或许,要等 Wayland 像 X System 一样迭代到“第 11 版”,Wayland 才能迎来真正的稳定。...因此,在现阶段,仍不建议在纯 Wayland 环境下运行 Wine 应用。对 Wayland 的探索值得期待,但现在,它更像是一场未完的实验。

    52310

    开源一款支持跨平台的截屏+OCR+搜索+翻译+贴图+以图搜图软件

    将获取到的API KEY 和Secret KEY 以及相应的你选择的文字识别服务URL 填入软件设置,去掉离线 OCR 的勾选即可使用在线 OCR。...esearch (若找不到,请尝试e-search) -a # 自动识别 -c # 截屏搜索 -s # 选中搜索 -b # 剪贴板搜索 -q # 快速截屏 不建议在终端进行自动或选中搜索,否则...) [x] 图像滤镜(支持局部马赛克模糊和色彩调节) [x] 自定义框选松开后的操作 [x] 快速截取全屏到剪贴板或自定义的目录 [x] 截屏历史记录 [x] 窗口和控件选择(使用 OpenCV 边缘识别...按键提示 [x] 光标位置提示 [x] 录制栏 [ ] 流写入 [x] 录音 [x] 录制摄像头 [x] 自定义比特率 [x] 保存(可选保存为 SVG 可编辑文件) [x] 其他应用打开 [x] 复制到剪贴板...系统浏览器打开 [x] 链接识别 [x] 历史记录 [x] 自动删除换行(用于自动排版) [x] 查找替换(支持正则匹配) [x] 其他编辑器编辑(支持自动重载) [x] 行号 [x] 拼写检查 [x] Wayland

    3.2K20

    我们用Windows官方跑了跑Linux GUI应用程序,不愧是“胶水操作系统”

    具体到显示服务上,WSLg同时支持X11和Wayland两种协议,能通过微软内置的远程桌面进行连接。 据微软表示,相比之前的第三方实现,WSLg更加稳定方便。...(毕竟是官方钦定) WSLg基本上是以Wayland为基础开发的一个Linux桌面,并通过托管XWayland服务器,来支持X11应用程序。 ?...微软选择了Weston,来作为WSLg的核心,即Wayland合成器的参考实现,包括一个重度扩展的RDP后端、一个RAIL/VAIL shell和一个X Window管理器。...值得一提的是,这次还增加了剪贴板功能,能在Linux和Windows应用程序之间直接复制文本、html和位图数据,比虚拟机更方便。当然,目前还不支持拖放操作。...而在今年早些时候,微软还在WSL中加入了机器学习的API DirectML。

    2.2K40

    Windows 剪贴板记录工具

    :Windows系统的剪贴板是一个完全开放的系统资源,任何运行中的程序都可以自由访问。...但Windows默认的剪贴板只能保存最新一条记录,虽然Windows 10引入了历史记录功能,但在使用上仍有诸多限制。正是基于这两点思考,我开发了Clipboard Recorder工具。...它不仅能帮助用户直观地了解剪贴板的安全风险,也提供了完整的历史记录查询功能。...✨ 功能特性安全警示实时监控剪贴板变化记录所有类型的剪贴板内容(文本、图片、文件路径)展示每条内容的详细格式信息自动保存完整的操作历史实用功能按日期组织历史记录支持图片的多种保存方式智能去重避免重复记录高度可配置的行为控制...希望这个工具能够帮助更多人意识到剪贴板安全的重要性,同时也能在实际使用中带来便利。欢迎大家在 GitHub 上提出建议和贡献代码。

    44400
    领券