Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-08 Thread Jacobo Aragunde Pérez
El 03/10/13 14:45, Jan Holesovsky escribió:
 Jacobo Aragunde Pérez píše v Čt 03. 10. 2013 v 10:24 +0200:
 ...
 2. Immutable shapes can be saved to docx with no data loss, but they are
 transformed to a shape group when saved to odt and this process
 introduces some errors.
 ...
 Regarding 2., couldn't we roundtrip the metadata as some blob in the ODT
 too?  Otherwise sounds great to me :-)
 

That's a good idea. I'll start working on point 2 trying to preserve
SmartArt metadata when saving to .odt.

 ...
 Finally, would you agree on temporarily adding an entry to the options
 dialog as described at [2] for the short term?
 
 If you commit to further improving as you have described above, I won't
 push back on this - I prefer code included early; gets more testing 
 feedback that way, and won't bitrot.
 

Andrés has pushed to gerrit a set of patches to implement the issue as
it was previously described (with a new entry in the options dialog).

 Thank you a lot,

Thanks to you all for your time :)

 [2]
http://lists.freedesktop.org/archives/libreoffice-ux-advise/2013-October/002399.html
-- 
Jacobo Aragunde
Software Engineer at Igalia
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-03 Thread Jacobo Aragunde Pérez
El 02/10/13 16:45, Jan Holesovsky escribió:
 ...

 Just so that this does not lead to confusion - SmartArt being a real
 group shape is a relatively recent fix:


http://cgit.freedesktop.org/libreoffice/core/commit/?id=59373b753902f69cd44d183568b084429322e7ab

 In the previous versions it has been broken into individual shapes which
 is the worst of all options from my point of view - but having a group
 shape that the user has to explicitly ungroup to do his/her
 modifications + drop the smartart metadata with this ungroup operation
 seems reasonably valid to me (if we have undo for that, that is).


Just a side note: this patch affects to .ppt importing, SmartArt was
already being imported as shape groups in Writer. These shape groups
cannot be exported back to docx due to bug #70060 [1] but that's a
different topic ;)


Extracting some conclusions from the feedback in this thread, probably
the most reasonable path having mid-term in mind would be:

1. SmartArt should be imported in an immutable way by default,
preserving the original metadata.
2. Immutable shapes can be saved to docx with no data loss, but they are
transformed to a shape group when saved to odt and this process
introduces some errors.
3. A context menu entry or custom toolbar button should present the
possibility to edit the diagram. If pressed:
   3.1 User is warned that some data loss could happen.
   3.2 Original metadata is removed at this point.
   3.3 Diagram is transformed into individual shapes.
4. Edited shapes could be saved back to a docx document but that could
imply again some data loss.

We have already implemented 1 using a bitmap that is placed instead of
the shapes (do you know some way to lock the edition of a shape group?
That would be really helpful). We have started to take a look at 3.3, it
implies hot-replacing our bitmaps with the actual shapes and it could
require some time. The main challenge is 4 because it implies to fix [1]
so shapes are not completely lost (because metadata is removed in 3.2).

Finally, would you agree on temporarily adding an entry to the options
dialog as described at [2] for the short term?

Thanks to you all for your help and feedback on the matter :)

[1] https://bugs.freedesktop.org/show_bug.cgi?id=70060
[2]
http://lists.freedesktop.org/archives/libreoffice-ux-advise/2013-October/002399.html

-- 
Jacobo Aragunde
Software Engineer at Igalia
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Samuel Mehrbrodt

Hi Jacobo,

good to see this being improved. I don't think an option in the Options 
dialog is the best way to go. Users might not expect it there and think 
it's a bug that you can't edit SmartArt (because you could before)


I have another suggestion:
You could disable editing SmartArt by default and offer editing via the 
context menu. Would that be possible to convert the SmartArt live to 
shapes when the user wishes it?


Thanks
Samuel

Am 01.10.2013 17:49, schrieb Jacobo Aragunde Pérez:

Hi :)

Lately we have been working on SmartArt support on Writer. As you know,
in 4.1 and prior the SmartArt figures were imported to LO shapes but
they weren't exported back when saving to docx, causing data loss.

Our first approach, which is already pushed to master, was saving the
full SmartArt information in the InteropGrabBag of the shapes and save
it back when exporting to docx. In this situation, users are allowed to
do changes to the shapes but these changes are not saved back.

That takes us to the next step: we want to make imported SmartArt
immutable, so users are aware that they can change the document but not
the shapes. We would like to add a configuration setting to enable or
disable this behaviour, and we have thought of doing it at Options -
Load/Save - MS Office. We have some doubts on how to call this
parameter and what should be the default behaviour.

