Minutes of the design meeting 2018-Jan-31
renon at mr-consultant.net
Sat Feb 3 19:58:12 UTC 2018
Le 31/01/2018 à 21:48, Heiko Tietze a écrit :
> * Full list of ideas https://pad.documentfoundation.org/p/UX-GSoC_Ideas
> * Public list https://wiki.documentfoundation.org/Development/GSoC/Ideas#User_Interface
Here are some suggestions based on my recent experience in teaching
LibreOffice and writing a python macro :
Impress : work on "papercut" bugs
1 - Animations sets for a text box with several paragraphs don't affect
new paragraphs (not inherited)
This is the most annoying problem that new users face :
- they create a slide with few lines of text,
- they add an animation on the text, to make it appear line by line
- they test : it works correctly
- they add one line of text (inside or at the end)
- they test and boom... the animation is "broken"
- they make a pause, then... close impress and open powerpoint...
2 - Editing: Text spacing changes when click in textbox
It is a subtle but very annoying visual effect.
I had to create a macro embedded in a file.
As I had not written basic for a long time, I tried to write it in python.
The fist problem is that on Ubuntu, it is necessary to install a
specific package 'libreoffice-script-provider-python'
The second problem is that, by default, there is no tool to integrate a
python macro in a document.
I found the APSO extension  that allows that and is very useful.
I found some difficult points in writing python macro with that extension :
- after modifying a python script, you have to close and re-open the
- some inline documentation is missing : about API, and some sample code
- the context (available via XSCRIPTCONTEXT) is missing some API,
compared to basic
So here are my suggestions for GSoC :
- allow an easy activation of python support : a simple button would
download and install all necessary packages
- integrate the functionality of APSO (to allow embedding/managing
python script in odf file)
- remove the need to re-open the odf file before using a new version
of python script
Other points can be done directly in the current extension :
- add some inline documentation about API 
- add inline documentation on both ways to use python script :
- an external script that connects to LibreOffice
- an internal script that get called by menu/button
- allow to create scripts empty or with comments (that provide
minimum documentation and good practice)
- add a library of sample code (a list of "how-to ?"), that can be
easily copied in script files
Adding API to the context (available via XSCRIPTCONTEXT) can be done by
working on LibreOffice code :
 based on very useful page
More information about the LibreOffice