Bug 391299 - Rectangular Region: Remember selected area by default
Summary: Rectangular Region: Remember selected area by default
Status: RESOLVED FIXED
Alias: None
Product: Spectacle
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Boudhayan Gupta
URL:
Keywords:
: 397072 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-03-02 15:00 UTC by Hubert Kaschulke
Modified: 2019-02-18 20:06 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 19.04.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Hubert Kaschulke 2018-03-02 15:00:12 UTC
Wish 1: last image size and position as default would be fine.

Sometimes you make hard copies from videos for example, and in this version you have always to set image size and position new again and again.

Wish 2: Visible SAVE button with last path as default
Comment 1 null 2018-03-02 16:36:44 UTC
Thanks for your message. Note that it's very important to only have one distinct topic per Bug, otherwise handling gets really complicated.

Please open a new bug for Wish 2, here we'll focus on Wish 1:

> last image size and position as default would be fine.
Reading this, I assume you mean the "Rectangular Region" tool (please specify such details in the future ;).

Good news for you: There is already a setting which you can check, it makes the tool remember the previously set size and position of the capture rectangle. You can access the configure dialog by clicking on the small arrow on the save button, and in the upcoming 18.04 release this will become a distinct button in the UI.

---

Nevertheless, given this comes up quite often I'd advocate to make remembering the region the default behaviour. Let's repurpose your bug for this.

The only detail to watch out for is how easy it is to draw a completely new rectangle. We might have to look at the help text, or add an overlay button to clear the old region.

Another way would be to behave like KSnapshot did: Remember the area for the session, and reset the area after an application restart.
Comment 2 Nate Graham 2018-03-03 05:03:59 UTC
Personally, I'm not in favor of remembering the last-used region by default. The most common use case for this is capturing before-and-after screenshots for bugs and patches. These are developer-centric workflows that I don't believe it's wise to optimize around. For people like us who do have this use case, there's a nice option, and it will even be more discoverable once the configure button is visible on the main window in 18.04.
Comment 3 null 2018-03-03 07:18:06 UTC
> Personally, I'm not in favor
Could you detail what the problem is if we did make it the default? So far your commment does not contain anything we could try to tackle to make any perceived problem go away.

> These are developer-centric workflows
More examples:
- Screenshots of videos, see comment 0 (VLC has an option, web browsers do not)
- Documenting progress in games.
- Creating tutorials of all kind.

Another option would be to make the checkbox to turn off remembering easily accessible in the overlay UI.
Comment 4 Nate Graham 2018-03-04 05:35:24 UTC
> Another option would be to make the checkbox to turn off remembering easily accessible in the overlay UI.

Now *that* I would approve of! Putting settings closer to the features they touch if often a good idea, and I think it makes a lot of sense here. If we do this, we probably don't need to enable it by default because it will completely discoverable and obvious for the people with use cases that could benefit from it.
Comment 5 null 2018-03-04 07:08:09 UTC
>> Personally, I'm not in favor
> Could you detail what the problem is if we did make it the default? So far
> your commment does not contain anything we could try to tackle to make any
> perceived problem go away.
Ping. You are avoiding to analyse the root issue ;)
Comment 6 Nate Graham 2018-03-06 12:57:43 UTC
The reason why I'm not in favor of turning this on by default is that it's not expected behavior, nor is it obvious to average users that they can simply replace the existing selection box by clicking and dragging a new one. A lot of people will assume they need to resize and move the existing one, which is a much slower, more frustrating workflow. In short, I believe it would degrade the UX for people who do not use the feature.

Like I said, I'm in favor of making the feature more discoverable for the people who would benefit from it.
Comment 7 null 2018-08-03 09:48:08 UTC
*** Bug 397072 has been marked as a duplicate of this bug. ***
Comment 8 null 2018-08-03 09:48:39 UTC
> The reason why I'm not in favor of turning this on by default is that it's
> not expected behavior, nor is it obvious to average users that they can
> simply replace the existing selection box by clicking and dragging
> a new one.
I disagree, and I think you are ignoring the following facts:
- People are often asking for it (see duplicate, where people say creating new selections would not become too difficult when I asked).
- There were no complaints in KSnapshot, which remembered the region until a restart of the app.

> Another option would be to make the checkbox to turn off remembering
> easily accessible in the overlay UI
I now tried to fit this into the existing overlay UI, and I'm very unhappy in how that turned out: It added bloat, it looked quite out-of-place, felt unnatural and most of all at that stage (i.e. when you already restarted capturing) it is too late, we already forgot the previous size. Nobody will see and check the box when taking the first screenshot, but everybody will get frustrated once they realized they should have checked the box before taking the second screenshot.

