Bug 23986 - xfce4-terminal does not create usable menu entry in LXDE desktop
Summary: xfce4-terminal does not create usable menu entry in LXDE desktop
Status: RESOLVED WORKSFORME
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: All Linux
Priority: Normal major
Target Milestone: ---
Assignee: Jani Välimaa
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-10 21:02 CET by Richard Walker
Modified: 2018-12-16 10:16 CET (History)
3 users (show)

See Also:
Source RPM: xfce4-terminal-0.8.7.4-2.mga7.src.rpm
CVE:
Status comment:


Attachments

Description Richard Walker 2018-12-10 21:02:20 CET
Description of problem:
When the  xfce4-terminal is installed it creates only a menu entry in the root of the LXDE desktop menu below the major expanding menu sections. It does not create an entry in Tools section of the menu where other terminals will be found.

In addition, the menu entry created will only launch the terminal emulator's preference editor.

And finally(?) the terminal emulator does not appear in the list of terminals available for selection as the desktop session default terminal in the LXSession configuration tool available from the Tools->Default applications for LXSession menu choice. 

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.Boot to LXDE desktop on fully updated Cauldron machine
2.Install xfce4-terminal 
3.Try to run the program and configure it as the default terminal
Comment 1 Marja Van Waes 2018-12-11 20:12:05 CET
Hadn't Lewys reported this, too? I can't find that report.

I would have liked to assign this to both wally and ns80, but since that is impossible assigning to wally and CC'ing Nicolas.

Assignee: bugsquad => jani.valimaa
CC: (none) => lewyssmith, marja11, nicolas.salguero

Comment 2 Nicolas Salguero 2018-12-12 11:41:28 CET
Hi,

Regarding xfce4-terminal, it is normal that it does not appear in LXDE menu (and, I think, also in the list of terminals available for selection as the desktop session default terminal) because /usr/share/applications/xfce4-terminal.desktop contains "OnlyShowIn=XFCE;".

Regarding the entry launching the terminal emulator's preference editor, it is normal that it is visible because /usr/share/applications/xfce4-terminal-settings.desktop does not contain "OnlyShowIn=XFCE;" but that file rely on the structure of XFCE menu (/etc/xdg/menus/xfce-applications.menu or something like that) whereas LXDE uses the structure described into /etc/xdg/menus/applications.menu, so the menu entry may appear in a wrong place into the menu.

Best regards,

