Skip to content

🚀 功能建议:左键单击menubar上icon直接展开translate界面 #53

Open

Description

@oxoxoxox

请先确认以下事项

  • 已仔细阅读了 README
  • 在 issues 页面搜索过,未发现类似功能建议
  • Easydict 已升级到最新版本

功能描述

希望menubar上icon的左键单击和右键单击,可以做成不同的动作。
类似MenubarX这个App一样,左键单击就展开translate界面,右键单击还是展开功能菜单。
虽然组合快捷键也能方便的打开translate界面,但各种app设置了很多组合快捷键之后,就容易发生冲突,或者是记错。
想翻译的时候,左键单击一下icon,然后Cmd+V,就也比较方便快捷。

使用场景(可选)

No response

实现方案(可选)

No response

Activity

  1. github-actions commented on Apr 17, 2023

    @github-actions
    Contributor

    Hello oxoxoxox, Thank you for your first issue contribution 🎉

  2. tisfeng commented on Apr 17, 2023

    @tisfeng
    Owner

    感谢你的反馈,我也谈谈我的理解。

    直接点击图标触发查询界面,会很容易误操作,而状态栏图标的右键操作,这需要培养 or 修改常规用户的使用习惯,如果不是很有必要,我不太看好这种设计。

    如果用户觉得查词翻译对他来说是一种高频操作,那给它一个方便记忆的快捷键,应该是值得的,否则还不如点击状态栏图标查询来的快。

    如果只是想要一种便捷的使用方式,使用鼠标,自动划词翻译是最佳选择。

  3. oxoxoxox commented on Apr 18, 2023

    @oxoxoxox
    Author

    直接点击图标触发查询界面,会很容易误操作,而状态栏图标的右键操作,这需要培养 or 修改常规用户的使用习惯,如果不是很有必要,我不太看好这种设计。

    误操作,我认为这不是一个问题,因为不论是弹出translate界面,还是弹出菜单界面,用户想取消的话,正常的操作都是再点击一下空白区域。
    不过你说的用户习惯这确实是一个问题,可能部分用户会需要几天时间来适应。
    这个是否可以做成一个可以用户自定义的feature,让用户在设置里面管理左键单击和右键单击的触发动作,这样既能照顾既有用户的习惯,也能满足像我这种特殊用户的需求。


    如果用户觉得查词翻译对他来说是一种高频操作,那给它一个方便记忆的快捷键,应该是值得的,否则还不如点击状态栏图标查询来的快。

    快捷键存在的问题是,部分App有它自己的一套快捷键组合(两三组、甚至几十组),可能会起冲突。用户需要找到一套不会和其他App冲突的、并且容易记忆的快捷键组合,这个可能会花费一定的时间。


    如果只是想要一种便捷的使用方式,使用鼠标,自动划词翻译是最佳选择。

    因为现在很多App都有自己的划词弹出菜单,比如PopClip,比如各种Chrome扩展插件,比如飞书在线文档自带的划词菜单,多种菜单放在一起,一般都是的划词的上方或者下方,很容易多个菜单重叠,导致用户不容易点中。
    比如下面这种情况:
    image
    就比较尴尬。。。😅

  4. tisfeng commented on Apr 18, 2023

    @tisfeng
    Owner

    你说的也有道理,有些情况是我没有考虑到 😦 我想一下。

  5. tisfeng commented on Apr 18, 2023

    @tisfeng
    Owner

    思考了一下,本打算尝试右击打开查询窗口(或者其他功能),看看效果,但研究过后,发现这里面有坑 🥲

    由于苹果官方的 API 设计,如果状态栏图标附加了菜单列表,那就不能再添加点击事件了(包括右击),也就是说苹果官方不赞成这种设计,这可能也是很少见到这种图标右击功能的主要原因吧。

    测试下来,我电脑上的众多应用中,只有 NightOwl 和 PopClip 很巧妙恰当地使用了这个特殊功能,其中 NightOwl 的右击会自动在深色和浅色模式中切换,很棒(尤其在我测试深色模式代码的时候很有用!)。但它们都不是开源应用,不知道到底用了什么 trick,我查了一些资料,也问了 ChatGPT,但都没有得到答案 😭

  6. oxoxoxox commented on Apr 19, 2023

    @oxoxoxox
    Author

    我觉得可以参考Itsycal的实现,不绑定menu对象,而是自己实现window的显示
    https://github.com/sfsam/Itsycal/blob/master/Itsycal/ViewController.m 这里的 createStatusItem 函数,通过监听click的函数statusItemClicked,在收到click event之后,再创建window

  7. oxoxoxox commented on Apr 19, 2023

    @oxoxoxox
    Author

    另外,https://github.com/serhii-londar/open-source-mac-os-apps#menubar 这里也收集了很多开源的menubar app,可以收集思路

  8. tisfeng commented on Apr 19, 2023

    @tisfeng
    Owner

    感谢!稍后我去研究一下~

  9. wantg commented on Oct 30, 2026

    @wantg

    在菜单栏点击图标时,点左键出翻译面板,点右键出菜单。
    对习惯用鼠标的用户会更友好。

    在 MacOS 上的传统做法是,点击菜单栏不区分按键,统一出现菜单,很多 App 都这么设计。
    但不意味着只能这么做,OS 自带的很多图标就会区分按键实现不同的功能。

    建议增加这个功能。

  10. Issues-translate-bot commented on Oct 30, 2026

    @Issues-translate-bot

    Bot automatically translated this content.


    When clicking an icon in the menu bar, left-click to bring up the translation panel, and right-click to bring up the menu.
    It will be more friendly to users who are accustomed to using a mouse.

    The traditional approach on MacOS is to click the menu bar without distinguishing the buttons and the menu will appear uniformly. Many apps are designed this way.
    But that doesn’t mean you can only do this. Many of the icons that come with the OS will distinguish between buttons to implement different functions.

    It is recommended to add this function.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions