mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[platform] platform-independent backward-compatible WM class calculation
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
<component xmlns="http://jetbrains.org/intellij/schema/application-info"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://jetbrains.org/intellij/schema/application-info http://jetbrains.org/intellij/schema/ApplicationInfo.xsd">
|
||||
<version codename="Community Edition" major="2017" minor="3" eap="true"/>
|
||||
<version major="2017" minor="3" eap="true"/>
|
||||
<company name="JetBrains s.r.o." url="https://www.jetbrains.com/?fromIDE"/>
|
||||
<build number="__BUILD_NUMBER__" date="__BUILD_DATE__"/>
|
||||
<logo url="/idea_community_logo.png" textcolor="e5e5e5" progressColor="ef5468" progressX="117" progressY="280" progressHeight="3" />
|
||||
<about url="/idea_community_about.png" foreground="939598" copyrightForeground="939598" linkColor="095fdc" logoX="540" logoY="300" logoW="100" logoH="100"/>
|
||||
<icon size32="/icon_CE.png" size16="/icon_CEsmall.png" size128="/icon_CE_128.png" ico="idea_CE.ico"/>
|
||||
<package code="__PACKAGE_CODE__"/>
|
||||
<names product="IDEA" fullname="IntelliJ IDEA" script="idea"/>
|
||||
<names product="IDEA" fullname="IntelliJ IDEA Community Edition" script="idea"/>
|
||||
|
||||
<welcome-screen logo-url="/Logo_welcomeScreen.png"/>
|
||||
<customize-ide-wizard provider="com.intellij.ide.customize.CustomizeIdeaWizardStepsProvider"/>
|
||||
@@ -30,6 +30,5 @@
|
||||
<third-party url="http://www.jetbrains.org/"/>
|
||||
<jetbrains-tv url="https://www.youtube.com/user/intellijideavideo"/>
|
||||
|
||||
|
||||
<statistics settings="https://www.jetbrains.com/idea/statistics/stat-assistant.xml" service="https://www.jetbrains.com/idea/statistics/index.jsp"/>
|
||||
</component>
|
||||
|
||||
+10
-3
@@ -199,15 +199,13 @@ class LinuxDistributionBuilder extends OsSpecificDistributionBuilder {
|
||||
buildContext.messages.progress("Preparing files")
|
||||
|
||||
def desktopTemplate = "${buildContext.paths.communityHome}/platform/platform-resources/src/entry.desktop"
|
||||
def ce = buildContext.productProperties.productCode in ["IC", "PC"]
|
||||
def productName = buildContext.applicationInfo.productName
|
||||
if (ce && !productName.contains("Community Edition")) productName += " Community Edition" // IdeaApplicationInfo.xml//names@product
|
||||
buildContext.ant.copy(file: desktopTemplate, tofile: "${snapDir}/snap/gui/${customizer.snapName}.desktop") {
|
||||
filterset(begintoken: '$', endtoken: '$') {
|
||||
filter(token: "NAME", value: productName)
|
||||
filter(token: "ICON", value: "/bin/${buildContext.productProperties.baseFileName}.png")
|
||||
filter(token: "SCRIPT", value: "/bin/${buildContext.productProperties.baseFileName}.sh")
|
||||
filter(token: "WM_CLASS", value: "jetbrains-${buildContext.applicationInfo.shortProductName.toLowerCase()}${ce ? "-ce" : ""}") // AppUIUtil#getFrameClass
|
||||
filter(token: "WM_CLASS", value: getFrameClass())
|
||||
}
|
||||
}
|
||||
|
||||
@@ -268,4 +266,13 @@ class LinuxDistributionBuilder extends OsSpecificDistributionBuilder {
|
||||
buildContext.notifyArtifactBuilt("${buildContext.paths.artifacts}/" + snapArtifact)
|
||||
}
|
||||
}
|
||||
|
||||
// keep in sync with AppUIUtil#getFrameClass
|
||||
private String getFrameClass() {
|
||||
def name = buildContext.applicationInfo.productName
|
||||
.toLowerCase(Locale.US)
|
||||
.replace(' ', '-')
|
||||
.replace("intellij-idea", "idea").replace("android-studio", "studio").replace("community-edition", "ce")
|
||||
"jetbrains-" + name
|
||||
}
|
||||
}
|
||||
@@ -144,10 +144,13 @@ public class AppUIUtil {
|
||||
catch (Exception ignore) { }
|
||||
}
|
||||
|
||||
// keep in sync with LinuxDistributionBuilder#getFrameClass
|
||||
public static String getFrameClass() {
|
||||
String name = ApplicationNamesInfo.getInstance().getProductName().toLowerCase(Locale.US);
|
||||
String wmClass = VENDOR_PREFIX + name.replace(' ', '-');
|
||||
if (PlatformUtils.isCommunityEdition()) wmClass += "-ce";
|
||||
String name = ApplicationNamesInfo.getInstance().getFullProductName()
|
||||
.toLowerCase(Locale.US)
|
||||
.replace(' ', '-')
|
||||
.replace("intellij-idea", "idea").replace("android-studio", "studio").replace("community-edition", "ce"); // backward compatibility
|
||||
String wmClass = VENDOR_PREFIX + name;
|
||||
if (DEBUG_MODE) wmClass += "-debug";
|
||||
return wmClass;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user