[plasma/plasma-desktop] /: Remove the emoticons kcm

Aleix Pol null at kde.org
Wed Jul 8 13:28:42 BST 2020


Git commit 3cd728de38b771c84c0cfdf68eac84715637e76f by Aleix Pol.
Committed on 08/07/2020 at 12:26.
Pushed by apol into branch 'master'.

Remove the emoticons kcm

Most applications nowadays rely on unicode emoji. This kcm them becomes
more confusing than helpful, only catering to applications that use the
KEmoticons framework, which aren't many and can include the kcm in-app
if they desire as much.

Related:
https://phabricator.kde.org/T7292
https://phabricator.kde.org/T11585

D  +0    -3    doc/kcontrol/emoticons/CMakeLists.txt
D  +-    --    doc/kcontrol/emoticons/emoticons.png
D  +0    -171  doc/kcontrol/emoticons/index.docbook
M  +0    -1    kcms/CMakeLists.txt
D  +0    -18   kcms/emoticons/CMakeLists.txt
D  +0    -4    kcms/emoticons/Messages.sh
D  +0    -197  kcms/emoticons/emoticons.desktop
D  +0    -91   kcms/emoticons/emoticons.knsrc
D  +0    -490  kcms/emoticons/emoticonslist.cpp
D  +0    -85   kcms/emoticons/emoticonslist.h
D  +0    -220  kcms/emoticons/emoticonslist.ui
M  +1    -1    kcms/icons/kcm_icons.desktop

https://invent.kde.org/plasma/plasma-desktop/commit/3cd728de38b771c84c0cfdf68eac84715637e76f

diff --git a/doc/kcontrol/emoticons/CMakeLists.txt b/doc/kcontrol/emoticons/CMakeLists.txt
deleted file mode 100644
index 46282dff5..000000000
--- a/doc/kcontrol/emoticons/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-########### install files ###############
-#
-kdoctools_create_handbook(index.docbook INSTALL_DESTINATION ${KDE_INSTALL_DOCBUNDLEDIR}/en SUBDIR kcontrol/emoticons)
diff --git a/doc/kcontrol/emoticons/emoticons.png b/doc/kcontrol/emoticons/emoticons.png
deleted file mode 100644
index 99bfd2424..000000000
Binary files a/doc/kcontrol/emoticons/emoticons.png and /dev/null differ
diff --git a/doc/kcontrol/emoticons/index.docbook b/doc/kcontrol/emoticons/index.docbook
deleted file mode 100644
index 3faf912c6..000000000
--- a/doc/kcontrol/emoticons/index.docbook
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" ?>
-<!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
-"dtd/kdedbx45.dtd" [
-  <!ENTITY % addindex "IGNORE">
-  <!ENTITY % English "INCLUDE">
-]>
-<article id="emoticons" lang="&language;">
-<articleinfo>
-<title>Emoticons</title>
-<authorgroup>
-<author>&Anne-Marie.Mahfouf;</author>
-<!-- TRANS:ROLES_OF_TRANSLATORS -->
-</authorgroup>
-
-<date>2016-09-21</date>
-<releaseinfo>Plasma 5.8</releaseinfo>
-
-<keywordset>
-<keyword>KDE</keyword>
-<keyword>System Settings</keyword>
-<keyword>emoticons</keyword>
-<keyword>KCMEmoticons</keyword>
-</keywordset>
-</articleinfo>
-
-<sect1 id="kcm_emoticons">
-<title>Emoticons Themes Manager</title>
-<sect2 id="icons-intro">
-<title>Introduction</title>
-
-<para>
-<screenshot>
-<screeninfo>Screenshot of the Emoticons Theme Manager</screeninfo>
-  <mediaobject>
-    <imageobject>
-      <imagedata fileref="emoticons.png" format="PNG"/>
-    </imageobject>
-     <textobject>
-      <phrase>The Emoticons Theme Manager</phrase>
-    </textobject>
-  </mediaobject>
-</screenshot>
-</para>
-
-<para>Emoticons can be used in several &kde; applications: &kopete;, &konversation;, &kmail;... This module offers you to easily manage your emoticons sets. You can:</para>
-
-<itemizedlist>
-<listitem><para>add emoticons themes</para></listitem>
-<listitem><para>remove emoticons themes</para></listitem>
-<listitem><para>install an existing theme</para></listitem>
-<listitem><para>add, remove or edit emoticons within a theme</para></listitem>
-</itemizedlist>
-
-<important><para>Please note that you will set emoticons themes per application.</para></important>
-
-<para>
-The module is separated in two parts: on the left you can manage your themes and on the right you can manage emoticons within themes.
-</para>
-
-<para>
-An emoticon consists in two parts: an icon (typically a <filename>.png</filename>, <filename>.mng</filename> or <filename>.gif</filename> picture) and a text describing the emoticon. The text can be some ASCII symbols like <userinput>]:-></userinput> or the emoticon short description enclosed within <userinput>*</userinput> like <userinput>*FRIEND*</userinput>. The user types the symbol or the text and the emoticon icon replaces it.
-</para>
-
-<para>
-The emoticons themes will be saved locally in your home in <filename class="directory">$(qtpaths --paths GenericDataLocation)/emoticons</filename>.
-</para>
-
-</sect2>
-
-<sect2 id="themes">
-<title>Emoticons Themes</title>
-
-<para>
-This section allows you to manage emoticons themes.
-</para>
-
-<variablelist>
-<varlistentry><term><guilabel>Require spaces around emoticons</guilabel></term>
-<listitem>
-<para>
-When this option is checked, you need to separate the emoticon with a white space before and after it so it is changed to an icon. If you type "Hello:-)" then this string will stay as it is while if you type "Hello :-)" you will get "Hello" followed by the :-) emoticon.
-</para>
-<para>
-When this option is not checked (default), each emoticon string will be replaced by its icon.
-</para>
-</listitem>
-</varlistentry>
-
-<varlistentry><term><guilabel>Install from File</guilabel></term>
-<listitem>
-<para>
-This action allows you to install a theme you downloaded yourself. A theme file is an archive file, usually a <filename>.tar.gz</filename> or a <filename>.zip</filename> file or any other archive files. A dialog asks you for the location of this local archive file and after you entered or dragged the URL and clicked <guibutton>OK</guibutton>, the theme is installed and will appear in the themes list.
-</para>
-</listitem>
-</varlistentry>
-
-<varlistentry><term><guilabel>Get New Emoticons...</guilabel></term>
-<listitem>
-<para>
-You need to be connected to the Internet to use this action. A dialog displays a list of emoticons themes from <ulink url="https://store.kde.org/">https://store.kde.org/</ulink> and you can install one by clicking the <guibutton>Install</guibutton> button on the right side of the theme description in the list.
-</para>
-</listitem>
-</varlistentry>
-
-<varlistentry><term><guilabel>New Theme</guilabel></term>
-<listitem>
-<para>
-You can create your own new theme from scratch. Clicking on this button brings a dialog asking for the name of the new theme. You can then use the <guibutton>Add...</guibutton> button on the right to create new emoticons and their associated text.
-</para>
-</listitem>
-</varlistentry>
-<varlistentry><term><guilabel>Remove Theme</guilabel></term>
-<listitem>
-<para>
-This action will remove the selected theme from your disk. Select the theme you want to remove in the list. Click the <guibutton>Remove Theme</guibutton> button. This theme will be removed from the disk if you click <guibutton>Apply</guibutton>. 
-</para>
-</listitem>
-</varlistentry>
-</variablelist>
-
-</sect2>
-
-<sect2 id="emoticons-management">
-<title>Emoticons Management</title>
-
-<para>
-This section allows you to manage emoticons within the selected theme. The list on the right displays all emoticons of the selected theme. You can add, edit or remove any emoticon. Select a theme in the list on the left and then select the action you want to perform.
-</para>
-
-<variablelist>
-<varlistentry><term><guilabel>Add...</guilabel></term>
-<listitem>
-<para>
-This button allows you to add an emoticon to the selected theme. The dialog asks you to choose an icon for your emoticon and to enter the corresponding ASCII symbol or text attached to it. After that, clicking <guibutton>OK</guibutton> will add your new emoticon in the emoticon list, you will see the icon and the corresponding text displayed. If you want to modify either the icon or the text, you can use the <guibutton>Edit...</guibutton> button described below.
-</para>
-</listitem>
-</varlistentry>
-
-<varlistentry><term><guilabel>Remove</guilabel></term>
-<listitem>
-<para>
-This will remove the selected emoticon from the selected theme. You need to click the <guibutton>Yes</guibutton> button to validate this action.
-</para>
-</listitem>
-</varlistentry>
-
-<varlistentry><term><guilabel>Edit...</guilabel></term>
-<listitem>
-<para>
-The <guibutton>Edit...</guibutton> button allows you to change either the icon or the text of the selected emoticon. You need to click the <guibutton>OK</guibutton> button to validate this action.
-</para>
-</listitem>
-</varlistentry>
-</variablelist>
-</sect2>
-
-</sect1>
-</article>
-
-<!--
-Local Variables:
-mode: xml
-sgml-minimize-attributes:nil
-sgml-general-insert-case:lower
-sgml-indent-step:0
-sgml-indent-data:nil
-End:
-
-vim:tabstop=2:shiftwidth=2:expandtab
-kate: space-indent on; indent-width 2; tab-width 2; indent-mode none;
--->
diff --git a/kcms/CMakeLists.txt b/kcms/CMakeLists.txt
index ca3c6e01e..60eeb78fe 100644
--- a/kcms/CMakeLists.txt
+++ b/kcms/CMakeLists.txt
@@ -40,7 +40,6 @@ add_subdirectory( desktoppaths )
 
 add_subdirectory(activities)
 add_subdirectory(componentchooser)
