文件名称:骗子:Swift的macOS窗口管理库
文件大小:87KB
文件格式:ZIP
更新时间:2024-02-24 04:11:23
macos swift osx macOSSwift
骗子 适用于macOS的Swift窗口管理库 在过去的几年中,许多以前使用Linux和Windows的开发人员已经迁移到Mac,因为他们具有出色的硬件和“行之有效”的基于UNIX的OS。 但是在此过程中,我们放弃了对我们来说很珍贵的东西:控制我们的桌面环境。 Swindler的目标是帮助我们收回控制权,并让我们两全其美。 骗子做什么 为macOS编写窗口管理器很困难。 存在许多系统性挑战,包括有限且文档记录不充分的API。 macOS上的所有窗口管理器都必须使用基于C的可访问性API,这些API难以使用,而且本身也令人惊讶。 结果,窗口管理器的选择非常有限,并且那里的许多窗口管理器都有令人讨厌的错误,例如冻结,竞争条件,“虚拟窗口”,而不是“看到”实际存在的窗口。 窗口管理器越复杂,它对这些API的依赖就越多,这些错误开始出现的越多。 Swindler的工作是使用记录良好的Swift API和抽象层,轻松编写功能强大的窗口管理器。 它通过以下功能解决了可访问性API的问题: 类型安全 Swift, 得到了充分的文档记录和类型安全。 它比基于C的可访问性API更加易于使用和安全
【文件预览】:
Swindler-master
----.travis.yml(403B)
----.gitmodules(0B)
----.jazzy.yaml(1KB)
----API.swift(10KB)
----Swindler.xcodeproj()
--------project.xcworkspace()
--------Swindler_Info.plist(723B)
--------AXSwift_Info.plist(723B)
--------project.pbxproj(83KB)
--------Quick_Info.plist(723B)
--------xcshareddata()
--------PromiseKit_Info.plist(723B)
--------QuickSpecBase_Info.plist(723B)
--------Nimble_Info.plist(723B)
--------SwindlerTests_Info.plist(723B)
----.scripts()
--------update-gh-pages.sh(2KB)
----LICENSE(1KB)
----Sources()
--------Application.swift(26KB)
--------Log.swift(2KB)
--------AXPropertyDelegate.swift(6KB)
--------Events.swift(5KB)
--------Window.swift(15KB)
--------Property.swift(15KB)
--------FakeAXSwift.swift(14KB)
--------AXSwiftProtocols.swift(2KB)
--------State.swift(16KB)
--------Screen.swift(10KB)
--------Errors.swift(1KB)
--------Swindler.h(493B)
--------Successes+PromiseKit.swift(1KB)
--------FakeSwindler.swift(10KB)
----Package.swift(2KB)
----.gitignore(577B)
----Package.resolved(1KB)
----Swindler.xcworkspace()
--------contents.xcworkspacedata(292B)
--------xcshareddata()
----CHANGELOG.md(1KB)
----README.md(8KB)
----Swindler.podspec(1KB)
----SwindlerExample()
--------Assets.xcassets()
--------main.swift(228B)
--------AppDelegate.swift(3KB)
--------Info.plist(1KB)
----SwindlerTests()
--------ScreenSpec.swift(5KB)
--------DelegateStubs.swift(3KB)
--------support()
--------ApplicationSpec.swift(38KB)
--------StateSpec.swift(12KB)
--------WindowSpec.swift(23KB)
--------PropertySpec.swift(20KB)
--------FakeSpec.swift(10KB)
--------DriverSpec.swift(4KB)