Bug 17924

Summary: bristol menu entries handled incorrectly by MATE and LXQt desktops
Product: Mageia Reporter: Xavier Matz <c934w-xavm493b>
Component: RPM PackagesAssignee: All Packagers <pkg-bugs>
Status: NEW --- QA Contact:
Severity: normal    
Priority: Normal CC: doktor5000, marja11, nicolas.salguero, pkg-bugs, tarakbumba, zen25000
Version: Cauldron   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard: MGA5TOO
Source RPM: bristol-0.60.11-5.mga6.src.rpm CVE:
Status comment:
Attachments: screenshot: bristol entries in "Sound & Video" sub-menu
screenshot: bristol entries as sub-entries of empty-named entry of main menu
Screenshot LXDE
Screenshot
Screenshot

Description Xavier Matz 2016-03-09 19:03:14 CET
Description of problem:
The menu entries for the bristol apps are weird and redundant in lxde. They appear:
* once as sub-entries of a "Bristol" entry, which itself is a sub-entry of an empty-named (that in itself is weird) entry of the MAIN menu (that too is weird)
* and again as DIRECT sub-entries of the "Sound & Video" menu entry, which is kinda impractical since the large number of bristol apps with menu entries kinda unnecessarily fills that menu so that it won't fit on the screen and requires scrolling. See appended screenshots.

The ideal would be to have the bristol apps in a "Bristol" sub-menu of the "Sound & Video" menu.

See screenshots

Version-Release number of selected component (if applicable):
bristol-0.60.11-5.mga6

How reproducible:
always

Steps to Reproduce:
1. run your desktop under lxde
2. install bristol
3. have a look at the bristol entries in the menu
Comment 1 Xavier Matz 2016-03-09 19:04:41 CET
Created attachment 7532 [details]
screenshot: bristol entries in "Sound & Video" sub-menu
Comment 2 Xavier Matz 2016-03-09 19:05:50 CET
Created attachment 7533 [details]
screenshot: bristol entries as sub-entries of empty-named entry of main menu
Comment 3 Barry Jackson 2016-03-09 19:12:20 CET
Isn't xdg wonderful!

I will take a look,

It's absolutely fine in plasma5.

CC: (none) => zen25000

Comment 4 Marja Van Waes 2016-03-09 21:19:40 CET
(In reply to Barry Jackson from comment #3)

> 
> I will take a look,
> 

Thanks, assigning to you then :-)

CC'ing LXDE maintainer

CC: (none) => marja11, nicolas.salguero
Assignee: bugsquad => zen25000

Comment 5 Barry Jackson 2016-03-10 11:49:25 CET
Created attachment 7544 [details]
Screenshot LXDE

I don't see this issue in LXDE - see screenshot, however I do in MATE and am investigating,
Comment 6 Nicolas Salguero 2016-03-10 12:08:47 CET
It seems the menu is the one from LXQt not the one from LXDE.
Comment 7 Barry Jackson 2016-03-10 13:51:37 CET
Ah OK I don't have LXQT installed anywhere.

However I have tested Bristol in Mageia 5 and in Cauldron in the following Desktops where the menus work correctly.

Mageia 5 :

KDE4, Openbox, LXDE.

Cauldron:

Plasma5, Openbox, LXDE.

Under MATE it fails in both Mga5 and Cauldron.

So my conclusion is that there is some xdg configuration in MATE regarding the handling of sub-menus that is incorrect and breaking this under MATE and LXQT.

I have looked but I don't see it.

The problem is that rather than adding the Bristol submenu to 'Sound & Video' and placing the further sub-menus below Bristol, it is creating a separate 'SoundVideo' menu entry containing Bristol and it's sub-menus and also adding Bristol's submenus under 'Sound & Video'.

Screen shots from MATE follow.
Comment 8 Barry Jackson 2016-03-10 13:54:33 CET
Created attachment 7546 [details]
Screenshot

Screenshot showing the submenu items for Bristol incorrectly included in Sound & Video'
Comment 9 Barry Jackson 2016-03-10 13:56:43 CET
Created attachment 7547 [details]
Screenshot

Screenshot showing the incorrectly added SoundVideo submenu containing the Bristol branch with it's submenus.
Barry Jackson 2016-03-10 13:57:53 CET

Summary: bristol menu entries: weird and double in lxde menu => bristol menu entries handled incorrectly by MATE and LXQt desktops

Barry Jackson 2016-03-10 13:58:08 CET

Assignee: zen25000 => bugsquad

