অ্যাপ্লিকেশন চালু হওয়ার সময় আইকন অনুপস্থিত


12

আমি একটি অ্যাপ্লিকেশন লঞ্চার তৈরি করেছি /usr/share/applicationsযে আরডিস্কটপ চালু করে। ফাইলটি একটি আইকন নাম নির্দিষ্ট করে এবং আমি আইকনগুলিতে এতে যুক্ত করেছি:

/usr/share/icons/HighContrast/48x48/apps
/usr/share/icons/HighContrast/22x22/apps
/usr/share/icons/HighContrast/256x256/apps
/usr/share/icons/HighContrast/32x32/apps
/usr/share/icons/HighContrast/scalable/apps-extra
/usr/share/icons/HighContrast/24x24/apps
/usr/share/icons/HighContrast/16x16/apps
/usr/share/icons/hicolor/scalable/apps
/usr/share/icons/hicolor/128x128/apps
/usr/share/icons/hicolor/16x16/apps

আমি তখন টাস্কবারে লঞ্চারটিকে ড্রাগ করি এবং সঠিক লোগো সহ লঞ্চটি টাস্কবারে দৃশ্যমান। যাইহোক, আমি যখন কাজটি শুরু করি, টাস্কবারে একটি নতুন আইকন তৈরি করা হয়, কেন্দ্রে একটি প্রশ্ন চিহ্ন সহ একটি বর্গক্ষেত্র।

আমার কোন আইকনগুলির প্রয়োজন এবং কোথায়, যাতে টাস্কবারটি চালু হওয়ার সাথে সাথে অ্যাপ্লিকেশনের জন্য সঠিক আইকনটি প্রদর্শন করে?

.ডেস্কটপ ফাইল সামগ্রী:

[ডেস্কটপ এন্ট্রি]
সংস্করণ = 1.0
টার্মিনাল = মিথ্যা
আইকন = mswindows
প্রকার = আবেদন
ধরন = নেটওয়ার্ক;
এক্সিকি = rdesktop win7shared1 -g 1680x1000

Name = win7shared1
GenericName = rdesktop
মন্তব্য = উইন্ডো ডেস্কটপ খুলুন

কীওয়ার্ড = উইন্ডোজ
StartupNotify = মিথ্যা

উত্তর:


15

আপনার সমস্যাটি সম্ভবত সমাধান করবে যা নিম্নলিখিতগুলি করা:

  1. অ্যাপ্লিকেশনটি খুলুন
  2. এটি চলমান অবস্থায় একটি টার্মিনাল খুলুন এবং টাইপ করুন:

    xprop WM_CLASS
    
  3. তারপরে ওপেন অ্যাপ্লিকেশন উইন্ডোতে ক্লিক করুন।

  4. আউটপুটটি দেখতে উদাহরণস্বরূপ gedit:

    WM_CLASS(STRING) = "gedit", "Gedit"
    
  5. geditআপনার .desktopফাইলটিতে একটি লাইন রচনা করতে প্রথম অংশটি (এই ক্ষেত্রে হবে ) ব্যবহার করুন:

    StartupWMClass=<string>
    

    ( <string>প্রকৃত (প্রথম অংশের আউটপুট) দিয়ে প্রতিস্থাপন করুন xprop WM_CLASS, যেমন StartupWMClass=gedit)

এখন আবার চেষ্টা করুন (আপনাকে লগ আউট / ইন করতে হতে পারে) সম্ভবত অ্যাপ্লিকেশনটি তার নিজের আইকনের অধীনে লঞ্চারটিতে উপস্থিত হবে।

ব্যাখ্যা

  • যখন কোনও অ্যাপ্লিকেশনটি কোনও লঞ্চ ( .desktopফাইল) থেকে সঠিকভাবে শুরু হয় , তবে অন্য আইকনটি কেবল একটি জেনেরিক আইকন (প্রশ্ন চিহ্ন) দিয়ে উপস্থিত হয়, সম্ভবত সম্ভবত অ্যাপ্লিকেশন উইন্ডো এবং লঞ্চার কোনও কারণে সংযুক্ত না হয় এবং লঞ্চারটি এটি ব্যবহার করে না most অ্যাপ্লিকেশনটির উইন্ডোটিকে "তার" হিসাবে স্বীকৃতি দিন। স্ক্রিপ্ট বা একটি মানহীন অ্যাপ্লিকেশন (-কম্যান্ড) ব্যবহার করার সময় এটি প্রায়শই ঘটে। এই ক্ষেত্রে StartupWMClass=লাইন প্রায়শই সমাধান হয়।

ধন্যবাদ জ্যাকব এটি সমস্যার সমাধান করেছে। রেকর্ডের জন্য, WM_CLASS স্ট্রিংটি ছিল "rdesktop", "rdesktop"।
ক্লাটনটন

@ ক্লেটন নিখুঁত, এতে কাজ করে আনন্দিত।
জ্যাকব Vlijm

1
আপনার পদক্ষেপ 2 হ্রাস করা যেতে পারে, xprop WM_CLASS
এক্সপ্রপ

@ জোহেন্ড্রিঙ্কওয়াটার অবশ্যই, ইঙ্গিতটির জন্য ধন্যবাদ। এটি এক বছরেরও বেশি আগে, 14 মাসেরও বেশি সময় এটি অন্য একজন লিখেছেন :)। সম্পাদনা করবে ...
জ্যাকব ভিলিজম

@ জ্যাকব-ভিলিজম :) একটি বিশ্রী
এক্সপ্রপ

2

আমার xprop|grep WM_CLASSদেওয়া WM_CLASS(STRING) = "sun-awt-X11-XFramePeer", "jetbrains-pycharm-ce"(পাইথারামের সাথে পাইচারের সাথে আমার এই সমস্যাটি ছিল)

মনে হচ্ছিল sun-awt-X11-XFramePeer(উদ্ধৃতিগুলি ছাড়াই) যে আমি আমার .desktop ফাইলে স্ট্রিং হিসাবে প্রয়োজন - ধন্যবাদ!


আমি আমার যোগ StartupWMClass=sun-awt-X11-XFramePeerএবং কিছুই ঘটেনি! .desktopফাইলটি কি হোম ফোল্ডারে অবস্থিত?
anon58192932

0

আইকনগুলি সঠিক জায়গায় রাখার পরে, আপনার কেবল এক্সসার্ভারটি পুনরায় চালু করা উচিত (লগআউট এবং ফিরে ফিরে প্রবেশ করুন)।
এছাড়াও আইকন ক্যাশে আপডেট করার চেষ্টা করুন (কেবলমাত্র টার্মিনালে নীচে কোড পেস্ট করুন):

for d in ~/.icons/*; do gtk-update-icon-cache -f $d; done
for d in /usr/share/icons/*; do sudo gtk-update-icon-cache -f $d; done
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.