在Chrome 51中,隐身窗口现在有一个黑暗的工具栏背景,而以前的版本使用浅色背景。在这两种情况下,单个16x16图像通常不可能提供良好的对比度:
当通过browserAction
图标向用户显示信息时,扩展程序可以通过什么机制提供黑暗主题和浅色主题图标,并根据当前工具栏颜色在它们之间切换?
答案 0 :(得分:3)
现在还没有这样简单的机制,至少对于清单来说它听起来像excellent feature request to make。
通过检测隐身标签处于打开状态并替换该标签的浏览器操作图标,可以对此进行估算。
Private Sub DataGridView1_CellFormatting(sender As Object, e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
If e.RowIndex Mod 2 = 0 Then
e.CellStyle.BackColor = Color.Green
ElseIf Me.DataGridView1.Rows(e.RowIndex).Cells("YourTestField").Value = "YourValue" Then
e.CellStyle.BackColor = Color.Orange
End If
End Sub
Private Sub DataGridView1_SelectionChanged(sender As Object, e As System.EventArgs) Handles DataGridView1.SelectionChanged
Me.DataGridView1.ClearSelection()
End Sub
如果您正在使用var incognitoIcons = {
19: "incognito19.png",
38: "incognito38.png"
};
chrome.tabs.onCreated.addListener(function(tab) {
if (tab.incognito) {
chrome.browserAction.setIcon({
path: incognitoIcons,
tabId: tab.id
});
}
});
incognito behavior(非默认),则可以直接检测并更改隐身实例的全局图标:
"split"
请注意,内容脚本始终可以依赖// Somewhere in background during initialization
if (chrome.extension.inIncognitoContext) {
chrome.browserAction.setIcon({path: incognitoIcons});
}
,因此如果您触发浏览器操作图标更改,则可以将其传递给它。
显然,您可以使用inIncognitoContext
代替imageData
,而不是path
。
您可能需要查看Chrome版本;我不知道比提到here更好的方式。