Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LibreOffice Design: Easy Hacks

LibreOffice Design: Easy Hacks

How to contribute to the LibreOffice usability and design.

Jan Holesovsky

January 31, 2015
Tweet

More Decks by Jan Holesovsky

Other Decks in Programming

Transcript

  1. 2 / 13 What Are the Easy Hacks • Small

    tasks that help you to get familiar with LibreOffice hacking – “Hacking” means any work improving LibreOffice: programming, icon design, UI reworking, … • Will present few of them here :-)
  2. 3 / 13 Task Is Finished when in Git •

    Every Easy Hack result has to ulitimately end up in the LibreOffice git repository • Everybody is encouraged to push his/her improvements himself/herself! :-) • Gerrit: (code) review system – Setup is easy, and you can push directly – Your change will be accepted, or we will communicate what to improve • Don't worry, we'll gladly help you should you have trouble setting it up
  3. 4 / 13 Improving Icons • Current focus: Sifr icons

    – Flat, modern, monochrome theme • LibreOffice has more than 1000 icons! – Help most appreciated • https://github.com/libodesign/icons – Contains description how / what to do – https://bugs.documentfoundation.org/show_bug.cgi?id=75256 – https://redmine.documentfoundation.org/boards/1/topics/35
  4. 6 / 13 Improving Dialogs • All dialogs converted to

    .ui files editable by Glade • Help applying the HIG – We use the GNOME HIG: https://developer.gnome.org/hig/stable/essentials.html.en • Glade 3 needed, with LibreOffice widgets catalog – Available in the LibreOffice installation • And then just take one of the .ui files, and improve it – Better grouping, better resize behavior, ...
  5. 7 / 13 Improving Toolbars • Toolbars described in XML

    files • Easiest way how to change the layout of buttons is via Tools → Customize... – Save your user's profile (copy it somewhere) – Do the changes – Compare the old profile with the modified one • Then apply the changes to the appropriate .xml – Find the .xml files in 'toolbar' subdirectories
  6. 8 / 13 Reworked Toolbars • Some of the toolbars

    have been already reworked: • But other still need love – help appreciated!
  7. 9 / 13 Improving Menubar • XML descriptions, similarly to

    the toolbars – menubar.xml files – contain only the menu stucture (commands like .uno:Save) – Customizable via the Tools → Customize... too • In case you want to improve a label in the menu, names of the commands are stored in GenericCommands.xcu • And accelerators are stored in Accelerators.xcu
  8. 10 / 13 Improving Context Menus • Unfortunately a bit

    more complicated than toolbars & menubar – But still bearable, just needs more care • In .src files, like popup2_tmpl.src • Structure is like: Menu RID_SOME_IDENTIFICATOR { ItemList = { MenuItem { … } MenuItem { … } ...
  9. 11 / 13 Reworked Context Menus • Some context menus

    were already reworked to be more smaller & more useful: • But many still to come
  10. 12 / 13 Programming Easy Hacks • Collected in our

    Bugzilla – And categorized in many ways • https://wiki.documentfoundation.org/Development/Easy_Hacks • Search for Easy Hacks with “TopicUi”: – https://wiki.documentfoundation.org/Development/Easy_Hacks/lists/by_Topic#Easy_Hacks_about_UI • Vary in complexity and in focus – Many are easy enough to start without any LibreOffice knowledge
  11. 13 / 13 How to Get Involved • [email protected]

    #libreoffice-design on irc.freenode.net • https://wiki.documentfoundation.org/Design • Weekly meetings – via G+ hangouts / phone • Or just participate in one of our Design contests! Join us – it's fun! :-)