Bug 63962 - Remove LibreOffice icon themes hardcoding
Summary: Remove LibreOffice icon themes hardcoding
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: Other All
: medium normal
Assignee: Tobias Lippert
URL:
Whiteboard:
Keywords: difficultyBeginner, easyHack, skillCpp, topicUI
Depends on:
Blocks: Icon-Themes 30425
  Show dependency treegraph
 
Reported: 2013-04-26 14:08 UTC by Björn Michaelsen
Modified: 2017-07-31 23:42 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Björn Michaelsen 2013-04-26 14:08:40 UTC
LibreOffice icon themes are a hardcoded in vcl. It would be great, if vcl would instead dynamically search the theme folder and populate its menu from what it finds.

Code pointers:
- git grep STYLE_SYMBOLS_
- http://opengrok.libreoffice.org/s?refs=STYLE_SYMBOLS_DEFAULT&project=core

This would allow adding more themes without having to modify the LibreOffice itself (by dumping an properly named zip file in the right location).
Comment 1 Jan Saro 2013-05-03 12:53:07 UTC
Hi, I'll handle this, Jan.
Comment 2 richcocoa 2013-05-05 16:24:44 UTC
If you are handling this, please assign this bug to yourself. Search for "Assigned To" on this page.

Richard
Comment 3 Tobias Lippert 2013-08-16 19:58:26 UTC
Hello Jan,
are you still working on this bug? Else, I would like to fix it.
Tobias
Comment 4 Jan Saro 2013-08-17 11:53:02 UTC
Hi,
you can fix, althought I would interested in code. Could you send me  
your final patch, many thanks and good luck!
Comment 5 retired 2013-08-17 12:22:15 UTC
Tobias, can you then assign yourself to this bug?
Comment 6 Björn Michaelsen 2013-10-04 18:47:56 UTC
adding LibreOffice developer list as CC to unresolved EasyHacks for better visibility.

see e.g. http://nabble.documentfoundation.org/minutes-of-ESC-call-td4076214.html for details
Comment 7 Tobias Lippert 2013-10-06 20:32:27 UTC
Hello, I have some quesions for this task
- When should the directory be searched? Where can I add the call to scan the directory?
- What is the standard directory where the icons are located? Is the value set anywhere, and how can I access it?
Kind regards,
Tobias
Comment 8 akusebi 2013-10-30 14:55:20 UTC
(In reply to comment #7)
> Hello, I have some quesions for this task
> - When should the directory be searched? Where can I add the call to scan
> the directory?
> - What is the standard directory where the icons are located? Is the value
> set anywhere, and how can I access it?
> Kind regards,
> Tobias

Hello Tobias,

I am also interested in this problem. This is my first easy hack so I'm not experienced at all.

So far I investigated the followings I hope it is useful for you:
- the theme names are hard coded in the gui in optviewpage.ui see iconstyle combobox -> maybe they should be removed
- the icon themes are in base dir + share folder + config + "images_" + theme name + ".zip" (e.g.: /opt/libreoffice4.0/share/config/images_crystal.zip)
- I think the combobox should be populated when the options dialog is created (OfaViewTabPage maybe)

Best regards,
Tamás
Comment 9 Michael Meeks 2014-01-21 10:41:26 UTC
For translation we should re-use the code from the gallery that parses .desktop files - since we have code to generate translated theme names from that [ that is if we want to translate those :-].
Comment 10 Tobias Lippert 2014-01-21 21:04:08 UTC
Hello Michael,

In the first version, I will derive the name from the file name of the archive that contains the icons, i.e. images_crystal.zip --> "crystal" icon theme.
I think that this is a sensible approach and should suffice for now.

The implementation takes much longer than I anticipated because I have long feedback cycles. The involved headers are included everywhere, and almost everything is recompiled if I change something. But I have finished the implementation and am currently working on tests, i.e. I expect to be finished in 2-3 weeks.

Tobias
Comment 11 Tobias Lippert 2014-02-07 19:40:49 UTC
I have submitted the patch (along with two preparatory commits) to gerrit.
https://gerrit.libreoffice.org/7933
https://gerrit.libreoffice.org/7934
https://gerrit.libreoffice.org/7935
Comment 12 Tobias Lippert 2014-02-24 22:25:24 UTC
The changes are available on the master branch.
If you find that the feature is not working as desired, please reopen the bug.
Comment 13 Robinson Tryon (qubit) 2015-12-16 00:04:45 UTC Comment hidden (noise)
Comment 14 Robinson Tryon (qubit) 2016-02-18 16:37:28 UTC Comment hidden (noise)