Comment 10 Barry Jackson 2016-03-10 14:10:02 CET
I have installed LXQt and confirm the same issue as in MATE.
The incorrect SoundVideo appears with a blank name in LXQt and there is a similar problem with the menu branch containing Wine as described by Xavier.
Comment 11 Xavier Matz 2016-03-10 14:43:54 CET
I did install both LXDE and LXQt at the time, but never use the latter. I only really use LXDE on a daily basis. So I don't know if maybe the fact of having installed LXQt too might have anything to do with my problem - and now that you mention LXQt, I do have the problem there as well - but the fact is: 
I do have that problem in LXDE too, and my screenshots were taken in LXDE, not LXQt.
Comment 12 Xavier Matz 2016-03-10 14:46:36 CET
note: similar bug with the wine entries:
https://bugs.mageia.org/show_bug.cgi?id=17925
Comment 13 Barry Jackson 2016-03-10 15:14:54 CET
I Checked LXDE in both Mga5 and Cauldron after installing LXQt and it still works correctly here.
LXQt seems broken in many ways - system tray is a mess with broken icons - no way to log out/shut down (I had to use a tty to restart DM) but it does suffer the same menu issues in both Mga5 and Cauldron.

Adding MGA5TOO.

Whiteboard: (none) => MGA5TOO

Barry Jackson 2016-03-10 18:42:05 CET

CC: (none) => doktor5000

Comment 14 Barry Jackson 2016-03-10 18:45:41 CET
Added MATE and LXQt maintainers to cc

CC: (none) => tarakbumba

Comment 15 Barry Jackson 2016-03-10 19:13:05 CET
Poking around it seems that the handling of 'applications-merged' is the issue.

grepping the xdg/menus direcory for 'applications-merged' shows that only LXDE, LXQT and MATE have the <!-- Read in overrides and child menus from applications-merged/ --> comment line.

[baz@jackodesktop xdg]$ grep -r "applications-merged"
menus/mate-applications.menu:  <!-- Read in overrides and child menus from applications-merged/ -->
menus/mate-applications.menu:  <MergeDir>applications-merged</MergeDir>
menus/mate-settings.menu:  <!-- Read in overrides and child menus from applications-merged/ -->
menus/lxde-applications.menu:   <!-- Read in overrides and child menus from applications-merged/ -->
menus/lxqt-applications.menu:   <!-- Read in overrides and child menus from applications-merged/ -->
menus/lxqt-config.menu:    <!-- Read in overrides and child menus from applications-merged/ -->
menus/mate-screensavers.menu:  <!-- Read in overrides and child menus from applications-merged/ -->
Comment 16 Nicolas Salguero 2016-03-10 21:08:20 CET
Hi,

The file lxde-applications.menu is normally used only by LXQt.  LXDE normally uses applications.menu (maybe there is "menu_prefix=lxde-" in the section "Environment" of the file $HOME/.config/lxsession/LXDE/desktop.conf).  That is why I supposed the menu was the one from LXQt.

Best regards,

