我正在编写文本编辑器,当切换到浏览器或电子书阅读器软件时,我需要应用程序窗口始终位于顶部。据我所知,对于Windows用户,chrome不提供任何解决方案。是否有任何参数在创建窗口时发送以使窗口始终位于顶部?
或者我可以在应用中提供任何按钮来打开或关闭此功能吗?
我用于在bg.js中创建窗口的代码:
var launch = function () {
chrome.app.window.create('index.html', {
type: 'shell',
width: 440,
height: 680,
minWidth: 440,
maxHeight: 680,
id: 'paat-start'
});
};
chrome.app.runtime.onLaunched.addListener(launch);
chrome.commands.onCommand.addListener(launch);
感谢任何建议。
答案 0 :(得分:8)
正如Ben Wells上面提到的,此功能 现在可通过alwaysOnTop
中的chrome.app.windows.create
选项在稳定版本(v33或v34)中使用。请注意,manifest.json
文件中需要特殊权限。例如:
chrome.app.window.create('window.html', {
alwaysOnTop: true,
}, function (appWindow) {
// Window created and will remain on top of others.
// Change the property programmatically via:
//appWindow.setAlwaysOnTop();
});
的的manifest.json 强>
"permissions": [
"alwaysOnTopWindows"
]
这似乎已添加到issue 26427002中,由于issue 159523002而在issue 48113024和the community中保持稳定!
我曾经对此进行了调查,并希望对我的调查结果进行编目,因为从历史角度来看,文档中存在一些差异which previously stated所需权限的名称为alwaysOnTop
,但使用此导致了< strong>&#34;权限未知&#34;
通过original proposal for this feature阅读引导我issue 326361,其中提到权限设置实际上称为alwaysOnTopWindows
。然而,当时使用这个产生了&#34;需要谷歌Chrome开发者频道或更新&#34; 错误(可能因为该功能尚未稳定)。
我 从browsing the source code找到了它的特殊情况,这两个权限可能是彼此的别名,但这可能是因为我不完全理解Chromium代码库。< / p>
答案 1 :(得分:4)
chrome.app.window.create
在更新版本的Chrome中支持布尔alwaysOnTop
选项。该功能目前在大多数平台上都处于测试阶段,其余部分至少是开发频道。