Currently there is no way for the user to configure what happens when he takes a screenshot via shortcut when Spectacle is not running. Instead we use some default values.
I propose adding a settings page where the user can configure the screenshots taken in DBus-Mode. I would include whether to capture the mouse pointer and the window decorations.
Also if the image should be saved or copied to the clipboard (see D23162). The defaults would probably be a checkbox "Use the same settings as when spectacle is running" which enables/disables the other controls.
Relevant Bugs/Feature requests: 39712, 39205, 375382
Description
Related Objects
- Mentioned In
- D28395: Added CopyToClipboard parameter to dbus RectangularRegion and set up shortcut keys
T11422: Spectacle - Tasks after screenshot has been taken/saved - Mentioned Here
- T11422: Spectacle - Tasks after screenshot has been taken/saved
D23162: Add option to additionally save screenshot to clipboard
I can add a DBus-mode Settings panel in the config menu of Spectacle.
Give me a bit until I find all the possibles DBus Settings.
Question: How can I test all the DBus stuff? With QTDbusviewer or do you know of a better way?
Instead, could we have the DBus mode invocations read the current settings from Spectacle itself? The user can already configure whether to include the cursor via the main UI; it seems like it would be preferable to read this setting rather than adding a second one in the settings window to control the same thing.
Yes! Sounds way better!
Which settings should DBus mode read?
I'd go with:
- include mouse pointer
- Save location
- Filename
Area would be fullscreen?
We could already do that. But for me these are two different use cases. For my screenshots taken using shortcuts I want a good default. If I open Spectacle and use specific settings it is usually because I want them only for the screenshot I am wanting to take right now. That's also why they are instant apply - they are used to configure the screenshot right now. If I exclude the mouse pointer and window decorations for one Screenshot I wouldn't want to set them back to their old value to get the old behavior for shortcuts back.
Save Location and default filename is already respected.
It would be whether to include mouse cursor and window decorations and if the image should be saved or copied to the clipboard.
So a DBus Settings panel with:
- include mouse pointer [checkbox]
- include window decoration [checkbox]
- copy image to clipboard or save it [2x radiobutton]
Is that what you have in mind?
Edit: maybe we can unite all the 'do after Screenshot has been made' stuff under Tasks? -> T11422
Yes something like that. Thinking about it it could also be added to the Shortcuts page because it defines what happens when a Shortcut is pressed?
Got me into thinking:
The user sets a Shortcut and connects it to a Task.
What if, this would require quite a lot to do, we make an Task creator panel. Where a User can create his own Task and give it a name. Then, in the Schortcut settings, the user chooses which Task gets called for a specific Shortcut.
Creating a Task could include all of Spectacles functionality: After screenshot has been taken, save/edit/clipboard/... it, upload it, close Spectacle, etc.
Whereas the User sets the desired actions for a task with Checkboxes and Radiobuttons, and can have multiple tasks.
Similar to Message Filters in Thunderbird. I hope i described it well enough.
Now you got my imagination running :)
^this one should be part of T11422
This still leaves us with the DBus Settings panel, which would be required as an independent part for the users who don't need/want tasks.
Hello, I've just submitted D28395 which adds the copy to clipboard capability for DBus, which this discussion mentions.
I had not seen this discussion earlier. Have I redone any already done work?
Also, I had been thinking that there needs to be another Settings Page to modify shortcut key behavior.
In my opinion, this should be separate from the settings used when we open the Spectacle GUI.
As @davidre said, these are separate use cases for me.
P.S. I am new here, so kindly correct me if it was not appropriate to post here or I've done something wrong!