Following the existing conventions in that dialog, we could call the
option OOXML Smart-Art to LibreOfficeDev.

Right now we think that the proper way would be to mark the load option
always, making the option read only, so the user would not be able to
modify it and will be aware that OOXML SmartArt would always be loaded
and converted.

The second option, saving, would be the selectable one. If we would mark
the option, the Smart-Art will be converted into basic shapes and saved
as such. If it would not be marked, the Smart-Art will be saved as such
in the OOXML documents and, to avoid user modifications, it will be
converted to a bitmap in the UI and saved as such if saved as an
OpenDocument format.

Another topic is whether it would be desirable to let the user select
this option per application. This way, we would have 3 options:
  * WinWord OOXML Smart-Art to LibreOfficeDev Writer.
  * Excel OOXML Smart-Art to LibreOfficeDev Calc.
  * PowerPoint OOXML Smart-Art to LibreOfficeDev Impress.

In the future, if we would have a decent implementation of a similar
functionality of Smart-Art for the OpenDocuments, we would have both
options selectable and the options would say:
  * WinWord OOXML Smart-Art to LibreOfficeDev Writer or reverse.

Comments? Suggestions?



___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Jacobo Aragunde Pérez
El 02/10/13 09:58, Miklos Vajna escribió:
 On Wed, Oct 02, 2013 at 01:59:14AM +0300, Andres Gomez ago...@igalia.com 
 wrote:
 Actually, I've been reading in LibO's Help which is the purpose of the
 options under Options - Load/Save - MS Office and they seem to be
 really attached to OLE importing/exporting.
 
 Seeing that SmartArt also has this native data and replacement
 graphics parts, that sounds like an XML-based OLE thing to me.
 

It makes sense for me too.

 
 I would go with a SmartArt to LibreOffice Draw or reverse option, next
 to the other Microsoft Office options (if we already have such a
 category, and SmartArt is totally MS-specific, it makes sense to me to
 have it there). By default, I would keep the current behavior (SmartArt
 loaded as a group shape + attached metadata to survive roundtrip), and
 the disabling the load could trigger converting to metafile, disabling
 save could trigger dropping the metadata and do a pure groupshape
 export.
 

In my opinion, the default behaviour should be SmartArt becoming
immutable on import. With the current one, a user can change the shapes
but those changes won't be exported back to docx and that's confusing.

Besides this point, I agree with your definition of the fields with some
comments:

* Enabling load would mean that the SmartArt would be converted to LO
shapes and disabling it would mean that the imported SmartArt would be
immutable and would preserve the metadata. It would be disabled by default.

* Enabling save would mean that the shapes would be converted to
SmartArt and disabling it would do a pure group-shape export. Since
there is no kind of SmartArt exporter in LibreOffice yet, this box would
be disabled and its value could not be change by the user.

Finally, maybe we should call this option SmartArt to LibreOffice
shapes or reverse, since we are not involving Draw in this process.
Besides, Draw exporting is already different: embedded Draw in a
document is exported as a .emf file inside the .docx.

-- 
Jacobo Aragunde
Software Engineer at Igalia
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Jacobo Aragunde Pérez
El 02/10/13 08:09, Samuel Mehrbrodt escribió:
 Hi Jacobo,
 
 good to see this being improved. I don't think an option in the Options 
 dialog is the best way to go. Users might not expect it there and think 
 it's a bug that you can't edit SmartArt (because you could before)
 
 I have another suggestion:
 You could disable editing SmartArt by default and offer editing via the 
 context menu. Would that be possible to convert the SmartArt live to 
 shapes when the user wishes it?
 

Everything is possible, it would just take more time :) But I must
confess I would rather add an option at this moment so we can merge this
improvement sooner, and keep working on it in sync with upstream.

What do you think?

-- 
Jacobo Aragunde
Software Engineer at Igalia
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Samuel Mehrbrodt
That might be ok for now, but then the default behavior should be as it 
is now (SmartArt editable).
If we have the not-editable Smart-Art as default, we need an easy way to 
make it editable.


Mirek, what do you think?

Am 02.10.2013 11:35, schrieb Jacobo Aragunde Pérez:
Everything is possible, it would just take more time :) But I must 
confess I would rather add an option at this moment so we can merge 
this improvement sooner, and keep working on it in sync with upstream. 
What do you think? 


___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Mirek M.
On Wed, Oct 2, 2013 at 1:44 PM, Samuel Mehrbrodt s.mehrbr...@gmail.comwrote:

 That might be ok for now, but then the default behavior should be as it is
 now (SmartArt editable).
 If we have the not-editable Smart-Art as default, we need an easy way to
 make it editable.


I'd much rather for non-editable SmartArt to be default -- I'd rather not
let the user edit something rather than automatically wreck their document.


 Mirek, what do you think?

 Am 02.10.2013 11:35, schrieb Jacobo Aragunde Pérez:

  Everything is possible, it would just take more time :) But I must
 confess I would rather add an option at this moment so we can merge this
 improvement sooner, and keep working on it in sync with upstream. What do
 you think?


 If adding a contextual command would postpone the feature by months, I
suppose it could be in options *temporarily*. I don't care about the
placement.

I would really hate for devs to think that adding an option solves the
issue, though. Having a contextual command should be a top priority.
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Jan Holesovsky
Hi Jacobo, Miklos,

Miklos Vajna píše v St 02. 10. 2013 v 14:44 +0200:

  With the current one, a user can change the shapes
  but those changes won't be exported back to docx and that's confusing.
 
 Indeed. Read the original rationale here:
 
 http://lists.freedesktop.org/archives/libreoffice/2013-July/054428.html
 
 There we agreed that if the objects are modified (search for mutate),
 then these invisible properties should be dropped. (That's not the case
 ATM, but it should be this way in the long run.) That way if the user
 edits the shape, it'll be exported as a normal group shape, so the edit
 of the user is not lost.

I support this approach :-)

  Finally, maybe we should call this option SmartArt to LibreOffice
  shapes or reverse, since we are not involving Draw in this process.
  Besides, Draw exporting is already different: embedded Draw in a
  document is exported as a .emf file inside the .docx.
 
 Indeed, shapes or group shape (actually a SmartArt is imported as a
 group shape) would be a better description than Draw, you're right.

Just so that this does not lead to confusion - SmartArt being a real
group shape is a relatively recent fix:

http://cgit.freedesktop.org/libreoffice/core/commit/?id=59373b753902f69cd44d183568b084429322e7ab

In the previous versions it has been broken into individual shapes which
is the worst of all options from my point of view - but having a group
shape that the user has to explicitly ungroup to do his/her
modifications + drop the smartart metadata with this ungroup operation
seems reasonably valid to me (if we have undo for that, that is).

If we want to warn the users, we can use the the InfoBar (search for
AppendInfoBar) so that it is relatively unobtrusive for them...

With this - undoable operation, and the user notified, I don't think we
really need a setting what to do - or do you see any problems with the
above?

All the best,
Kendy

___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Mirek M.
Hi Miklos,

On Wed, Oct 2, 2013 at 2:44 PM, Miklos Vajna vmik...@collabora.co.ukwrote:

 Hi Jacobo,

 On Wed, Oct 02, 2013 at 11:30:31AM +0200, Jacobo Aragunde Pérez 
 jaragu...@igalia.com wrote:
  In my opinion, the default behaviour should be SmartArt becoming
  immutable on import.

 That would be a regression, I'm afraid, since by default ATM you can do
 that.


Maybe you can, but it's not clear that the SmartArt has been converted to
simple shapes, so the user can easily accidentally lose his data, and we
certainly don't want that.
The ideal solution would be to have a Convert to Shapes button in a
contextual toolbar, as mentioned earlier. That's the way e.g. Inkscape
deals with converting text to a path; it makes it clearer that some data is
lost. Is that really that much more complicated over adding an option?


  With the current one, a user can change the shapes
  but those changes won't be exported back to docx and that's confusing.

 Indeed. Read the original rationale here:

 http://lists.freedesktop.org/archives/libreoffice/2013-July/054428.html


There doesn't seem to be much in the way of rationale there.
I could only find need to discard the foreign properties on a object when
it is mutated; or work harder to determine what to do (Michael). Am I
looking in the wrong place?


 There we agreed that if the objects are modified (search for mutate),
 then these invisible properties should be dropped. (That's not the case
 ATM, but it should be this way in the long run.) That way if the user
 edits the shape, it'll be exported as a normal group shape, so the edit
 of the user is not lost.


But the original SmartArt object is lost without indication.
It needs to be clear to the user that he's losing data by editing the shape.


  Finally, maybe we should call this option SmartArt to LibreOffice
  shapes or reverse, since we are not involving Draw in this process.
  Besides, Draw exporting is already different: embedded Draw in a
  document is exported as a .emf file inside the .docx.

 Indeed, shapes or group shape (actually a SmartArt is imported as a
 group shape) would be a better description than Draw, you're right.

 Miklos

 ___
 Libreoffice-ux-advise mailing list
 Libreoffice-ux-advise@lists.freedesktop.org
 http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-02 Thread Jan Holesovsky