-add_subdirectory(emoticons)
 add_subdirectory(icons)
 add_subdirectory(kded)
 add_subdirectory(formats)
diff --git a/kcms/emoticons/CMakeLists.txt b/kcms/emoticons/CMakeLists.txt
deleted file mode 100644
index 7cdc43f4c..000000000
--- a/kcms/emoticons/CMakeLists.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-# KI18N Translation Domain for this library
-add_definitions(-DTRANSLATION_DOMAIN=\"kcm5_emoticons\")
-
-set(kcmemoticons_SRCS emoticonslist.cpp)
-ki18n_wrap_ui(kcmemoticons_SRCS emoticonslist.ui)
-
-add_library(kcm_emoticons MODULE ${kcmemoticons_SRCS})
-target_link_libraries(kcm_emoticons
-                      KF5::NewStuff
-                      KF5::Completion
-                      KF5::KDELibs4Support
-                      KF5::Emoticons)
-
-install(TARGETS kcm_emoticons  DESTINATION ${KDE_INSTALL_PLUGINDIR} )
-
-########### install files ###############
-install( FILES emoticons.desktop  DESTINATION  ${KDE_INSTALL_KSERVICES5DIR} )
-install( FILES emoticons.knsrc DESTINATION ${KDE_INSTALL_KNSRCDIR} )
diff --git a/kcms/emoticons/Messages.sh b/kcms/emoticons/Messages.sh
deleted file mode 100644
index 34bd664aa..000000000
--- a/kcms/emoticons/Messages.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/usr/bin/env bash
-$EXTRACTRC *.ui >> rc.cpp
-$XGETTEXT *.cpp -o $podir/kcm5_emoticons.pot
-
diff --git a/kcms/emoticons/emoticons.desktop b/kcms/emoticons/emoticons.desktop
deleted file mode 100644
index 8965bbbe9..000000000
--- a/kcms/emoticons/emoticons.desktop
+++ /dev/null
@@ -1,197 +0,0 @@
-[Desktop Entry]
-Exec=kcmshell5 emoticons
-Icon=face-smile
-Type=Service
-X-DocPath=kcontrol/emoticons/index.html
-
-X-KDE-ServiceTypes=KCModule
-X-KDE-Library=kcm_emoticons
-X-KDE-ParentApp=kcontrol
-X-KDE-System-Settings-Parent-Category=icons
-X-KDE-Weight=110
-
-Name=Emoticons
-Name[af]=Emotikons
-Name[ar]=الوجوه التّعبيرية
-Name[as]=ভাব-প্ৰতীক
-Name[ast]=Fustaxes
-Name[az]=İfadələr
-Name[be at latin]=Smajliki
-Name[bg]=Емотикони
-Name[bn]=ইমোট-আইকন
-Name[bn_IN]=ইমোআইকন
-Name[bs]=Emotikoni
-Name[ca]=Emoticones
-Name[ca at valencia]=Emoticones
-Name[cs]=Emotikony
-Name[csb]=Emòtikónczi
-Name[da]=Emotikoner
-Name[de]=Emoticons
-Name[el]=Εικονίδια διάθεσης
-Name[en_GB]=Emoticons
-Name[eo]=Miensimboloj
-Name[es]=Emoticonos
-Name[et]=Emotikonid
-Name[eu]=Aurpegierak
-Name[fa]=صورتک
-Name[fi]=Hymiöt
-Name[fr]=Émoticônes
-Name[fy]=Emobyldkaikes
-Name[ga]=Straoiseoga
-Name[gl]=Emoticonas
-Name[gu]=લાગણીઓ
-Name[he]=רגשונים
-Name[hi]=हँसमुख
-Name[hne]=चेहराचिनहा
-Name[hr]=Emoticons
-Name[hsb]=Emotikony
-Name[hu]=Emotikonok
-Name[ia]=Emoticones
-Name[id]=Emoticon
-Name[is]=Tjáningartákn
-Name[it]=Faccine
-Name[ja]=感情アイコン
-Name[kk]=Көңіл күйі белгілері
-Name[km]=សញ្ញា​អារម្មណ៍
-Name[kn]=ಭಾವನಾಚಿಹ್ನೆಗಳು (ಎಮೋಟಿಕಾನ್)
-Name[ko]=이모티콘
-Name[ku]=Emotîkon
-Name[lt]=Jaustukai
-Name[lv]=Emocijzīmes
-Name[mai]=भाव-प्रतीक
-Name[mk]=Емотикони
-Name[ml]=വികാരചിഹ്നങ്ങള്‍
-Name[mr]=भावप्रतिमा
-Name[nb]=Humørfjes
-Name[nds]=Snuten
-Name[nl]=Emoticons
-Name[nn]=Fjesingar
-Name[or]=Emoticons
-Name[pa]=ਈਮੋਸ਼ਨ
-Name[pl]=Emotikony
-Name[pt]=Ícones Emotivos
-Name[pt_BR]=Emoticons
-Name[ro]=Emoticoni
-Name[ru]=Смайлики
-Name[si]=ඉමොටිකොන
-Name[sk]=Emotikony
-Name[sl]=Izrazne ikone
-Name[sr]=Емотикони
-Name[sr at ijekavian]=Емотикони
-Name[sr at ijekavianlatin]=Emotikoni
-Name[sr at latin]=Emotikoni
-Name[sv]=Smilisar
-Name[ta]=உணர்வோயியங்கள்
-Name[te]=ఎమొటికాన్లు
-Name[tg]=Тасвирчаҳо
-Name[th]=ไอคอนสื่ออารมณ์
-Name[tr]=Duygu Simgeleri
-Name[ug]=چىراي ئىپادىلىرى
-Name[uk]=Емоційки
-Name[uz]=His-tuygʻular
-Name[uz at cyrillic]=Ҳис-туйғулар
-Name[vi]=Hình biểu cảm
-Name[wa]=Xhinêyes
-Name[x-test]=xxEmoticonsxx
-Name[zh_CN]=表情符号
-Name[zh_TW]=表情圖示
-Comment=Choose emoticon theme
-Comment[az]=İfadələr mövzusunu seçmək
-Comment[ca]=Trieu el tema de les emoticones
-Comment[ca at valencia]=Trieu el tema de les emoticones
-Comment[cs]=Vyberte motiv emotikonů
-Comment[da]=Vælg emotikontema
-Comment[de]=Emoticon-Design auswählen
-Comment[en_GB]=Choose emoticon theme
-Comment[es]=Escoger un tema de emoticonos
-Comment[et]=Emotikoniteema valimine
-Comment[eu]=Aukeratu aurpegiera-gaia
-Comment[fi]=Valitse hymiöteema
-Comment[fr]=Choisir le thème d'émoticônes
-Comment[gl]=Escoller un tema de emoticonas
-Comment[hu]=Az emotikon témájának kiválasztása
-Comment[ia]=Selige le thema de emoticon
-Comment[id]=Pilihlah tema emoticon
-Comment[it]=Scegli tema di faccine
-Comment[ja]=感情アイコンテーマをカスタマイズ
-Comment[ko]=이모티콘 테마 선택
-Comment[lt]=Pasirinkti jaustukų apipavidalinimą
-Comment[nl]=Emoticonthema kiezen
-Comment[nn]=Vel fjesingtema
-Comment[pa]=ਈਮੋਸ਼ਨ ਥੀਮ ਚੁਣੋ
-Comment[pl]=Wybierz zestaw emotikon
-Comment[pt]=Escolher o tema de ícones emotivos
-Comment[pt_BR]=Escolha o tema de emoticons
-Comment[ru]=Выбор набора смайликов
-Comment[sk]=Výber témy emotikonov
-Comment[sl]=Izberi temo čustvenčkov
-Comment[sv]=Välj smilistema
-Comment[tg]=Мавзӯи тасвирчаҳоро интихоб намоед
-Comment[uk]=Вибір теми емоційок
-Comment[x-test]=xxChoose emoticon themexx
-Comment[zh_CN]=选择表情主题
-Comment[zh_TW]=選擇表情符號主題
-X-KDE-Keywords=Emoticons
-X-KDE-Keywords[ar]=الوجوه التعبيرية,وجوه تعبيرية,ابتسامات
-X-KDE-Keywords[ast]=Fustaxes
-X-KDE-Keywords[az]=İfadələr
-X-KDE-Keywords[bg]=Emoticons,Емотикони
-X-KDE-Keywords[bn]=ইমোট-আইকন
-X-KDE-Keywords[bs]=Emotikoni
-X-KDE-Keywords[ca]=Emoticones
-X-KDE-Keywords[ca at valencia]=Emoticones
-X-KDE-Keywords[cs]=Emotikony
-X-KDE-Keywords[da]=Emotikoner
-X-KDE-Keywords[de]=Emoticons
-X-KDE-Keywords[el]=Εικονίδια διάθεσης
-X-KDE-Keywords[en_GB]=Emoticons
-X-KDE-Keywords[eo]=Miensimboloj
-X-KDE-Keywords[es]=Emoticonos
-X-KDE-Keywords[et]=Emotikonid
-X-KDE-Keywords[eu]=Aurpegierak
-X-KDE-Keywords[fa]=صورتک
-X-KDE-Keywords[fi]=Hymiöt
-X-KDE-Keywords[fr]=Émoticônes
-X-KDE-Keywords[ga]=Straoiseoga
-X-KDE-Keywords[gl]=Emoticonas
-X-KDE-Keywords[gu]=લાગણીઓ
-X-KDE-Keywords[he]=רגשונים
-X-KDE-Keywords[hi]=हँसमुख
-X-KDE-Keywords[hu]=Emotikonok
-X-KDE-Keywords[ia]=Emoticones
-X-KDE-Keywords[id]=Emoticons
-X-KDE-Keywords[is]=Tjáningartákn
-X-KDE-Keywords[it]=Faccine
-X-KDE-Keywords[ja]=感情アイコン
-X-KDE-Keywords[kk]=Emoticons,Көңіл күйі белгілері
-X-KDE-Keywords[km]=សញ្ញា​អារម្មណ៍
-X-KDE-Keywords[ko]=이모티콘
-X-KDE-Keywords[lt]=Jaustukai
-X-KDE-Keywords[lv]=Emocijzīmes
-X-KDE-Keywords[mr]=भावप्रतिमा
-X-KDE-Keywords[nb]=Humørfjes
-X-KDE-Keywords[nds]=Snuten,Emoticons
-X-KDE-Keywords[nl]=Emoticons
-X-KDE-Keywords[nn]=Fjesingar
-X-KDE-Keywords[pa]=ਈਮੋਸ਼ਨ
-X-KDE-Keywords[pl]=Emotikony
-X-KDE-Keywords[pt]=Ícones Emotivos
-X-KDE-Keywords[pt_BR]=Emoticons
-X-KDE-Keywords[ro]=Emoticoni
-X-KDE-Keywords[ru]=Emoticons,смайлики,смайлы,улыбочки
-X-KDE-Keywords[sk]=Emotikony
-X-KDE-Keywords[sl]=Čustvenčki
-X-KDE-Keywords[sr]=emoticons,емотикони
-X-KDE-Keywords[sr at ijekavian]=emoticons,емотикони
-X-KDE-Keywords[sr at ijekavianlatin]=emoticons,emotikoni
-X-KDE-Keywords[sr at latin]=emoticons,emotikoni
-X-KDE-Keywords[sv]=Smilisar
-X-KDE-Keywords[tg]=Тасвирчаҳо
-X-KDE-Keywords[tr]=Duygu Simgeleri
-X-KDE-Keywords[ug]=چىراي ئىپادىلىرى
-X-KDE-Keywords[uk]=емоційка,емоційки,смайлик,смайлики
-X-KDE-Keywords[vi]=Hình biểu cảm
-X-KDE-Keywords[wa]=Xhinêyes
-X-KDE-Keywords[x-test]=xxEmoticonsxx
-X-KDE-Keywords[zh_CN]=Emoticons,表情符号
-X-KDE-Keywords[zh_TW]=Emoticons
diff --git a/kcms/emoticons/emoticons.knsrc b/kcms/emoticons/emoticons.knsrc
deleted file mode 100644
index 701475c93..000000000
--- a/kcms/emoticons/emoticons.knsrc
+++ /dev/null
@@ -1,91 +0,0 @@
-[KNewStuff3]
-Name=Emoticons
-Name[af]=Emotikons
-Name[ar]=الوجوه التّعبيرية
-Name[as]=ভাব-প্ৰতীক
-Name[ast]=Fustaxes
-Name[az]=İfadələr
-Name[be at latin]=Smajliki
-Name[bg]=Емотикони
-Name[bn]=ইমোট-আইকন
-Name[bn_IN]=ইমোআইকন
-Name[bs]=Emotikoni
-Name[ca]=Emoticones
-Name[ca at valencia]=Emoticones
-Name[cs]=Emotikony
-Name[csb]=Emòtikónczi
-Name[da]=Emotikoner
-Name[de]=Emoticons
-Name[el]=Εικονίδια διάθεσης
-Name[en_GB]=Emoticons
-Name[eo]=Miensimboloj
-Name[es]=Emoticonos
-Name[et]=Emotikonid
-Name[eu]=Aurpegierak
-Name[fa]=صورتک
-Name[fi]=Hymiöt
-Name[fr]=Émoticônes
-Name[fy]=Emobyldkaikes
-Name[ga]=Straoiseoga
-Name[gl]=Emoticonas
-Name[gu]=લાગણીઓ
-Name[he]=רגשונים
-Name[hi]=हँसमुख
-Name[hne]=चेहराचिनहा
-Name[hr]=Emoticons
-Name[hsb]=Emotikony
-Name[hu]=Emotikonok
-Name[ia]=Emoticones
-Name[id]=Emoticon
-Name[is]=Tjáningartákn
-Name[it]=Faccine
-Name[ja]=感情アイコン
-Name[kk]=Көңіл күйі белгілері
-Name[km]=សញ្ញា​អារម្មណ៍
-Name[kn]=ಭಾವನಾಚಿಹ್ನೆಗಳು (ಎಮೋಟಿಕಾನ್)
-Name[ko]=이모티콘
-Name[ku]=Emotîkon
-Name[lt]=Jaustukai
-Name[lv]=Emocijzīmes
-Name[mai]=भाव-प्रतीक
-Name[mk]=Емотикони
-Name[ml]=വികാരചിഹ്നങ്ങള്‍
-Name[mr]=भावप्रतिमा
-Name[nb]=Humørfjes
-Name[nds]=Snuten
-Name[nl]=Emoticons
-Name[nn]=Fjesingar
-Name[or]=Emoticons
-Name[pa]=ਈਮੋਸ਼ਨ
-Name[pl]=Emotikony
-Name[pt]=Ícones Emotivos
-Name[pt_BR]=Emoticons
-Name[ro]=Emoticoni
-Name[ru]=Смайлики
-Name[si]=ඉමොටිකොන
-Name[sk]=Emotikony
-Name[sl]=Izrazne ikone
-Name[sr]=Емотикони
-Name[sr at ijekavian]=Емотикони
-Name[sr at ijekavianlatin]=Emotikoni
-Name[sr at latin]=Emotikoni
-Name[sv]=Smilisar
-Name[ta]=உணர்வோயியங்கள்
-Name[te]=ఎమొటికాన్లు
-Name[tg]=Тасвирчаҳо
-Name[th]=ไอคอนสื่ออารมณ์
-Name[tr]=Duygu Simgeleri
-Name[ug]=چىراي ئىپادىلىرى
-Name[uk]=Емоційки
-Name[uz]=His-tuygʻular
-Name[uz at cyrillic]=Ҳис-туйғулар
-Name[vi]=Hình biểu cảm
-Name[wa]=Xhinêyes
-Name[x-test]=xxEmoticonsxx
-Name[zh_CN]=表情符号
-Name[zh_TW]=表情圖示
-
-ProvidersUrl=https://autoconfig.kde.org/ocs/providers.xml
-Categories=Emoticon Theme
-TargetDir=emoticons
-Uncompress=always
diff --git a/kcms/emoticons/emoticonslist.cpp b/kcms/emoticons/emoticonslist.cpp
deleted file mode 100644
index 071d5db9d..000000000
--- a/kcms/emoticons/emoticonslist.cpp
+++ /dev/null
@@ -1,490 +0,0 @@
-/***************************************************************************
- *   Copyright (C) 2007 by Carlo Segato <brandon.ml at gmail.com>             *
- *   Copyright (C) 2008 Montel Laurent <montel at kde.org>                    *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA            *
- ***************************************************************************/
-
-#include "emoticonslist.h"
-#include <kconfigwidgets_version.h>
-#include <QString>
-#include <QDir>
-#include <QIcon>
-#include <QLabel>
-#include <QListWidgetItem>
-#include <QUrl>
-
-#include <KGlobal>
-#include <KMessageBox>
-#include <KAboutData>
-#include <KStandardDirs>
-#include <KFileDialog>
-#include <KPluginFactory>
-#include <KPluginLoader>
-#include <KInputDialog>
-#include <KUrlRequesterDialog>
-#include <kmessagebox_queued.h>
-#include <kio/netaccess.h>
-#include <KNS3/DownloadDialog>
-#include <KLocalizedString>
-
-EditDialog::EditDialog(QWidget *parent, const QString &name)
-        : KDialog(parent)
-{
-    setCaption(name);
-    setupDlg();
-}
-
-EditDialog::EditDialog(QWidget *parent, const QString &name, QListWidgetItem *itm, const QString &file)
-        : KDialog(parent)
-{
-    setCaption(name);
-    emoticon = file;
-    setupDlg();
-    leText->setText(itm->text());
-    btnIcon->setIcon(itm->icon());
-}
-
-void EditDialog::setupDlg()
-{
-    wdg = new QWidget(this);
-    QVBoxLayout *vl = new QVBoxLayout;
-    QHBoxLayout *hb = new QHBoxLayout;
-    leText = new KLineEdit(this);
-    btnIcon = new QPushButton(this);
-    btnIcon->setFixedSize(QSize(64, 64));
-    btnIcon->setIconSize(QSize(64, 64));
-
-    QLabel *lab = new QLabel(i18n("Insert the string for the emoticon.  If you want multiple strings, separate them by spaces."), wdg);
-    lab->setWordWrap(true);
-    vl->addWidget(lab);
-    hb->addWidget(btnIcon);
-    hb->addWidget(leText);
-    vl->addLayout(hb);
-    wdg->setLayout(vl);
-    setMainWidget(wdg);
-    connect(btnIcon, &QPushButton::clicked, this, &EditDialog::btnIconClicked);
-    connect(leText, &KLineEdit::textChanged, this, &EditDialog::updateOkButton);
-    updateOkButton();
-    leText->setFocus();
-}
-
-void EditDialog::btnIconClicked()
-{
-    const QUrl url = KFileDialog::getImageOpenUrl();
-
-    if (!url.isLocalFile())
-        return;
-
-    emoticon = url.toLocalFile();
-
-    if (emoticon.isEmpty())
-        return;
-
-    btnIcon->setIcon(QPixmap(emoticon));
-    updateOkButton();
-}
-
-void EditDialog::updateOkButton()
-{
-    enableButtonOk(!leText->text().isEmpty() && !emoticon.isEmpty());
-}
-
-K_PLUGIN_FACTORY(EmoticonsFactory, registerPlugin<EmoticonList>();)
-
-EmoticonList::EmoticonList(QWidget *parent, const QVariantList &args)
-        : KCModule(parent, args)
-{
-    KAboutData *about = new KAboutData(QStringLiteral("kcm_emoticons"), i18n("Emoticons"), QStringLiteral("1.0"), QString(), KAboutLicense::GPL);
-    setAboutData(about);
-//     setButtons(Apply | Help);
-    setupUi(this);
-    btAdd->setIcon(QIcon::fromTheme(QStringLiteral("list-add")));
-    btEdit->setIcon(QIcon::fromTheme(QStringLiteral("edit-rename")));
-    btRemoveEmoticon->setIcon(QIcon::fromTheme(QStringLiteral("edit-delete")));
-    btNew->setIcon(QIcon::fromTheme(QStringLiteral("list-add")));
-    btGetNew->setIcon(QIcon::fromTheme(QStringLiteral("get-hot-new-stuff")));
-    btInstall->setIcon(QIcon::fromTheme(QStringLiteral("document-import")));
-    btRemoveTheme->setIcon(QIcon::fromTheme(QStringLiteral("edit-delete")));
-
-    connect(themeList, &QListWidget::itemSelectionChanged, this, &EmoticonList::selectTheme);
-    connect(themeList, &QListWidget::itemSelectionChanged, this, &EmoticonList::updateButton);
-    connect(btRemoveTheme, &QPushButton::clicked, this, &EmoticonList::btRemoveThemeClicked);
-    connect(btInstall, &QPushButton::clicked, this, &EmoticonList::installEmoticonTheme);
-    connect(btNew, &QPushButton::clicked, this, &EmoticonList::newTheme);
-    connect(btGetNew, &QPushButton::clicked, this, &EmoticonList::getNewStuff);
-    connect(cbStrict, &QCheckBox::clicked, this, &EmoticonList::somethingChanged);
-
-    connect(btAdd, &QPushButton::clicked, this, &EmoticonList::addEmoticon);
-    connect(btEdit, &QPushButton::clicked, this, &EmoticonList::editEmoticon);
-    connect(btRemoveEmoticon, &QPushButton::clicked, this, &EmoticonList::btRemoveEmoticonClicked);
-    connect(emoList, &QListWidget::itemSelectionChanged, this, &EmoticonList::updateButton);
-    connect(emoList, &QListWidget::itemDoubleClicked, this, &EmoticonList::editEmoticon);
-}
-
-EmoticonList::~EmoticonList()
-{
-}
-
-bool caseInsensitiveLessThan(const QString &s1, const QString &s2)
-{
-    return (QString::localeAwareCompare(s1, s2) < 0);
-}
-
-void EmoticonList::load()
-{
-    delFiles.clear();
-    themeList->clear();
-    emoMap.clear();
-    emoList->clear();
-
-    QStringList themeList = kEmoticons.themeList();
-    std::sort(themeList.begin(), themeList.end(), caseInsensitiveLessThan);
-
-    for (int i = 0; i < themeList.count(); i++) {
-        loadTheme(themeList.at(i));
-    }
-
-    if (kEmoticons.parseMode() & KEmoticonsTheme::StrictParse) {
-        cbStrict->setChecked(true);
-    } else {
-        cbStrict->setChecked(false);
-    }
-
-    updateButton();
-    emit changed(false);
-}
-
-void EmoticonList::save()
-{
-    for (int i = 0; i < delFiles.size(); i++) {
-        KIO::NetAccess::del(QUrl(delFiles.at(i)), this);
-    }
-
-    foreach (KEmoticonsTheme t, emoMap) {
-        t.save();
-    }
-
-    if (themeList->currentItem()) {
-        kEmoticons.setTheme(themeList->currentItem()->text());
-    }
-
-    if (cbStrict->isChecked()) {
-        kEmoticons.setParseMode((kEmoticons.parseMode() |= KEmoticonsTheme::StrictParse) &= ~KEmoticonsTheme::RelaxedParse);
-    } else {
-        kEmoticons.setParseMode((kEmoticons.parseMode() |= KEmoticonsTheme::RelaxedParse) &= ~KEmoticonsTheme::StrictParse);
-    }
-}
-
-void EmoticonList::somethingChanged()
-{
-    emit changed(true);
-}
-
-void EmoticonList::updateButton()
-{
-    const bool can = canEditTheme();
-    btRemoveEmoticon->setEnabled(themeList->currentItem() && emoList->selectedItems().size() && can);
-    btRemoveTheme->setEnabled(themeList->currentItem() && themeList->currentItem()->text() != QLatin1String("Glass") && themeList->count() > 1 && can);
-    btEdit->setEnabled(themeList->currentItem() && emoList->selectedItems().size() && can);
-    btAdd->setEnabled(themeList->currentItem() && can);
-}
-
-void EmoticonList::selectTheme()
-{
-    qDebug() << "current_item: " << themeList->currentItem();
-
-    updateButton();
-    if (!themeList->currentItem()) {
-        emoList->clear();
-        return;
-    }
-
-    if (!themeList->currentItem()) {
-        themeList->currentItem()->setSelected(true);
-        return;
-    }
-    emoList->clear();
-
-    KEmoticonsTheme em = emoMap.value(themeList->currentItem()->text());
-    QHash<QString, QStringList>::const_iterator it = em.emoticonsMap().constBegin();
-
-    for (; it != em.emoticonsMap().constEnd(); ++it) {
-        QString text;
-        if (it.value().size()) {
-            text = it.value().at(0);
-            for (int i = 1; i < it.value().size(); i++) {
-                text += QLatin1Char(' ') + it.value().at(i);
-            }
-        }
-
-        new QListWidgetItem(QIcon(it.key()), text, emoList);
-    }
-    emit markAsChanged();
-}
-
-void EmoticonList::btRemoveThemeClicked()
-{
-    if (!themeList->currentItem()) {
-        return;
-    }
-
-    const QString name = themeList->currentItem()->text();
-
-    delFiles.append(KStandardDirs::locate("emoticons", name + QDir::separator()));
-    delete themeList->currentItem();
-    emoMap.remove(name);
-    emit changed();
-}
-
-void EmoticonList::installEmoticonTheme()
-{
-    const QUrl themeURL = KUrlRequesterDialog::getUrl(QUrl(), this, i18n("Drag or Type Emoticon Theme URL"));
-    if (themeURL.isEmpty())
-        return;
-
-    if (!themeURL.isLocalFile()) {
-        KMessageBox::queuedMessageBox(this, KMessageBox::Error, i18n("Emoticon themes must be installed from local files."),
-                                      i18n("Could Not Install Emoticon Theme"));
-        return;
-    }
-    const QStringList installed = kEmoticons.installTheme(themeURL.toLocalFile());
-    for (int i = 0; i < installed.size(); i++)
-        loadTheme(installed.at(i));
-}
-
-void EmoticonList::btRemoveEmoticonClicked()
-{
-    if (!emoList->currentItem()) {
-        return;
-    }
-
-    QListWidgetItem *itm = emoList->currentItem();
-    KEmoticonsTheme theme = emoMap.value(themeList->currentItem()->text());
-    const QString fPath = theme.emoticonsMap().key(itm->text().split(QLatin1Char(' ')));
-    if (theme.removeEmoticon(itm->text())) {
-        int ret = KMessageBox::questionYesNo(this, i18n("Do you want to remove %1 too?", fPath), i18n("Delete emoticon"));
-        if (ret == KMessageBox::Yes) {
-            delFiles.append(fPath);
-        }
-
-        delete itm;
-        themeList->currentItem()->setIcon(QIcon(previewEmoticon(theme)));
-        emit changed();
-    }
-}
-
-void EmoticonList::addEmoticon()
-{
-    if (!themeList->currentItem())
-        return;
-
-    EditDialog *dlg = new EditDialog(this, i18n("Add Emoticon"));
-
-    if (dlg->exec() == QDialog::Rejected) {
-        delete dlg;
-        return;
-    }
-
-    KEmoticonsTheme theme = emoMap.value(themeList->currentItem()->text());
-    if (theme.addEmoticon(dlg->getEmoticon(), dlg->getText(), KEmoticonsProvider::Copy)) {
-        new QListWidgetItem(QPixmap(dlg->getEmoticon()), dlg->getText(), emoList);
-        themeList->currentItem()->setIcon(QIcon(previewEmoticon(theme)));
-        emit markAsChanged();
-    }
-    delete dlg;
-}
-
-void EmoticonList::editEmoticon()
-{
-    if (!themeList->currentItem() || !emoList->currentItem())
-        return;
-
-    KEmoticonsTheme theme = emoMap.value(themeList->currentItem()->text());
-    const QString path = theme.emoticonsMap().key(emoList->currentItem()->text().split(' '));
-    const QString f = QFileInfo(path).fileName();
-    EditDialog *dlg = new EditDialog(this, i18n("Edit Emoticon"), emoList->currentItem(), path);
-
-    if (dlg->exec() == QDialog::Rejected) {
-        delete dlg;
-        return;
-    }
-    bool copy;
-    QString emo = dlg->getEmoticon();
-    if (path != dlg->getEmoticon()) {
-        copy = true;
-    } else {
-        copy = false;
-
-        KStandardDirs *dir = KGlobal::dirs();
-        emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator() + f);
-
-        if (emo.isNull())
-            emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator()  + f + QStringLiteral(".mng"));
-        if (emo.isNull())
-            emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator()  + f + QStringLiteral(".png"));
-        if (emo.isNull())
-            emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator()  + f + QStringLiteral(".gif"));
-        if (emo.isNull())
-            emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator()  + f + QStringLiteral(".jpg"));
-        if (emo.isNull())
-            emo = dir->findResource("emoticons", themeList->currentItem()->text() + QDir::separator()  + f + QStringLiteral(".jpeg"));
-        if (emo.isNull()) {
-            delete dlg;
-            return;
-        }
-    }
-
-    if (theme.removeEmoticon(emoList->currentItem()->text())) {
-        delete emoList->currentItem();
-    }
-
-    if (theme.addEmoticon(emo, dlg->getText(), copy ? KEmoticonsProvider::Copy : KEmoticonsProvider::DoNotCopy)) {
-        new QListWidgetItem(QPixmap(emo), dlg->getText(), emoList);
-    }
-
-    emit markAsChanged();
-    delete dlg;
-}
-
-void EmoticonList::newTheme()
-{
-    const QString name = KInputDialog::getText(i18n("New Emoticon Theme"), i18n("Name of new emoticon theme:"));
-    if (name.isEmpty())
-        return;
-    const QString path = KGlobal::dirs()->saveLocation("emoticons", name, false);
-
-    if (KIO::NetAccess::exists(QUrl(path), KIO::NetAccess::SourceSide, this)) {
-        KMessageBox::error(this, i18n("%1 theme already exists", name));
-    } else {
-        const QString constraint(QStringLiteral("(exist Library)"));
-        KService::List srv = KServiceTypeTrader::self()->query(QStringLiteral("KEmoticons"), constraint);
-
-        QStringList ls;
-        ls.reserve(srv.size());
-        int current = 0;
-
-        for (int i = 0; i < srv.size(); ++i) {
-            ls << srv.at(i)->name();
-
-            if (srv.at(i)->property(QStringLiteral("X-KDE-Priority")).toInt() > srv.at(current)->property(QStringLiteral("X-KDE-Priority")).toInt()) {
-                current = i;
-            }
-        }
-
-        bool ok;
-        const QString type = KInputDialog::getItem(i18n("New Emoticon Theme"), i18n("Choose the type of emoticon theme to create"),
-                                                   ls, current, false, &ok, this);
-
-        if (ok && !type.isEmpty()) {
-            int index = ls.indexOf(type);
-            kEmoticons.newTheme(name, srv.at(index));
-
-            loadTheme(name);
-        }
-    }
-}
-
-void EmoticonList::loadTheme(const QString &name)
-{
-    if (name.isEmpty())
-        return;
-
-    if (emoMap.contains(name)) {
-        emoMap.remove(name);
-        QList<QListWidgetItem *>ls = themeList->findItems(name, Qt::MatchExactly);
-        if (!ls.isEmpty()) {
-            delete ls.at(0);
-        }
-    }
-
-    KEmoticonsTheme emo = kEmoticons.theme(name);
-    if (!emo.isNull()) {
-        emoMap[name] = emo;
-        QIcon previewIcon = QIcon(previewEmoticon(emo));
-        QListWidgetItem *itm = new QListWidgetItem(previewIcon, name, themeList);
-
-        if (name == kEmoticons.currentThemeName()) {
-            themeList->setCurrentItem(itm);
-        }
-    }
-}
-
-void EmoticonList::getNewStuff()
-{
-    KNS3::DownloadDialog dialog(QStringLiteral("emoticons.knsrc"), this);
-    dialog.exec();
-    if (!dialog.changedEntries().isEmpty()) {
-        KNS3::Entry::List entries = dialog.changedEntries();
-
-        for (int i = 0; i < entries.size(); i ++) {
-            if (entries.at(i).status() == KNS3::Entry::Installed
-                && !entries.at(i).installedFiles().isEmpty()) {
-                QString name = entries.at(i).installedFiles().at(0).section(QLatin1Char('/'), -2, -2);
-                loadTheme(name);
-            } else if (entries.at(i).status() == KNS3::Entry::Deleted) {
-                QString name = entries.at(i).uninstalledFiles().at(0).section(QLatin1Char('/'), -2, -2);
-                QList<QListWidgetItem*> ls = themeList->findItems(name, Qt::MatchExactly);
-                if (!ls.isEmpty()) {
-                    delete ls.at(0);
-                    emoMap.remove(name);
-                }
-            }
-        }
-    }
-}
-
-QString EmoticonList::previewEmoticon(const KEmoticonsTheme &theme)
-{
-    QString path = theme.tokenize(QStringLiteral(":)"))[0].picPath;
-    if (path.isEmpty()) {
-        path = theme.emoticonsMap().keys().value(0);
-    }
-    return path;
-}
-
-void EmoticonList::initDefaults()
-{
-    QList<QListWidgetItem *>ls = themeList->findItems(QStringLiteral("Glass"), Qt::MatchExactly);
-    if (ls.isEmpty())
-        return;
-    themeList->setCurrentItem( ls.first() );
-
-    cbStrict->setChecked(false);
-}
-
-void EmoticonList::defaults()
-{
-    initDefaults();
-    selectTheme();
-    emit changed(true);
-}
-
-bool EmoticonList::canEditTheme()
-{
-    if (!themeList->currentItem()) {
-        return false;
-    }
-
-    KEmoticonsTheme theme = emoMap.value(themeList->currentItem()->text());
-    QFileInfo inf(theme.themePath() + QLatin1Char('/') + theme.fileName());
-
-    return inf.isWritable();
-}
-
-#include "emoticonslist.moc"
-
-// kate: space-indent on; indent-width 4; replace-tabs on;
diff --git a/kcms/emoticons/emoticonslist.h b/kcms/emoticons/emoticonslist.h
deleted file mode 100644
index 5b45088fc..000000000
--- a/kcms/emoticons/emoticonslist.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/***************************************************************************
- *   Copyright (C) 2007 by Carlo Segato <brandon.ml at gmail.com>             *
- *   Copyright (C) 2008 Montel Laurent <montel at kde.org>                    *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA            *
- ***************************************************************************/
-
-#ifndef EMOTICONSLIST_H
-#define EMOTICONSLIST_H
-
-#include <QStringList>
-#include <KLineEdit>
-#include <KDialog>
-
-#include <kcmodule.h>
-#include <kemoticons.h>
-#include "ui_emoticonslist.h"
-
-class EditDialog : public KDialog
-{
-    Q_OBJECT
-
-public:
-    EditDialog(QWidget *parent, const QString &name);
-    EditDialog(QWidget *parent, const QString &name, QListWidgetItem *itm, const QString &file);
-    QString getText() const { return leText->text(); }
-    QString getEmoticon() const { return emoticon; }
-private slots:
-    void btnIconClicked();
-    void updateOkButton();
-private:
-    void setupDlg();
-    QWidget *wdg;
-    KLineEdit *leText;
-    QPushButton *btnIcon;
-    QString emoticon;
-};
-
-class EmoticonList : public KCModule, Ui::EmoticonsManager
-{
-    Q_OBJECT
-
-public:
-    EmoticonList(QWidget *parent, const QVariantList &args);
-    ~EmoticonList() override;
-    void load() override;
-    void save() override;
-    void defaults() override;
-private slots:
-    void installEmoticonTheme();
-    void btRemoveThemeClicked();
-    void btRemoveEmoticonClicked();
-    void selectTheme();
-    void addEmoticon();
-    void editEmoticon();
-    void newTheme();
-    void getNewStuff();
-    void updateButton();
-    void somethingChanged();
-private:
-    void loadTheme(const QString &name);
-    void initDefaults();
-    bool canEditTheme();
-    QString previewEmoticon(const KEmoticonsTheme &theme);
-    QHash<QString, KEmoticonsTheme> emoMap;
-    QStringList delFiles;
-    KEmoticons kEmoticons;
-};
-
-#endif /* EMOTICONSLIST_H */
-
-// kate: space-indent on; indent-width 4; replace-tabs on;
diff --git a/kcms/emoticons/emoticonslist.ui b/kcms/emoticons/emoticonslist.ui
deleted file mode 100644
index 0afe384b3..000000000
--- a/kcms/emoticons/emoticonslist.ui
+++ /dev/null
@@ -1,220 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>EmoticonsManager</class>
- <widget class="QWidget" name="EmoticonsManager">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>729</width>
-    <height>400</height>
-   </rect>
-  </property>
-  <property name="windowTitle">
-   <string>Emoticons Manager</string>
-  </property>
-  <layout class="QGridLayout">
-   <item row="6" column="13">
-    <widget class="QPushButton" name="btInstall">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Install a theme archive file you already have locally</string>
-     </property>
-     <property name="whatsThis">
-      <string>If you already have an emoticon theme archive locally, this button will unpack it and make it available for KDE applications</string>
-     </property>
-     <property name="text">
-      <string>Install from File...</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="0">
-    <widget class="QPushButton" name="btNew">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Create New Theme...</string>
-     </property>
-     <property name="whatsThis">
-      <string>Create a new theme by assigning it a name. Then use the Add button on the right to add emoticons to this theme.</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="2">
-    <spacer name="horizontalSpacer_1">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Preferred" vsizetype="Minimum">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="orientation">
-      <enum>Qt::Horizontal</enum>
-     </property>
-     <property name="sizeType">
-      <enum>QSizePolicy::Preferred</enum>
-     </property>
-     <property name="sizeHint" stdset="0">
-      <size>
-       <width>40</width>
-       <height>20</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
-   <item row="0" column="0" rowspan="2" colspan="3">
-    <widget class="QListWidget" name="themeList">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Expanding">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="iconSize">
-      <size>
-       <width>22</width>
-       <height>22</height>
-      </size>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="1">
-    <widget class="QPushButton" name="btRemoveTheme">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Remove Theme</string>
-     </property>
-     <property name="whatsThis">
-      <string>This will remove the selected theme from your disk.</string>
-     </property>
-    </widget>
-   </item>
-   <item row="6" column="14">
-    <widget class="QPushButton" name="btGetNew">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Get new emoticon icon themes from the Internet</string>
-     </property>
-     <property name="whatsThis">
-      <string>You need to be connected to the Internet to use this action. A dialog will display a list of emoticon themes from the https://store.kde.org website. Clicking the Install button associated with a theme will install this theme locally.</string>
-     </property>
-     <property name="text">
-      <string>Get New Emoticons...</string>
-     </property>
-     <property name="icon">
-      <iconset theme="get-hot-new-stuff">
-       <normaloff>.</normaloff>.</iconset>
-     </property>
-    </widget>
-   </item>
-   <item row="6" column="0" colspan="3">
-    <widget class="QCheckBox" name="cbStrict">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="text">
-      <string>Require spaces around emoticons</string>
-     </property>
-    </widget>
-   </item>
-   <item row="0" column="6" rowspan="2" colspan="9">
-    <widget class="QListWidget" name="emoList">
-     <property name="iconSize">
-      <size>
-       <width>22</width>
-       <height>22</height>
-      </size>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="6">
-    <widget class="QPushButton" name="btAdd">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Create New Emoticon...</string>
-     </property>
-     <property name="whatsThis">
-      <string>Create a new emoticon by assigning it an icon and some text</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="7">
-    <widget class="QPushButton" name="btRemoveEmoticon">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Remove Emoticon</string>
-     </property>
-     <property name="whatsThis">
-      <string>Remove the selected emoticon from your disk</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="8">
-    <widget class="QPushButton" name="btEdit">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Maximum" vsizetype="Fixed">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="toolTip">
-      <string>Edit Emoticon...</string>
-     </property>
-     <property name="whatsThis">
-      <string>Edit the selected emoticon to change its icon or its text</string>
-     </property>
-    </widget>
-   </item>
-   <item row="5" column="9" colspan="6">
-    <spacer name="horizontalSpacer_2">
-     <property name="orientation">
-      <enum>Qt::Horizontal</enum>
-     </property>
-     <property name="sizeType">
-      <enum>QSizePolicy::Expanding</enum>
-     </property>
-     <property name="sizeHint" stdset="0">
-      <size>
-       <width>40</width>
-       <height>20</height>
-      </size>
-     </property>
-    </spacer>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/kcms/icons/kcm_icons.desktop b/kcms/icons/kcm_icons.desktop
index 9dd464659..c9965b9dc 100644
--- a/kcms/icons/kcm_icons.desktop
+++ b/kcms/icons/kcm_icons.desktop
@@ -8,7 +8,7 @@ X-DocPath=kcontrol/icons/index.html
 X-KDE-Library=kcm_icons
 X-KDE-ParentApp=kcontrol
 
-X-KDE-System-Settings-Parent-Category=icons
+X-KDE-System-Settings-Parent-Category=appearance
 X-KDE-Weight=60
 
 Name=Icons


More information about the kde-doc-english mailing list