Re: [Libreoffice-ux-advise] Advice on adding Smart-Art related settings
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
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
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
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
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
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
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
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
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
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
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
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