[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-graphics-devel
Subject:    [Kde-graphics-devel]  KSnapshot filenames workflow
From:       Pau Garcia i Quiles <pgquiles () elpauer ! org>
Date:       2010-11-10 22:37:38
Message-ID: AANLkTi=yi6ofQBj-dFuKKbQxBjbwBnwKRiPQdxASD2p0 () mail ! gmail ! com
[Download RAW message or body]

Hello,

Recently I have been adding some features to KSnapshot and I have
noticed the workflow is a bit counterintuitive in regards to:
- The behavior when you open KSnapshot (a snapshot is taken but it's
not available to Send To... actions)
- Archive naming and autoincrement, filename shown in the window
caption (sometimes the window caption makes you think the screenshot
has already been saved while it has not)

If you are using 4.5.3 or older and wondering what is this "Send
To...": it's the new name for "Open With...". With the addition of
KIPI actions, "Open With..." made little sense for printing,
e-mailing, uploading to Facebook, etc

Maybe it's me, maybe I don't grasp the current workflow, or maybe it
is broken. If you feel the 4.5.3 workflow is the right one, please
comment.

The workflow I'm proposing introduces two fundamental changes:

1. Never show the proposed filename in the window caption because it
leads the user to think the screenshot has been automagically saved.
Instead, show "unsaved screenshot" when the picture has not been saved
yet, and keep the proposed filename internal for the Save As...
dialog.

2. When Send To... implies an action which only needs the file
temporarily (for instance, KIPI plugins: e-mail, upload to Facebook,
print, etc), save to /tmp (same as now). When Send To... is for a
permanent storage (for instance: edit with Krita, edit with
KolourPaint, etc), ask the user to save the file to some place, to
make sure he knows where to look for next week.

I would like to have this for KDE 4.6. Given that November 11th
(tomorrow) is string freeze, I cannot add the "unsaved screenshot"
string. I think I can still get this done for 4.6 if instead of
"unsaved screenshot" we use an empty string, which might be a little
bit less intuitive but still much better than the current (IMHO
broken) workflow.

Opinions, please.

----8<------------------------------------------------------------------------------------
 Starting KSnapshot
===============

Current behavior:

1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows the filename proposed for the NEXT time you
click Save As... It does not say "[modified]"
5. Given that a file with the proposed filename does not exist yet, if
you try to open the screenshot with Send To... KolourPaint, Krita,
some KIPI plugin, etc, it won't work. Best case, it will open the
application with an empty document. Worst case, application/plugin
will crash. This is very counterintuitive: preview window shows a
screenshot, window caption shows a filename (which does not exist),
yet if you Send To... anywhere you get the application you sent to and
see nothing but a blank screen (best case), or a crash (worst case)

Proposed behavior:

1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. If you try to open the screenshot with Send To... KolourPaint,
Krita, some KIPI plugin, etc:
    5.1. If user clicked on a KIPI action:
       5.1.1. A temporary file will be automatically saved to
/tmp/proposedfilename.png (for instance /tmp/myscreenshot3.png)
       5.1.2. KIPI plugin is run, gets work done using /tmp/proposedfilename.png
       5.1.3. When we are back from the KIPI action, window caption
still says "unsaved screenshot [modified]"
    5.2. If user clicked on a non-KIPI action:
       5.2.1. Save As dialog pops up, proposed filename is shown (but
user can modify it) and picture is saved
       5.2.2. Then it's opened with the non-KIPI action
       5.1.3. When we are back from the non-KIPI action, window
caption shows the filename user entered at step 5.2.1
       Rationale: The reason for showing the Save As dialog is if user
opens a screenshot in, say, Krita, he probably wants to do some
editing on the image. Should we save to /tmp, picture will be lost
next time he reboots. When we are back from the KIPI action, window
caption shows the filename the user entered


Taking a snapshot
==================

Current behavior:

1. KSnapshot takes a screenshot in the capture mode the user specified
2. Window caption shows the filename proposed for the NEXT time you
click Save As... It does say "[modified]"
3. A file with the proposed filename does not exist yet, BUT if you
try to open the screenshot with Send To... KolourPaint, Krita, some
KIPI plugin, etc, KSnapshot will create a temporary file and opening
the screenshot with Send To... works fine. Until user reboots and
tries to open the image file, which no longer exists because it was
saved to /tmp.

Proposed behavior:
Same as for "Starting KSnapshot", but steps 2 and 3 should be
"KSnapshot takes a screenshot in the capture mode the user specified"
/ "Preview shows the screenshot in the capture mode the user
specified"


Saving
=====

Current behavior:

1. After taking a snapshot, KSnapshot window shows a filename (which
does not exist on disk) as window caption and "[modified]" next to the
filename
2. When you click Save As, KSnapshot automatically fills the Name
field in the Save As dialog with the same filename which is shown in
the window caption
3. After saving, window caption shows the new proposed filename and
preview window shows the preview for the just-saved screenshot. It no
longer says "[modified]" next to the filename.
4. Yet if you try to Send To... KolourPaint, Krita, KIPI, etc you are
in the same case as "Starting KSnapshot": preview window shows a
screenshot, window caption shows a filename (which does not exist), if
you Send To... anywhere you get the application you sent to and see
nothing but a blank screen (best case), or a crash (worst case)

Proposed behavior:

1. After taking a snapshot, KSnapshot shows "unsaved screenshot
[modified]" as window caption
2. When you click Save As, KSnapshot automatically fills the Name
field in the Save As dialog with the proposed filename
3. After saving, window caption shows the just-saved filename and
preview window shows the preview for the just-saved screenshot. It no
longer says "[modified]".
4. As file does exist, Send To... whatever works fine


Copying to the clipboard
===================

Current behavior:

1. Clicking on Copy copies to the clipboard, regardless of the
screenshot being saved to disk or not

Proposed behavior:

Keep current behavior


Use cases
========

1. User opens KSnapshot, sends to KIPI plugin
------------------------------------------------------

1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. User clicks on Send To... -> some KIPI plugin
       5.1. A temporary file will be automatically saved to
/tmp/proposedfilename.png
       5.2. KIPI plugin runs, gets works done
       5.3. When we are back from the KIPI action, window caption
still says "unsaved screenshot [modified]"


2. User opens KSnapshot, sends to Krita
-----------------------------------------------

1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. If you try to open the screenshot with Send To... Krita
       5.1. Save As dialog pops up, proposed filename is shown (but
user can modify it) and picture is saved
       5.2. Then it's opened with Krita, where the user may edit it
       5.3. When we are back from Krita, window caption shows the
filename user entered at step 5.1


3. User opens KSnapshot, takes a freehand region snapshot, sends to KIPI plugin
----------------------------------------------------------------------------------------------


1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. User selects freehand region capture mode
6. User clicks on "Take a new snapshot"
7. KSnapshot takes a screenshot in the capture mode the user specified
8. Preview shows the screenshot in the capture mode the user specified
9. Window caption shows "unsaved screenshot [modified]"
10. User clicks on Send To... -> some KIPI plugin
       10.1. A temporary file will be automatically saved to
/tmp/proposedfilename.png
       10.2. KIPI plugin runs, gets works done
       10.3. When we are back from the KIPI action, window caption
still says "unsaved screenshot [modified]"


4. User opens KSnapshot, takes a freehand region snapshot, sends to Krita
----------------------------------------------------------------------------------------


1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. User selects freehand region capture mode
6. User clicks on "Take a new snapshot"
7. KSnapshot takes a screenshot in the capture mode the user specified
8. Preview shows the screenshot in the capture mode the user specified
9. Window caption shows "unsaved screenshot [modified]"
10. If you try to open the screenshot with Send To... Krita
       10.1. Save As dialog pops up, proposed filename is shown (but
user can modify it) and picture is saved
       10.2. Then it's opened with Krita, where the user may edit it
       10.3. When we are back from Krita, window caption shows the
filename user entered at step 10.1


5. User opens KSnapshot, saves full desktop snapshot, takes another
snapshot in freehand region capture mode and saves it
--------------------------------------------------------------------------------------------------------------------------------------------------


1. User starts KSnapshot
2. KSnapshot takes a screenshot of the full desktop
3. Preview shows the screenshot of the full desktop
4. Window caption shows "unsaved screenshot [modified]"
5. When you click Save As, KSnapshot automatically fills the Name
field in the Save As dialog with the proposed filename
6. After saving, window caption shows the just-saved filename and
preview window shows the preview for the just-saved screenshot. It no
longer says "[modified]".
5. User selects freehand region capture mode
6. User clicks on "Take a new snapshot"
7. KSnapshot takes a screenshot in the capture mode the user specified
8. Preview shows the screenshot in the capture mode the user specified
9. Window caption shows "unsaved screenshot [modified]"
5. When you click Save As, KSnapshot automatically fills the Name
field in the Save As dialog with the proposed filename
6. After saving, window caption shows the just-saved filename and
preview window shows the preview for the just-saved screenshot. It no
longer says "[modified]".

----8<------------------------------------------------------------------------------------


I would like to have this for KDE 4.6. Given that November 11th
(tomorrow) is string freeze, I cannot add the "unsaved screenshot"
string. I can still get this done for 4.6 if instead of "unsaved
screenshot" we use an empty string, which might be a little bit less
intuitive but still much better than the current (IMHO broken)
workflow.

Opinions, please.

-- 
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)
_______________________________________________
Kde-graphics-devel mailing list
Kde-graphics-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-graphics-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic