JDK-5106888 : Java Control Panel desktop file needs to be fixed (for Cinnabar)
  • Type: Bug
  • Component: install
  • Sub-Component: install
  • Affected Version: 5.0u1
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris_10
  • CPU: generic
  • Submitted: 2004-09-24
  • Updated: 2012-10-09
  • Resolved: 2004-10-29
Related Reports
Duplicate :  
Relates :  
Description
this bug was originally logged as 5066525, which has been fixed in mustang - which is not going into s10.
This bug is to track the resolution of the original problem reported as applied to s10.

According to the Cinnabar UI spec the following menu option should exist:

Launch->Preferences->Desktop Preferences->Java Control Panel


Calum - I need you to record  what is required for "themizing" the icon
Dermot - if you need to add anything please do


###@###.### 2004-09-24
Just to be clear, 5066525 was fixed in mustang (1.6.0) and 1.5.0_01-b3.
We don't need this bug to get the fix requested and delivered by 5066525
into 1.5.0_01 (and hence S10).

Shortly after 5066525 was integrated into both releases, a comment was
added to the report indicating that the suggested/implemented/tested
fix was incomplete, as the icon couldn't be "themed".  The request
is that this bug report address that deficiency and elaborate on how
the change implemented by 5066525 should be altered to allow themes
to apply.

(Please also see the comment sections of both this report and 5066525.)

Comments
EVALUATION There seems to be string of application <-> Gnome issues for which the requirements are somewhat in the air. The latest information is that it "Linux customary" for the theme maintainer to own all the icons for a given theme (as undesirable as that might be for the "core" and accessability themes. Hence, this change request is being used to bring the current implementations to a sane (although perhaps incomplete) state. In investigating this CR, it was discovered that some of the same problems exist in the Linux implementation. They will also be addressed, bring Linux and Solaris to a common state. ###@###.### 10/11/04 20:01 GMT
11-10-2004

SUGGESTED FIX So, to clarify-- in order for the icon to be themable, two things need to happen: 1. The icon itself must be installed in one of the default places that GNOME looks for icons. In the case of JDS, this will most likely be /usr/share/icons/hicolor/48x48/apps, assuming the icon is 48x48 pixels in size. (If it's not, put in the hicolor subdirectory that corresponds most closely to its actual size.) 2. The .desktop file must not hardcode the pathname in its Icon field, and the filetype suffix should preferably be omitted (since other themes may provide their version of the icon in a different format, such as SVG or XPM). So, assuming our icon is installed as /usr/share/icons/hicolor/48x48/apps/sun_java.png, the relevant line in the .desktop file should just be: Icon=sun_java See http://freedesktop.org/Standards/icon-theme-spec/icon-theme-spec-0.6.html for an explanation of how and where GNOME looks for icons. ###@###.### 2004-09-27 ###@###.### 2004-09-27 DETAILED INFORMATION REQUIRED: Please provide the complete specification JDS desires as the location for the icon file. The file is a 32x32 full depth png file. My examination of Solaris/GNOME yeild no /usr/share/icons/hicolor directory (although the psuedo-standard html page above clearly describes on). Solaris/GNOME has longish named directories of the form "HighContrast". Please specify the exact path and file name and reference you desire. (I think you've done the last "Icon=sun_java", but its worth verifying.) To be specific then, the icon should ideally be installed as /usr/share/icons/hicolor/32x32/apps/sun_java.png. I've just checked my own S10 machine (b68) and the /usr/share/icons/hicolor directory does exist; not sure why it's not there on yours. If all else fails, installing it as /usr/share/pixmaps/sun_java.png instead is acceptable, but that location is really only still supported for legacy apps. The icon line in .desktop file should be as I mentioned above, i.e.: Icon=sun_java (I didn't check where you're currently installing the .desktop file, but presumably it's somewhere sensible or the menu item wouldn't appear at all.) ###@###.### 10/5/04 17:39 GMT ==================================================================== FYI the desktop file (sun_java.desktop) is delivered (as required) to /usr/share/control-center-2.0/capplets ;-) ###@###.### 10/6/04 09:24 GMT ===================================================================== After investigation, and noting that sun_java.png and sun-java.png are not the same thing, the following changes are to be made: 1) The appropriate versions of the sun-java.png icons will be installed in the following directories. All of these are currently installed on both Solaris and Linux, except for the copy of the "standard" icon in the "hicolor" directrory. This is the same icon as the one installed in the pixmap directory. /usr/share/icons/hicolor/48x48/apps/sun-java.png /usr/share/pixmaps/sun-java.png /usr/share/icons/HighContrast/48x48/apps/sun-java.png /usr/share/icons/HighContrastInverse/48x48/apps/sun-java.png /usr/share/icons/LowContrast/48x48/apps/sun-java.png 2) Icon= entry in the sun-java.desktop file will be changed from specifying (the wrong) icon via an absolute path into $JAVAHOME to simply "Icon=sun-java" It may seem hard to believe to those who followed the e-mail discussion on this, but that's all there is to this. ###@###.### 10/11/04 20:01 GMT
11-10-0004