Ubuntu – Should a new screenshot tool automatically set itself to work on pressing the PrtSc key

configurationusability

Having just written my perfect screenshot tool, I've been trying to work out how it should set itself up for use by people who are not me. Screenshots are traditionally taken by pressing the PrtSc key. So, I could do the following things:

As soon as the app is installed, make pressing PrtSc invoke the app

Pros:

  • works immediately, out of the box, as expected. A user installs the app, hits PrtSc, they get the app they've just installed. Hooray.

Cons:

  • unconditionally overrides any existing setup you have for PrtSc, which might be annoying
  • if you uninstall the app, it won't reset PrtSc to what it was before, which is also annoying
  • problematic for multiple users, because app installation runs under sudo, so how does it know which user's PrtSc setup to override? It's certainly possible to add a gconf key as part of installation, but that may be problematic if two different screenshot apps both try?

On first-run of the app, seize the PrtSc key

Pros:

  • avoids the above problem of wrongly seizing other users' PrtSc keys

Cons:

  • you have to run the app once manually first, which is annoying (and how do you know how to do that?)
  • will still not restore the old setting if the app is uninstalled

Have a configuration dialog in the app where you configure it to seize PrtSc

Pros:

  • Only seizes PrtSc for people that really want it to

Cons:

  • you have to run the app once manually first, which is annoying (and how do you know how to do that?)
  • you have to go into a configuration dialog to make the app actually do what it's intended to do; take screenshots when you press PrtSc. Ubuntu is past that configure-everything stage now, surely? How irritating. Not doing this!

Something else I haven't thought of

A better cleverer approach that just hasn't dawned on me yet.

Suggestions welcomed!

Best Answer

I think scenario A and C are the way to go.

You could plug into the Alternatives system and add the relevant entry to the System → Preferences → Default Applications screen, like this:

alt text

I believe that setting yourself as default on install is fine, however. Displaying a notice on first run asking each user if they want to use the previous default instead would be nice.

(Is it even possible to add a new entry in that dialog?)

Related Question