问题标签 [simbl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - 可以用 SIMBL 为 iPhone 的 Safari 开发插件吗?
可以用 SIMBL 为 iPhone 的 Safari 开发插件吗?
installation - 使安装程序元包需要 SIMBL?
使用 PackageMaker,我如何制作需要安装 SIMBL 的 .(m)pkg - 如果已安装,安装应该简单地继续,否则,应该在安装我的 SIMBL 插件之前安装 SIMBL?
我尝试简单地将 SIMBL.pkg 拖到左侧窗格中,但不知何故所有资源和InstallationCheck
脚本都丢失了,所以这可能不对。
cocoa - 如何使用 SIMBL 开发 safari 插件(输入管理器)?
现在想开发一个使用SIMBL的safari插件,但是我搜索了很多网页都没有找到一些源代码或简单的示例,有人可以给我或指向一个位置吗?非常感谢你!!!
safari - Safari版本号?
我正在 MAC 上开发一个 safari 插件。现在我想知道 safari3、safari4 的所有版本号,因为我可以在一些插件示例代码 info.plist 中看到:MinBundleVersion 是 5530,我检查我的 safari 版本是: 3.1.2(5525.20.1),我觉得有些用户的safari3版本会比我的低。但我不知道 safari3 的最低版本号。我搜索了Apple web,但没有得到任何结果,非常感谢!
cocoa - 为什么类 WebBaseNetscapePluginView 的实例不响应 safari4 中的选择器?
我正在用 Safari 开发一个插件。我按照 adblocker 源代码来调整方法:
WebBaseNetscapePluginView 类的,但我发现在 Safari4 中没有响应。为什么?
cocoa - Cocoa 插件中的单例
我如何从 SIMBL 插件中获取主应用程序中的单例?当我尝试调用类似的东西[ProcessControl sharedInstance]
时,我收到一个错误,即 ProcessControl 未定义(即使它是在头文件中声明的)。
simbl - SIMBL 插件可以是专有的和闭源的吗?
我不确定,因为SIMBL是 GPL。
cocoa - Mac OS X Window Server vs. X11:疯狂的任务
献给所有喜欢低级 Window Server(CoreGraphicsPrivate.h 等)、Mac 上的 X11、SIMBL 和其他疯狂东西的人 :)
Mac 上有一个简单的 X11 模拟应用程序(如 xterm、xeyes 等),只有一个窗口。在运行时,X11 以某种方式创建了一个原生 Quartz 窗口来表示这个模拟的应用程序,并且这个窗口可以通过 Quartz Window Services 访问,这样我就可以获得它的 CSWindowID、标题、位置、大小和所有者的 PID(X11.app 的 PID)。但它不支持 Accessibility API,因此无法控制它(除了,可能来自同一进程的 Core Graphichs 私有函数)。
现在,这是任务:
我需要在这样的窗口上托管一个额外的 NSView (或只是绘制一些东西)。我的意思是一个原生 Quartz 窗口,它是 X11 模拟某些应用程序的结果。我知道,要在 Mac 上操作窗口,我必须在同一个进程中,即 X11.app。
我写了一个 SIMBL 插件,它侵入了 X11.app 进程。
在那里我可以调用 [NSApp windows],但我总是得到 2 个 NSWindows,它们与实际应用程序的窗口没有任何共同之处。它们甚至在屏幕上都不可见。
然而,当我调用 NSWindowList() 时,我得到了我需要的任何东西(X11 窗口的窗口 ID)甚至更多(来自其他应用程序的窗口 ID)。
当我获得 X11 模拟窗口的 CSWindowID 时,我调用 [NSApp windowWithWindowNumber: ] (Cocoa) 和 HIWindowFromCGWindowID() (Carbon),但它们都返回 nil!来自同一个过程!
顺便说一句,当我侵入 Safari 进程和其他进程时,所有这些操作都能完美运行......
所以,问题是:
X11 是如何创建无法从同一个进程访问的窗口的?
如何获得指向 X11 窗口(NSWindow *、CGContextRef 或至少是任何东西......)的指针并在它们上面托管我的图形(我什至不谈论 NSView)?
提前非常感谢!
macos - SIMBL with Method Swizzling
我在使用 SIMBL 连接的外部应用程序中覆盖某些功能时遇到了一些很大的麻烦。
在这个应用程序中,有一个类 - 我们称之为“AppClass”。在这个类中有一个函数,
我从类转储二进制文件中得到了这个。整个接口定义为:
我试图用 jr_swizzleMethod:withMethod:error 覆盖这个函数:
由于缺乏文档,这就是我想出的:
应该够了吧?但我在编译时收到此错误:
我该如何解决这个问题?