阅读:5402回复:6
autoproxy在firefox 29.0下面的状态栏显示的问题
昨天刚升级了firefox到29.0,发现没有了状态栏,于是去下了一个状态栏的add-on,叫做 Status-4-Evar 2014.04.27.21,然后把该拖拽的add-on的图标都放入了状态栏。
autoproxy用的是这个版本Firefox 21-27的 AutoProxy 扩展20131215更新| 气吞寰宇,图标我自己改过了,为了让autoproxy的状态显示出来,首先需要在autoproxy的preference里面,打勾“show in toolbar” (注意,如果打勾show in status bar是没有用的,因为firefox29已经没有状态栏了)。 现在的情况是,autoproxy的图标是能显示在status-4-Evar的状态栏里面了,但是就是其图标是一个凹下去的样子(就是像按钮被按下去了一样),如下图: 大侠帮忙看看有和解决办法,谢谢。 |
|
最新喜欢:![]()
|
1楼#
发布于:2014-05-01 13:29
看了一下,在 Firefox 21-27的AutoProxy扩展20131215更新 | 气吞寰宇 的第三页里面有一个comment是这么写的。
20131205版在火狐26下会导致工具栏的福字图标不弹起,用右键点一下福字图标,在用左键点击(点击图标时 ==> 快捷菜单),图标就陷下去了。实际上是和我的问题一样的,不知道有没有啥解法?谢谢。 |
|
|
2楼#
发布于:2014-05-01 15:35
我对firefox的addon开发一点概念没有,我感觉应该是里面的哪个代码出现问题了,于是从 https://github.com/agunchan/autoproxy 里面下了源代码,胡乱搜索了一番。搜索关键字是 toolbar,我大概看到有这么一个代码:D:\autoproxy-master\autoproxy-master\chrome\content\ui\browserWindow.js 里面有这么一个代码
// Handle clicks on statusbar/toolbar panel function aupClickHandler(e) { if (e.button == 1) cycleProxyMode(); // e.button is undefined when left click on tool bar icon else if (e.button != 2 && e.target.tagName != 'menuitem') aupExecuteAction(e.target.tagName == 'image' ? prefs.defaultstatusbaraction : prefs.defaulttoolbaraction, e); } // Executes default action for statusbar/toolbar by its number function aupExecuteAction(action, e) { switch (action) { case 0: e.target.open = true; break; case 1: toggleSidebar(); break; case 2: aup.openSettingsDialog(); break; case 3: cycleProxyMode(); break; case 4: // cycle default proxy if (aup.proxyTipTimer) aup.proxyTipTimer.cancel(); prefs.defaultProxy = ++prefs.defaultProxy % proxy.server.length; prefs.save(); // show tooltip let tooltip = E("cycleDefaultProxy"); tooltip.label = aup.getString('default_proxy') + ": " + proxy.nameOfDefaultProxy; if (e.screenX && e.screenY) tooltip.openPopupAtScreen(e.screenX, e.screenY, false); else tooltip.openPopupAtScreen(e.target.boxObject.screenX, e.target.boxObject.screenY, false); aup.proxyTipTimer = Components.classes["@mozilla.org/timer;1"].createInstance(Components.interfaces.nsITimer); aup.proxyTipTimer.initWithCallback( {notify: function(){tooltip.hidePopup()}}, 2000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); break; case 5: // default proxy menu let popup = E("aup-popup-defaultProxyList"); makeProxyItems(popup); if (e.screenX && e.screenY) popup.openPopupAtScreen(e.screenX, e.screenY, false); else popup.openPopupAtScreen(e.target.boxObject.screenX, e.target.boxObject.screenY, false); break; default: break; } }是不是这个地方有一个注释: // e.button is undefined when left click on tool bar icon 意味着某个操作有点问题?按照我目前的情况,实际上是autoproxy在toolbar的图标,我把它拖拽到了状态栏插件status-4-Evar里面,所以这种情况下,不知道是啥个函数响应方式?? 本文不懂javascript,从未接触过firefox的addon相关设计,但是有C和C++的基础,希望大侠指点迷津,谢谢。 |
|
|
3楼#
发布于:2014-05-01 16:16
我用moveButton那个uc脚本到处移
|
|
|
4楼#
发布于:2014-05-01 17:06
pcxfirefox:我用moveButton那个uc脚本到处移回到原帖你能不能告诉我你这个脚本的具体地址?我搜索找不到。 |
|
|
5楼#
发布于:2014-05-01 18:55
ollydbg23:你能不能告诉我你这个脚本的具体地址?我搜索找不到。回到原帖https://github.com/ywzhaiqi/userChromeJS/tree/master/moveButton |
|
|
6楼#
发布于:2014-05-01 20:17
pcxfirefox:https://github.com/ywzhaiqi/userChromeJS/tree/master/moveButton回到原帖谢谢,但是我看了一下,貌似不知道怎么弄这个东西,现在我还是期待直接由什么方法能直接修改autoproxy的源代码脚本,我感觉应该不是很复杂,就是需要牛人点拨一下。 |
|
|