Bug 400180

Summary: Java apps cannot be pinned
Product: [Plasma] plasmashell Reporter: Denis Nelubin <dnelubin>
Component: Task Manager and Icons-Only Task Manager widgetsAssignee: Eike Hein <hein>
Status: RESOLVED INTENTIONAL    
Severity: normal CC: kde, kde, mvourlakos, plasma-bugs
Priority: NOR    
Version: 5.14.0   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Denis Nelubin 2018-10-23 05:53:54 UTC
SUMMARY


STEPS TO REPRODUCE
1. Run an Java application in any way: "java -jar jarfile.jar" in console, shellscript with "java -jar jarfile.jar" in it, .desktop file with "Exec=java -jar jarfile.jar" in ~/.local/share/applications launched from the main menu.
2. Pin the application in Latte dock.
3. Close the application.
4. Try to start it by clickin on the pinned icon in the dock.

OBSERVED RESULT
The application is not started.
The ~/.config/latte/*.layout.latte file contains in [Containments][38][Applets][43][Configuration][General] section, parameter launchers59 the string: "file:///usr/bin/java?iconData=..." which is not the correct command line for the application.

EXPECTED RESULT
The application is started with the correct command line used with the initial run (including shell script or desktop file).

SOFTWARE VERSIONS
(available in About System)
KDE Plasma Version: 5.14.0
KDE Frameworks Version: 5.51.0
Qt Version: 5.11.1

ADDITIONAL INFORMATION
Comment 1 Michail Vourlakos 2018-10-23 07:10:47 UTC
Please report it to plasma taskmanager. Pin mechanism is not Latte responsibility but rather plasma libtaskmanager. You must be able to reproduce this with plasma taskmanagers
Comment 2 Michail Vourlakos 2018-10-23 07:11:06 UTC
Please report it to plasma taskmanager. Pin mechanism is not Latte responsibility but rather plasma libtaskmanager. You must be able to reproduce this with plasma taskmanagers
Comment 3 Denis Nelubin 2018-10-24 04:24:48 UTC
(In reply to Michail Vourlakos from comment #2)
> Please report it to plasma taskmanager. Pin mechanism is not Latte
> responsibility but rather plasma libtaskmanager. You must be able to
> reproduce this with plasma taskmanagers

Confirm. The same issue appears when pinning a java app to a standard panel.
Comment 4 David Edmundson 2018-10-24 22:52:09 UTC
Please run "xprop" and click on on the java window.
Comment 5 Denis Nelubin 2018-10-25 08:57:54 UTC
_NET_WM_ICON(CARDINAL) =        Icon (128 x 128):
<skipped>

_NET_WM_ICON_GEOMETRY(CARDINAL) = 1, 1746, 1, 39
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE
_KDE_NET_WM_FRAME_STRUT(CARDINAL) = 2, 2, 29, 4
_NET_FRAME_EXTENTS(CARDINAL) = 2, 2, 29, 4
_NET_WM_DESKTOP(CARDINAL) = 0
_KDE_NET_WM_ACTIVITIES(STRING) = "08d6a412-620a-47a6-bd50-57659525ca2b"
WM_STATE(WM_STATE):
                window state: Normal
                icon window: 0x0
_NET_WM_STATE(ATOM) = 
WM_HINTS(WM_HINTS):
                Client accepts input or input focus: True
                Initial state is Normal State.
                bitmap id # to use for icon: 0x6a00035
                bitmap id # of mask for icon: 0x6a00036
                window id # of group leader: 0x6a00001
_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x1, 0x3e, 0x0, 0x0, 0x0
XdndAware(ATOM) = BITMAP
_MOTIF_DRAG_RECEIVER_INFO(_MOTIF_DRAG_RECEIVER_INFO) = 0x6c, 0x0, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0
_NET_WM_SYNC_REQUEST_COUNTER(CARDINAL) = 111149062
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_NORMAL
_NET_WM_USER_TIME(CARDINAL) = 198913444
_KDE_NET_WM_USER_CREATION_TIME(CARDINAL) = 195364425
_NET_WM_USER_TIME_WINDOW(WINDOW): window id # 0x6a00005
WM_CLIENT_LEADER(WINDOW): window id # 0x6a00001
_NET_WM_PID(CARDINAL) = 28440
WM_LOCALE_NAME(STRING) = "en_US.UTF-8"
WM_CLIENT_MACHINE(STRING) = "gelin-zenbook2"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
                program specified minimum size: 300 by 565
                program specified maximum size: 300 by 565
                window gravity: NorthWest
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING, _NET_WM_SYNC_REQUEST
WM_CLASS(STRING) = "RedmineTimeTracker.RedmineTimeTracker", "RedmineTimeTracker.RedmineTimeTracker"
WM_ICON_NAME(STRING) = "Redmine Time Tracker"
_NET_WM_ICON_NAME(UTF8_STRING) = "Redmine Time Tracker"
WM_NAME(STRING) = "Redmine Time Tracker"
_NET_WM_NAME(UTF8_STRING) = "Redmine Time Tracker"
Comment 6 Eike Hein 2018-10-25 09:34:32 UTC
Unless the .desktop file is named `RedmineTimeTracker.RedmineTimeTracker.desktop` or contains `StartupWMClass=RedmineTimeTracker.RedmineTimeTracker` it won't work - the good news being is that if this isn't the case, you can edit it yourself (and also inform the application maker).