Coder Social home page Coder Social logo

Capture `screenshot` events about ipfs-desktop HOT 18 CLOSED

ipfs avatar ipfs commented on May 17, 2024
Capture `screenshot` events

from ipfs-desktop.

Comments (18)

daviddias avatar daviddias commented on May 17, 2024 2

It should not be enabled by default and if enabled, it should let the user pick a custom key shortcut for it to activate.

from ipfs-desktop.

jbenet avatar jbenet commented on May 17, 2024

πŸ“· πŸŒ† πŸ‘

from ipfs-desktop.

whyrusleeping avatar whyrusleeping commented on May 17, 2024

that seems sketchy to me..

from ipfs-desktop.

jbenet avatar jbenet commented on May 17, 2024

that seems sketchy to me..

why?

from ipfs-desktop.

whyrusleeping avatar whyrusleeping commented on May 17, 2024

we're going to capture every single screenshot someone takes on their computer? maybe as like an extreme multiclick opt in... but otherwise that seems a bit invasive.

from ipfs-desktop.

daviddias avatar daviddias commented on May 17, 2024

@whyrusleeping other apps are currently doing that, as an opt-in of course. We can have a special keyboard shortcut for ipfs screenshots, but capturing the natural events from the events is more convenient to the user (+ Mac OS screenshots are really cool)

from ipfs-desktop.

jbenet avatar jbenet commented on May 17, 2024

we're going to capture every single screenshot someone takes on their computer?

oh what, somehow i missed that. @diasdavid i think that's pretty sketchy. we can allow the user to change the key combinations, and they can set that up. i think that's how Skitch and friends work?

(i.e. start with our own key combination, and let user change it to override default osx one)

from ipfs-desktop.

daviddias avatar daviddias commented on May 17, 2024

Well, cloudapp, couldup and dropbox capture everything. Custom keyboard shortcut is fine too

from ipfs-desktop.

dignifiedquire avatar dignifiedquire commented on May 17, 2024

I suggest that by default we capture all screenshots and add a setting where one can disable it.

from ipfs-desktop.

daviddias avatar daviddias commented on May 17, 2024

I like that @dignifiedquire :)

from ipfs-desktop.

bcomnes avatar bcomnes commented on May 17, 2024

Anyone know how this will interact with other apps capturing screenshots? Dropbox comes to mind.

from ipfs-desktop.

jbenet avatar jbenet commented on May 17, 2024

I suggest that by default we capture all screenshots and add a setting where one can disable it.

I like that @dignifiedquire :)

i really don't. @whyrusleeping is right -- this is a privacy problem. I think we should do what many other apps do and create a shortcut that you can use (separate), but which you can rebind to override your normal one. That way the user is in control.

eg i have https://github.com/jbenet/ipfs-screencap bound to CMD+SHIFT+2 on OSX

from ipfs-desktop.

dignifiedquire avatar dignifiedquire commented on May 17, 2024

There is an open PR on electron to make this a whole lot easier: electron/electron#2963 so I suggest we wait for that to be merged.

from ipfs-desktop.

hacdias avatar hacdias commented on May 17, 2024

What's the state of this issue? Is this feature still wanted? πŸ˜„

from ipfs-desktop.

hacdias avatar hacdias commented on May 17, 2024

Done on #562. The shortcut cmd/ctrl+alt+s is always enabled (was following #31). Should there be an option to activate/deactivate?

from ipfs-desktop.

lidel avatar lidel commented on May 17, 2024

Yes, there should be an UI for changing or at least deactivating keyboard shortcuts, otherwise we will make random people sangry (sad+angry πŸ™ƒ).

(tl;dr will now commence)

When it comes to shortcuts, it is very likely we will run into problems on different platforms / machines.

Combinations that are unused on linux/macOS may be hijacked by default on MS Windows (example: lidel/google-music-hotkeys#3 (comment)) or even by some third party app that "user been running for past 5 years and don't want to change established habits".

A good place too look at for prior-work is the browser extension ecosystem, which had to tackle the same problem, being OS-agnostic. WebExtensions can define keyboard shortcuts as commands in manifest.info in a platform-specific way:

"commands": {
  "toggle-feature": {
    "suggested_key": {
      "default": "Alt+Shift+U",
      "linux": "Ctrl+Shift+U"
    },
    "description": "Send a 'toggle-feature' event to the extension"
  },
  "do-another-thing": {
    "suggested_key": {
      "default": "Ctrl+Shift+Y"
    }
  }
}

On top of that, Google Chrome provides UI for customizing shortcuts
Worth noting that Firefox does not provide UI yet, so user has no choice but to use defaults from manifest.info, thich means developer should be extra conscious about which key combination is picked.

from ipfs-desktop.

hacdias avatar hacdias commented on May 17, 2024

@lidel unfortunately, Electron doesn't have a way to add different default shortcodes for each operating system. And even when we add a shortcut, it may fail silently if there is already another shortcut with those keys. This way, I cannot know if there is some program already using that shortcut.

Right now I'm only letting the user enable/disable CTRL/CMD+ALT+S for the screenshot. In the future I'll add the option to edit the letter. πŸ˜„ What do you think?

from ipfs-desktop.

lidel avatar lidel commented on May 17, 2024

Yup, sounds good πŸ‘

from ipfs-desktop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.