Nico.
Comment 17 Xavier Matz 2016-03-10 21:32:43 CET
indeed, there was this "menu_prefix=lxde-" in the file you mention.
Looks like the cause for that may have been that described here:
https://wiki.mageia.org/mw-en/index.php?title=Mageia_5_Errata&oldid=30956#LXDE
Comment 18 Nicolas Salguero 2016-03-10 22:31:42 CET
Yes, it is that.  For the new users, I modified the "template" configuration provided by the package mageia-lxde-config-Default (in the file /var/lib/mageia/lxde-profiles/Default/desktop.conf) to ensure they have "menu_prefix=" but old users need to manually correct their $HOME/.config/lxsession/LXDE/desktop.conf.
Comment 19 Marja Van Waes 2016-04-28 20:24:16 CEST
(In reply to Barry Jackson from comment #7)


> 
> So my conclusion is that there is some xdg configuration in MATE regarding
> the handling of sub-menus that is incorrect and breaking this under MATE and
> LXQT.
> 
> I have looked but I don't see it.
> 
> The problem is that rather than adding the Bristol submenu to 'Sound &
> Video' and placing the further sub-menus below Bristol, it is creating a
> separate 'SoundVideo' menu entry containing Bristol and it's sub-menus and
> also adding Bristol's submenus under 'Sound & Video'.
> 


Thanks for the debugging, Barry.

Assigning to Mate maintainer

Assignee: bugsquad => tarakbumba

Comment 20 Atilla ÖNTAŞ 2016-05-03 21:36:11 CEST
This issue is not a MATE issue. You can see that relevant menu directories and menu layout is created by bristol package itself by the packager. It is created so that it fits Mageia specific menu layout (isn't it deprecated?) But MATE uses its default menu layout which i don't want to discard. So, if /etc/xdg/menus/application-merged/bristol.menu use "Multimedia" instead of "SoundVideo" as main directory then mate menu will happily display in Bristol submenu in Sound&Video menu tree. Altough it won't needed because mate-menus also looks for relevant desktop files and if it finds Audio or Video or AudioVideo categories it places those desktop files under Sound&Video tree directly.

As explained i think this bug report is won't fix for me.
Comment 21 Barry Jackson 2016-05-04 00:07:38 CEST
(In reply to Atilla ÃNTAÅ from comment #20)
> This issue is not a MATE issue. You can see that relevant menu directories
> and menu layout is created by bristol package itself by the packager. It is
> created so that it fits Mageia specific menu layout (isn't it deprecated?)

I was not aware there was a "Mageia specific menu layout"

> But MATE uses its default menu layout which i don't want to discard. So, if
> /etc/xdg/menus/application-merged/bristol.menu use "Multimedia" instead of
> "SoundVideo" as main directory then mate menu will happily display in
> Bristol submenu in Sound&Video menu tree.

Indeed, using Multimedia as top level works in MATE (as long as only X-Bristol is used in the sub-packages)

This also works for KDE4, Plasma, IceWM, LXQT and OpenBox, however the menu entry is completely missing in XFCE and in LXDE "Bristol" becomes a top level menu, but does work.

I am not happy though about using "Multimedia", as in Plasma, Bristol is then the only package (for me) that is under that top level menu option.

In some of the above, "Multimedia" is the top level menu, in others it is Sound & Video and in LXDE it's "Bristol" as mentioned above.

> Altough it won't needed because

What is "it" - I don't follow that?

> mate-menus also looks for relevant desktop files and if it finds Audio or
> Video or AudioVideo categories it places those desktop files under
> Sound&Video tree directly.
> 
> As explained i think this bug report is won't fix for me.

Well I'm rather stumped as this is a real mixed bag of worms that I do not really understand. There seems to be no consistency across D.E.s and what works for one does not for others. Should not all DEs follow a common specification?
Comment 22 Atilla ÖNTAŞ 2016-05-04 00:25:14 CEST
I mean that havingg a bristol submenu is not a must.Mate displays all bristol related entries in Sound&Video menu.

Regarding following specs, bristol package don't do that as the issue...I don't know but i think other DEs just use our mageia layout instead of their upstream ones.

Anyway i submitted a modified mate-menus package tonight.You can test mageia menu layout by installing matemenu-mageia-layout package.
Comment 23 Barry Jackson 2016-05-04 01:19:34 CEST
(In reply to Atilla ÃNTAÅ from comment #22)
> I mean that havingg a bristol submenu is not a must.Mate displays all
> bristol related entries in Sound&Video menu.

Bristol installs so many packages that they really need to be separated into a sub-menu otherwise the Sound & Video menu is too cluttered, but I now understand what you meant ;)

> 
> Regarding following specs, bristol package don't do that as the issue...I
> don't know but i think other DEs just use our mageia layout instead of their
> upstream ones.

Problem here is that I do not see where bristol is not adhering to the spec :\

> 
> Anyway i submitted a modified mate-menus package tonight.You can test mageia
> menu layout by installing matemenu-mageia-layout package.

OK I will look at that tomorrow. Thanks.
Comment 24 Barry Jackson 2016-06-09 13:55:30 CEST
Sorry forgot about this.

I have just tested in a fully updated Cauldron and in these DE's the Bristol menu works as intended:

Plasma
LXDE
IceWM
Openbox

In these there is no top level Bristol entry and all the Bristol sub-apps are mixed up in the Sound and Video section.

MATE
LXQt
XFCE

If this is the best we can achieve then feel free to close this.
Comment 25 Marja Van Waes 2016-06-30 09:05:40 CEST
CC'ing all packagers collectively because tarakbumba, the assignee, will be MIA for ± 11 weeks.

CC: (none) => pkg-bugs

Comment 26 Samuel Verschelde 2018-09-21 09:40:16 CEST
Reassigning to all packagers collectively as the original maintainer is not available anymore (thanks for all your work Atilla!).

Assignee: tarakbumba => pkg-bugs