---

> I'm in favor of making the feature more discoverable 
> for the people who would benefit from it.
Alternative proposal for a combobox or radiobuttons in the settings dialog (wording not final):
- Remember region until restart (default, like KSnaphot)
- Remember region across restarts
- Do not remember region

This would have the following advantages:
- The novice users you are targetting only ever take a single screenshot, and would not be affected at all.
- People taking multiple screenshots in the same session for comparison purposes would get what they expect.
- Everybody else can get exactly what they want by changing the setting.
Comment 9 null 2018-08-03 13:03:14 UTC
BTW, as far as I can tell from https://youtu.be/4fWzNFzGjXk?t=193, the new macOS screenshot interface seems to also display a rectangle by default, without having to drag the cursor around.

(Please confirm whether that's the case, or it was simply due to the editing of that video.)
Comment 10 Nate Graham 2018-08-03 13:43:18 UTC
I haven't used the macOS Mojave developer preview yet, but what that video appears to show is that it displays *a* selection rectangle by default, not that it remembers the last selection rectangle you last used (I am making this guess because it's a pattern used in other macOS Software too: show a rect by default, but don't remember the last-used one).

> - There were no complaints in KSnapshot, which remembered the region until
> a restart of the app.
That I didn't know, and it's very relevant information. If it's what our users expect based on prior behavior, the requests make a lot more sense now.


> Alternative proposal for a combobox or radiobuttons in the settings dialog
> (wording not final):
> - Remember region until restart (default, like KSnaphot)
> - Remember region across restarts
> - Do not remember region
I like this idea. Let's do it.
Comment 11 null 2018-08-03 15:32:11 UTC
> it displays *a* selection rectangle by default,
> not that it remembers the last selection rectangle
Your concern was about the initial selection rectangle as such, how the initial size is determined has nothing to do with this.

>> KSnapshot, which remembered the region until restart of the app.
> That I didn't know, and it's very relevant information.
It's not as if I didn't mention this in Comment 1>> Alternative proposal for a combobox or radiobuttons in the settings dialog
> I like this idea. Let's do it.
Glad to hear that.
Comment 12 Nate Graham 2019-02-18 19:04:10 UTC
Git commit ce977bc0a3e6d16fcb0baf0c18072d67149418e7 by Nate Graham, on behalf of David Redondo.
Committed on 18/02/2019 at 19:03.
Pushed by ngraham into branch 'master'.

Add option to remember rectangular region until next restart

Summary:
This adds an option to rememeber the last rectangular region until the next restart. If the user previously had selected the old remember region
checkbox the "remember across restarts will be selected" to preserve the old behavior. Also reorganised the settings page a bit. Something to
think about is changing  the "General" settings page to one specific to rectangular region as it contains only options for it.
Old:{F6621352} New:{F6621355}

Reviewers: #spectacle, #vdg, ngraham

Reviewed By: #spectacle, #vdg, ngraham

Subscribers: ngraham, #spectacle

Tags: #spectacle

Differential Revision: https://phabricator.kde.org/D19117

M  +30   -9    src/Gui/SettingsDialog/GeneralOptionsPage.cpp
M  +3    -1    src/Gui/SettingsDialog/GeneralOptionsPage.h
M  +12   -0    src/SpectacleConfig.cpp
M  +3    -0    src/SpectacleConfig.h
M  +6    -0    src/SpectacleCore.cpp

https://commits.kde.org/spectacle/ce977bc0a3e6d16fcb0baf0c18072d67149418e7
Comment 13 Nate Graham 2019-02-18 20:06:02 UTC
Git commit 4c2cedbe25d35223a96fcc8bdb37bbb7aa5048e3 by Nate Graham, on behalf of David Redondo.
Committed on 18/02/2019 at 20:05.
Pushed by ngraham into branch 'master'.

Change default behavior to remembering the selected region until Spectacle is closed

Summary:
Change the default to remembering the selected region until the next restart while still preserving the old behavior if a user had previously selected "remember region" which worked across restarts.
FIXED-IN: 19.04.0

Reviewers: #spectacle, #vdg, ngraham

Reviewed By: #spectacle, #vdg, ngraham

Subscribers: #spectacle

Tags: #spectacle

Differential Revision: https://phabricator.kde.org/D19130

M  +3    -2    src/SpectacleConfig.cpp

https://commits.kde.org/spectacle/4c2cedbe25d35223a96fcc8bdb37bbb7aa5048e3