Nico.
Comment 3 Lewis Smith 2018-12-12 15:56:43 CET
(In reply to Marja Van Waes from comment #1)
> Hadn't Lewys reported this, too? I can't find that report.
Not me. But I *have* complained about 2 instances where application launchers (one a terminal, one a file manager) open that application's *preferences*, not the application itself. I have not bugged this; should I? It is just a question of the icon *caption*. If the two go together, I would guess the same one is used for both purposes, which is confusing. The 'preferences' icon should say something like "XYZterm Prefs", or "xyzFM prefs". Other applications with separate preferences 'applications' do have distinct menu entries.

Re Nicolas' comment 2, he indicates an inconsistency: the confusion above apart, we have an instance (or 2?) where a desktop offers *Preferences* for an application which is not itself in the menus! This is silly. Either have both, or neither.
Whoever is responsible for the different settings files can surely address this.
Comment 4 Lewis Smith 2018-12-12 18:28:13 CET
Trying current M7beta1 LXDE with xfce4-terminal already installed.
1. It does seem that - translations notwithstanding - Xfce Terminal is not in the Tools menu, which for the record has:
 LXterminal
 Terminal (= Gnome)
 Mate Termiinal
 Konsole
so point 1 of comment 0 is true.
2. Probing Tools/Default applications for LXSession/Terminal manager offers:
 LXTerminal
 Xfce terminal         ***
 Konsole
 Terminal [Gnome]
 Mate Terminal
which answers the 3rd point of c0.

For the second point, I cannot try it without a menu entry.
> In addition, the menu entry created
How?
 $ xfce4-terminal
works.

It seems that what needs fixing are:
- Make sure that installed Xfce Terminal is in the Tools menu, along with all the other available terminals.
- Make sure the menu entry launches the *terminal*, not its preferences.
Comment 5 Richard Walker 2018-12-12 20:03:39 CET
(In reply to Lewis Smith from comment #4)
The menu entry created on installation of xfce4-terminal, being the one which starts only the terminjal preferences editor, was likely created by the usual method when any application is installed. That is all that was implied by my second point. The explanation from Nicolas in comment 2 about the use of the 
"OnlyShowIn=XFCE;" line would appear to account for the whole problem. If this line is deleted from the /usr/share/applications/xfce4-terminal.desktop file and added to the /usr/share/applications/xfce4-terminal-settings.desktop then something like normal operation is restored.

The xfce4-terminal-settings.desktop entry in the LXDE menu certainly doesn't belong where it ends up, so eliminating it from there is a sound plan. Now that I have deleted the "OnlyShowIn=XFCE;" line from the xfce4-terminal.desktop file it correctly appears in the Tools menu.

To flesh out my point 2 a bit, it is true that after typing in the name of the xfce4 terminal in the Tools/Default applications for LXSession/Terminal manager program, it remains selectable from the list of terminals. However, on first opening the default applications tool immediately after installing the xfce terminal it is not present. I could be persuaded that the "OnlyShowIn=XFCE;" line in its .desktop file is sufficient for the LXDE preferences editor to ignore it. 

Still, now I know what to look for I can manage any reversions from future updates until this small typo is fixed in the two .desktop files; delete from one and add to the other.
Comment 6 Jani Välimaa 2018-12-15 11:34:09 CET
I can see that LXDE isn't using lxde-applications.menu for apps menu. So the menu layout is something else than it should be.

If lxde-applications.menu would be used there would be separate menu for settings where Xfce terminal's entry would go like it should.
Comment 7 Jani Välimaa 2018-12-15 11:36:39 CET
I've removed OnlyShowIn=XFCE from xfce4-terminal.desktop in xfce4-terminal-0.8.7.4-3.mga7 so it will be shown in all DEs.
Comment 8 Richard Walker 2018-12-15 14:50:37 CET
In reply to Jani Välimaa from comment #7)
Does that mean I can still remove the OnlyShowIn=XFCE entry from the xfce4-terminal-settings.desktop to prevent it from appearing in my LXDE root menu? I gathered from Comment 2 that the settings desktop file is only accommodated in the Xfce-specific menu structure.


(In reply to Jani Välimaa from comment #6)
If lxde-applications.menu is not used by LXDE then what does it do? If it should have been used then should I file a bug report on that too? That would make it unnecessary to manually fix the superfluous xfce4-terminal-settings.desktop file.
Comment 9 Nicolas Salguero 2018-12-15 15:32:20 CET
(In reply to Jani Välimaa from comment #6)
> I can see that LXDE isn't using lxde-applications.menu for apps menu. So the
> menu layout is something else than it should be.

As I said in comment #2, LXDE uses applications.menu for its apps menu.  That file is managed by Mageia into the desktop-common git repository.

LXDE has been using this file since it was included into Mageia and I think only LxQt is using lxde-applications.menu.
Comment 10 Jani Välimaa 2018-12-15 15:39:16 CET
Settings menu isn't Xfce specific. It was used with at least GNOME2/Xfce/LXDE and is still used with two latest. Can't remember if KDE3/4 had it too.

According to applications.menu xfce4-terminal-settings.desktop shouldn't be shown in menus at all. It's included in .hidden menu which is hidden like its name says. I tested with fresh LXDE install and it wasn't shown.

So, perhaps menus are edited by hand at some point and something went wrong?
Comment 11 Richard Walker 2018-12-15 17:31:16 CET
(In reply to Jani Välimaa from comment #10)
This desktop started its life on this boot drive in March 2017 when it was Mageia 6. It might even have started as Mageia 5 when it was on its donor drive. Goodness knows what I may have done a year or more ago, but I am quite happy to accept that the pristine Mageia LXDE desktop has suffered at my hands; there are so many little things it does so strangely.

I will be doing a fresh install of Mageia 7, even if it is still Cauldron, at some time in the next 4 or 6 weeks so I am sure most of my niggles will have disappeared.

For now I am delighted to have the Xfce terminal working cleanly in LXDE as I have had to switch away from LXTerminal due to compatibility issues with mc. The xfce4-terminal performs faultlessly and even looks like LXterminal, so thank you all very much for dealing with this so swiftly and conclusively. 

Richard
Comment 12 Jani Välimaa 2018-12-16 10:16:18 CET
Closing as WORKSFORME then. Feel free to reopen if needed.

Status: NEW => RESOLVED
Resolution: (none) => WORKSFORME


Note You need to log in before you can comment on or make changes to this bug.