Hi Mirek,

Mirek M. píše v St 02. 10. 2013 v 17:01 +0200:


 The problem is that there's no indication that you lose data with
 Ungroup. (In general, the only data I would expect to lose by using
 Ungroup is group-related metadata.)

There would be indication, but only ex-post; I hope that is still OK if
the undo is possible.

 If Ungroup converts the object into shapes, perhaps we can just put it
 inside a new toolbar, label it Convert to Shapes, and make it
 contextual?

Could work, of course - whatever is easier for Jacobo I think :-)  In
both cases it is down to just throwing away the interop grabbag data...

In general, I believe we should discourage the users from editing that
shapes, but allow that in case they are crazy enough to want that.  The
on-load option is not a solution from my point of view, as I believe we
should default to the better interop (ie. roundtrip the SmartArt, and
discourage editing the shapes), and in that case the use case for those
who _want_ to edit the shape is to change the default, re-load the
document, do the edits, and switch back the option for other documents.

Jacobo - does this work for you?

Regards,
Kendy


___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-01 Thread Andres Gomez
Hi,

On Tue, 2013-10-01 at 17:49 +0200, Jacobo Aragunde Pérez wrote:
...
 That takes us to the next step: we want to make imported SmartArt
 immutable, so users are aware that they can change the document but
not
 the shapes. We would like to add a configuration setting to enable or
 disable this behaviour, and we have thought of doing it at Options -
 Load/Save - MS Office. We have some doubts on how to call this
 parameter and what should be the default behaviour.
...

Actually, I've been reading in LibO's Help which is the purpose of the
options under Options - Load/Save - MS Office and they seem to be
really attached to OLE importing/exporting.

Therefore, maybe this is not the best place in which to implement this
option.

The best and most obvious option seems to be Options - [Text Document|
Spreadsheet|Presentation] Options - Compatibility. However, proper UI
with check boxes seems to be only Text Document. Spreadsheet
Compatibility subcategory is quite different and it doesn't really
seem to face the task of selecting compatibility options among document
formats. Presentation doesn't even have a Compatibility subcategory.

In any case, my best guess is that we should go with these
subcategories. As we are facing now just Writer I suppose we can just
add another checkable option and, once we start implement similar
compatibility for Calc and Impress we can also add the needed items
and subcategories.

What do you think?

Br.
-- 
Andres Gomez
Computer Science Engineer
mailto:ago...@igalia.com
http://blogs.igalia.com/agomez/category/igaliacom/
IGALIA, S.L. http://www.igalia.com


signature.asc
Description: This is a digitally signed message part
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise


Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings

2013-10-01 Thread Andres Gomez
Hi,

On Tue, 2013-10-01 at 17:49 +0200, Jacobo Aragunde Pérez wrote:
...
 That takes us to the next step: we want to make imported SmartArt
 immutable, so users are aware that they can change the document but not
 the shapes. We would like to add a configuration setting to enable or
 disable this behaviour, and we have thought of doing it at Options -
 Load/Save - MS Office. We have some doubts on how to call this
 parameter and what should be the default behaviour.
...

Actually, I've been reading in LibO's Help which is the purpose of the
options under Options - Load/Save - MS Office and they seem to be
really attached to OLE importing/exporting.

Therefore, maybe this is not the best place in which to implement this
option.

The best and most obvious option seems to be Options - [Text Document|
Spreadsheet|Presentation] Options - Compatibility. However, proper UI
with check boxes seems to be only Text Document. Spreadsheet
Compatibility subcategory is quite different and it doesn't really
seem to face the task of selecting compatibility options among document
formats. Presentation doesn't even have a Compatibility subcategory.

In any case, my best guess is that we should go with these
subcategories. As we are facing now just Writer I suppose we can just
add another checkable option and, once we start implement similar
compatibility for Calc and Impress we can also add the needed items
and subcategories.

What do you think?

Br.
-- 
Andres Gomez
Computer Science Engineer
mailto:ago...@igalia.com
http://blogs.igalia.com/agomez/category/igaliacom/
IGALIA, S.L. http://www.igalia.com


signature.asc
Description: This is a digitally signed message part
___
Libreoffice-ux-advise mailing list
Libreoffice-ux-advise@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-ux-advise